Philipp
2024-10-11 00:39:03 +02:00
16 changed files with 164 additions and 9 deletions

View File

@@ -0,0 +1,83 @@
/** @param {NS} ns */
export async function main(ns) {
let aCitites = ["Sector-12", "Aevum", "Volhaven", "Chongqing", "New Tokyo", "Ishima"];
let sDivisionName = "Agri-Ram";
let reset = ns.args[0];
if (reset === true || !ns.fileExists("CorpStatus.txt")) {
ns.write("CorpStatus.txt", JSON.stringify({ nStep: 0 }), "w");
};
let oCorpStatus = JSON.parse(ns.read("CorpStatus.txt")) || { nStep: 0 };
let nStep = oCorpStatus.nStep;
let nListenPID = 0;
let oCorpData = {};
let oDivisionData = {};
let oOfficeData = {}
ns.tprint(oCorpStatus);
while (nStep < 199) {
nStep = oCorpStatus.nStep;
ns.tprint(nStep);
nListenPID = ns.run("/corp/GetCorpData.js");
await ns.nextPortWrite(nListenPID);
oCorpData = ns.readPort(nListenPID);
switch (nStep) {
case 0:
if (!oCorpData.divisions.length > 0) {
nListenPID = ns.run("/corp/CorpStart.js", 1, sDivisionName, "Agriculture");
await ns.nextPortWrite(nListenPID);
};
oCorpStatus.nStep = 10;
break;
case 10:
for (let sCity of aCitites) {
nListenPID = ns.run("/corp/GetDivisionsData.js", 1, sDivisionName);
await ns.nextPortWrite(nListenPID);
oDivisionData = ns.readPort(nListenPID);
if (sCity !== "Sector-12" && !oDivisionData.cities.includes(sCity)) {
nListenPID = ns.run("/corp/CorpExpandCity.js", 1, sDivisionName, sCity);
await ns.nextPortWrite(nListenPID);
}
}
oCorpStatus.nStep = 20;
break;
case 20:
let nTargetSize = 4;
for (let sCity of aCitites) {
nListenPID = ns.run("/corp/GetOfficeData.js", 1, sDivisionName, sCity);
await ns.nextPortWrite(nListenPID);
oOfficeData = ns.readPort(nListenPID);
await ns.nextPortWrite(ns.run("/corp/UpgradeOffice.js", 1, sDivisionName, sCity, nTargetSize, oOfficeData.size))
}
oCorpStatus.nStep = 30;
break;
case 30:
for (let sCity of aCitites) {
nListenPID = ns.run("/corp/GetOfficeData.js", 1, sDivisionName, sCity);
await ns.nextPortWrite(nListenPID);
oOfficeData = ns.readPort(nListenPID);
ns.tprint(oOfficeData);
nListenPID = ns.run("/corp/HireWorkers.js", 1, sDivisionName, sCity, oOfficeData);
await ns.nextPortWrite(nListenPID);
}
oCorpStatus.nStep = 200;
break;
case 40:
break;
case 50:
break;
case 60:
break;
case 70:
break;
case 80:
break;
case 90:
break;
case 100:
break;
default:
break;
}
ns.write("CorpStatus.txt", JSON.stringify(oCorpStatus), "w")
await ns.sleep(1)
}
}

View File

@@ -0,0 +1 @@
{"nStep":30}

View File

@@ -24,9 +24,10 @@ export async function main(ns) {
if (!ns.isRunning(sGangScript)) { ns.run(sGangScript); } if (!ns.isRunning(sGangScript)) { ns.run(sGangScript); }
if (!ns.isRunning(sPServScript)) { ns.run(sPServScript); } if (!ns.isRunning(sPServScript)) { ns.run(sPServScript); }
/*
await RunAndWait(ns, sBackdoorScript); await RunAndWait(ns, sBackdoorScript);
await RunAndWait(ns, sUpdateTarget); await RunAndWait(ns, sUpdateTarget);
await RunAndWait(ns, sBatchController); await RunAndWait(ns, sBatchController);
*/
if (nHomeMaxRAM >= 256) { if (!ns.isRunning(sMonitorScript)) { ns.run(sMonitorScript); } } if (nHomeMaxRAM >= 256) { if (!ns.isRunning(sMonitorScript)) { ns.run(sMonitorScript); } }
} }

View File

