mizzajl sync
This commit is contained in:
88
local/path/home/EveryServerRun.js
Normal file
88
local/path/home/EveryServerRun.js
Normal file
@@ -0,0 +1,88 @@
|
||||
import { getGrowThreads } from "myLibrary.js";
|
||||
|
||||
/** @param {NS} ns */
|
||||
export async function main(ns) {
|
||||
//ns.tail();
|
||||
const sOverrideTarget = ns.args[0]; // run on this target instead of best
|
||||
let serverList = JSON.parse(ns.read("serverList.txt"));
|
||||
let bestTarget = JSON.parse(ns.read("bestTarget.txt"));
|
||||
let sTarget;
|
||||
|
||||
if (sOverrideTarget !== undefined) {
|
||||
sTarget = sOverrideTarget;
|
||||
}
|
||||
else {
|
||||
sTarget = bestTarget.serverName;
|
||||
}
|
||||
|
||||
let sScript = "batch.js";
|
||||
const sShareScript = "factionboost.js";
|
||||
const sWeakenScript = "RMweaken.js";
|
||||
const sGrowScript = "RMgrow.js";
|
||||
const sHackScript = "RMhack.js";
|
||||
|
||||
const nWeakenThreads = 1; //5
|
||||
const nHackThreads = 1; //1
|
||||
const nGrowThreads = getGrowThreads(ns, sTarget, nHackThreads);
|
||||
//ns.tprint("nGrowThreads = " + nGrowThreads);
|
||||
|
||||
const nWeakenScriptRAM = 1.75 * nWeakenThreads;
|
||||
const nHackScriptRAM = 1.75 * nHackThreads;
|
||||
const nGrowScriptRAM = 1.7 * nGrowThreads;
|
||||
//ns.tprint("nGrowScriptRAM = " + nGrowScriptRAM);
|
||||
|
||||
const nFrequency = 50;
|
||||
let nScriptsRAM;
|
||||
let nMaxRam;
|
||||
let nScripts;
|
||||
|
||||
for (const [name, entry] of Object.entries(serverList)) {
|
||||
//let rootAccess = ns.hasRootAccess(currentServer);
|
||||
|
||||
//ns.tprint(entry.serverName + " sTarget = " + sTarget);
|
||||
|
||||
nMaxRam = ns.getServerMaxRam(entry.serverName);
|
||||
//ns.tprint(entry.serverName + " nMaxRam = " + nMaxRam);
|
||||
|
||||
//nScriptsRAM = ns.getScriptRam(sScript, "home") + Math.max(nWeakenScriptRAM, nGrowScriptRAM, nHackScriptRAM);
|
||||
//ns.tprint("nScriptsRAM = " + nScriptsRAM);
|
||||
if (entry.maxRam >= 64 && serverList[name].rootAccess === true) {
|
||||
|
||||
if (sOverrideTarget !== undefined) {
|
||||
sTarget = sOverrideTarget;
|
||||
}
|
||||
else {
|
||||
sTarget = bestTarget.serverName;
|
||||
}
|
||||
|
||||
//ns.tprint("sTarget = " + sTarget);
|
||||
//ns.tprint("entry.serverName = " + entry.serverName);
|
||||
|
||||
ns.scriptKill(sScript, entry.serverName);
|
||||
ns.scriptKill(sShareScript, entry.serverName);
|
||||
ns.scp("myLibrary.js", entry.serverName, "home");
|
||||
ns.scp(sScript, entry.serverName, "home");
|
||||
ns.scp(sWeakenScript, entry.serverName, "home");
|
||||
ns.scp(sGrowScript, entry.serverName, "home");
|
||||
ns.scp(sHackScript, entry.serverName, "home");
|
||||
ns.exec(sScript, entry.serverName, 1, sTarget, nFrequency, true, false);
|
||||
await ns.sleep(1);
|
||||
}
|
||||
else if (entry.maxRam < 64 && entry.maxRam > 0 && serverList[name].rootAccess === true) {
|
||||
ns.scriptKill(sScript, entry.serverName);
|
||||
ns.scriptKill(sShareScript, entry.serverName);
|
||||
ns.scriptKill(sWeakenScript, entry.serverName);
|
||||
ns.scriptKill(sGrowScript, entry.serverName);
|
||||
ns.scriptKill(sHackScript, entry.serverName);
|
||||
|
||||
ns.scp(sShareScript, entry.serverName);
|
||||
|
||||
let nShare = Math.floor(((ns.getServerMaxRam(entry.serverName) - ns.getServerUsedRam(entry.serverName)) / ns.getScriptRam(sShareScript)));
|
||||
ns.tprint(entry.serverName + " nShare = " + nShare * ns.getScriptRam(sShareScript));
|
||||
ns.exec(sShareScript, entry.serverName, nShare);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
//ns.exec("serverlister.js", "home", 1);
|
||||
}
|
||||
Reference in New Issue
Block a user