@@ -150,7 +150,7 @@ export async function main(ns) {
ns.tprint(cCyan + "Purchased " + oEXE.ssh.name + cReset); ns.tprint(cCyan + "Purchased " + oEXE.ssh.name + cReset);
ns.toast("Purchased " + oEXE.ssh.name, "info", 10000); ns.toast("Purchased " + oEXE.ssh.name, "info", 10000);
if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); } if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); }
if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript, sThisRunner, 1); } if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript); }
//ns.exec(sServerLister, sThisRunner, 1, false, true); //ns.exec(sServerLister, sThisRunner, 1, false, true);
//ns.exec(sBackdoorScript, sThisRunner, 1); //ns.exec(sBackdoorScript, sThisRunner, 1);
} }
@@ -164,7 +164,7 @@ export async function main(ns) {
ns.tprint(cCyan + "Purchased " + oEXE.ftp.name + cReset); ns.tprint(cCyan + "Purchased " + oEXE.ftp.name + cReset);
ns.toast("Purchased " + oEXE.ftp.name, "info", 10000); ns.toast("Purchased " + oEXE.ftp.name, "info", 10000);
if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); } if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); }
if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript, sThisRunner, 1); } if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript); }
//ns.exec(sServerLister, sThisRunner, 1, false, true); //ns.exec(sServerLister, sThisRunner, 1, false, true);
//ns.exec(sBackdoorScript, sThisRunner, 1); //ns.exec(sBackdoorScript, sThisRunner, 1);
} }
@@ -178,7 +178,7 @@ export async function main(ns) {
ns.tprint(cCyan + "Purchased " + oEXE.smtp.name + cReset); ns.tprint(cCyan + "Purchased " + oEXE.smtp.name + cReset);
ns.toast("Purchased " + oEXE.smtp.name, "info", 10000); ns.toast("Purchased " + oEXE.smtp.name, "info", 10000);
if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); } if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); }
if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript, sThisRunner, 1); } if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript); }
//ns.exec(sServerLister, sThisRunner, 1, false, true); //ns.exec(sServerLister, sThisRunner, 1, false, true);
//ns.exec(sBackdoorScript, sThisRunner, 1); //ns.exec(sBackdoorScript, sThisRunner, 1);
} }
@@ -187,7 +187,7 @@ export async function main(ns) {
ns.tprint(cCyan + "Purchased " + oEXE.http.name + cReset); ns.tprint(cCyan + "Purchased " + oEXE.http.name + cReset);
ns.toast("Purchased " + oEXE.http.name, "info", 10000); ns.toast("Purchased " + oEXE.http.name, "info", 10000);
if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); } if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); }
if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript, sThisRunner, 1); } if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript); }
//ns.exec(sServerLister, sThisRunner, 1, false, true); //ns.exec(sServerLister, sThisRunner, 1, false, true);
//ns.exec(sBackdoorScript, sThisRunner, 1); //ns.exec(sBackdoorScript, sThisRunner, 1);
} }
@@ -196,7 +196,7 @@ export async function main(ns) {
ns.tprint(cCyan + "Purchased " + oEXE.sql.name + cReset); ns.tprint(cCyan + "Purchased " + oEXE.sql.name + cReset);
ns.toast("Purchased " + oEXE.sql.name, "info", 10000); ns.toast("Purchased " + oEXE.sql.name, "info", 10000);
if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); } if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); }
if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript, sThisRunner, 1); } if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript); }
//ns.exec(sServerLister, sThisRunner, 1, false, true); //ns.exec(sServerLister, sThisRunner, 1, false, true);
//ns.exec(sBackdoorScript, sThisRunner, 1); //ns.exec(sBackdoorScript, sThisRunner, 1);
} }
@@ -209,7 +209,7 @@ export async function main(ns) {
ns.tprint("purchasing servers "); ns.tprint("purchasing servers ");
ns.exec("purchaseServers.js", sThisRunner); ns.exec("purchaseServers.js", sThisRunner);
if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); } if (!ns.isRunning(sServerLister)) { ns.run(sServerLister, sThisRunner, 1, false, true); }
if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript, sThisRunner, 1); } if (!ns.isRunning(sBackdoorScript)) { ns.run(sBackdoorScript); }
//ns.exec(sServerLister, sThisRunner, 1, false, true); //ns.exec(sServerLister, sThisRunner, 1, false, true);
} }
/*else if (getSetting(ns, "autoUpgrades") && nLowestRAM < (2 ** 20) && !ns.scriptRunning("upgrade.js", sThisRunner) && nPServs >= 25 && nMoney >= 1e+6) { /*else if (getSetting(ns, "autoUpgrades") && nLowestRAM < (2 ** 20) && !ns.scriptRunning("upgrade.js", sThisRunner) && nPServs >= 25 && nMoney >= 1e+6) {

View File

@@ -1 +1 @@
{"serverName":"the-hub","maxRam":64,"maxMoney":181733103,"minSec":13,"minPorts":2,"minHackLvl":280,"rootAccess":true,"openPorts":1,"serverOrgs":"The Hub","serverCores":4,"serverFiles":[]} {"serverName":"rho-construction","maxRam":16,"maxMoney":677143329,"minSec":16,"minPorts":3,"minHackLvl":500,"rootAccess":true,"openPorts":0,"serverOrgs":"Rho Construction","serverCores":6,"serverFiles":["factionboost.js"]}

View File

@@ -0,0 +1,7 @@
/** @param {NS} ns */
export async function main(ns) {
let cities = ["Sector-12", "Aevum", "Volhaven", "Chongqing", "New Tokyo", "Ishima"];
let corpName = "AgraNeo";
ns.tprint(ns.corporation.getMaterial(corpName,cities[0],"Plants"))
ns.corporation.sellMaterial()
}

View File

@@ -0,0 +1,6 @@
/** @param {NS} ns */
export async function main(ns) {
let [sDivName, sCity] = ns.args;
ns.corporation.expandCity(sDivName, sCity)
ns.writePort(ns.pid, true);
}

View File

@@ -0,0 +1,6 @@
/** @param {NS} ns */
export async function main(ns) {
let [newDivName,industry] = ns.args;
ns.corporation.expandIndustry(industry, newDivName);
ns.writePort(ns.pid,true);
}

View File

@@ -0,0 +1,4 @@
/** @param {NS} ns */
export async function main(ns) {
ns.writePort(ns.pid,ns.corporation.getCorporation())
}

View File

@@ -0,0 +1,4 @@
/** @param {NS} ns */
export async function main(ns) {
ns.writePort(ns.pid,ns.corporation.getDivision(ns.args[0]))
}

View File

@@ -0,0 +1,5 @@
/** @param {NS} ns */
export async function main(ns) {
let [sDivName, sCity] = ns.args;
ns.writePort(ns.pid, ns.corporation.getOffice(sDivName, sCity))
}

View File

@@ -0,0 +1,11 @@
/** @param {NS} ns */
export async function main(ns) {
let [sDivName, sCity, oCurrentOffice] = ns.args;
if (oCurrentOffice.numEmployees < oCurrentOffice.size) {
(oCurrentOffice.employeeJobs.Operations < 1) ? ns.corporation.hireEmployee(sDivName, sCity,"Operations") : "";
(oCurrentOffice.employeeJobs.Engineer < 1) ? ns.corporation.hireEmployee(sDivName, sCity,"Engineer") : "";
(oCurrentOffice.employeeJobs.Business < 1) ? ns.corporation.hireEmployee(sDivName, sCity,"Business") : "";
(oCurrentOffice.employeeJobs.Management < 1) ? ns.corporation.hireEmployee(sDivName, sCity,"Management") : "";
};
ns.writePort(ns.pid, true);
}

View File

@@ -0,0 +1,13 @@
/** @param {NS} ns */
export async function main(ns) {
let cities = ["Sector-12", "Aevum", "Volhaven", "Chongqing", "New Tokyo", "Ishima"];
let corpName1 = ["AgraNeo","Plants"];
let corpName2 = ["ChemNeo","Chemicals"];
let exportString = "IPROD*-1"
for (let city of cities) {
ns.corporation.cancelExportMaterial(corpName1[0],city,corpName2[0],city,corpName1[1]);
ns.corporation.cancelExportMaterial(corpName2[0],city,corpName1[0],city,corpName2[1]);
ns.corporation.exportMaterial(corpName1[0],city,corpName2[0],city,corpName1[1],exportString);
ns.corporation.exportMaterial(corpName2[0],city,corpName1[0],city,corpName2[1],exportString);
}
}

View File

@@ -0,0 +1,6 @@
/** @param {NS} ns */
export async function main(ns) {
let [corpName, city] = ns.args;
//ns.corporation.setSmartSupply(corpName, city, true);
return true;
}

View File

@@ -0,0 +1,8 @@
/** @param {NS} ns */
export async function main(ns) {
let [sDivName, sCity, nTargetSize, nCurrentSize] = ns.args;
if (nCurrentSize < nTargetSize) {
ns.corporation.upgradeOfficeSize(sDivName, sCity, nTargetSize - nCurrentSize);
};
ns.writePort(ns.pid, true);
}

File diff suppressed because one or more lines are too long