Compare commits
2 Commits
66e147d0d7
...
0e100cc1da
| Author | SHA1 | Date | |
|---|---|---|---|
| 0e100cc1da | |||
| 9d8d23cec8 |
@@ -260,7 +260,7 @@ export function listWorkServers(ns) {
|
|||||||
const sFileName = "serverList.txt";
|
const sFileName = "serverList.txt";
|
||||||
if (!ns.fileExists(sFileName, "home")) { ns.print(`ERROR ${sFileName} does not exist.`); return false; };
|
if (!ns.fileExists(sFileName, "home")) { ns.print(`ERROR ${sFileName} does not exist.`); return false; };
|
||||||
let serverList = JSON.parse(ns.read(sFileName));
|
let serverList = JSON.parse(ns.read(sFileName));
|
||||||
ns.tprint(serverList);
|
//ns.tprint(serverList);
|
||||||
//const oList = sortDataByNestedKey(serverList, 'serverCores');
|
//const oList = sortDataByNestedKey(serverList, 'serverCores');
|
||||||
|
|
||||||
let nTotalWorkerRAM = 0;
|
let nTotalWorkerRAM = 0;
|
||||||
@@ -273,7 +273,7 @@ export function listWorkServers(ns) {
|
|||||||
ns.printRaw("┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━┓");
|
ns.printRaw("┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━┓");
|
||||||
ns.printRaw("┃ Server ┃ Free / Max RAM ┃ Cores ┃");
|
ns.printRaw("┃ Server ┃ Free / Max RAM ┃ Cores ┃");
|
||||||
ns.printRaw("┣━━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━┫");
|
ns.printRaw("┣━━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━┫");
|
||||||
for (const [name, entry] of Object.entries(oList)) {
|
for (const [name, entry] of Object.entries(serverList)) {
|
||||||
if (entry.rootAccess && entry.maxRam >= 1) {
|
if (entry.rootAccess && entry.maxRam >= 1) {
|
||||||
let sServerName = entry.serverName.padEnd(nServerColumnWidth, ' ');
|
let sServerName = entry.serverName.padEnd(nServerColumnWidth, ' ');
|
||||||
let nFreeRAM = entry.maxRam - ns.getServerUsedRam(entry.serverName);
|
let nFreeRAM = entry.maxRam - ns.getServerUsedRam(entry.serverName);
|
||||||
|
|||||||
@@ -1,14 +1,59 @@
|
|||||||
/** @param {NS} ns */
|
/** @param {NS} ns */
|
||||||
export async function main(ns) {
|
export async function main(ns) {
|
||||||
|
ns.tail();
|
||||||
const sScript = ns.args[0]; // script
|
const sScript = ns.args[0]; // script
|
||||||
const nThreads = ns.args[1]; // threads
|
const nThreads = ns.args[1]; // threads
|
||||||
const sArgs = [...arguments];
|
const sTarget = ns.args[2]; // target server
|
||||||
|
const bRepeat = ns.args[3]; // should this script loop
|
||||||
|
const nMsecDelay = ns.args[4]; // MsecDelay
|
||||||
|
|
||||||
|
|
||||||
|
const sWeakenScript = "RMweaken.js";
|
||||||
|
const sGrowScript = "RMgrow.js";
|
||||||
|
const sHackScript = "RMhack.js";
|
||||||
|
|
||||||
|
const sListName = "serverList.txt";
|
||||||
|
const sWorkerList = "WorkerList.txt";
|
||||||
|
|
||||||
|
if (!ns.fileExists(sListName, "home")) { ns.print(`ERROR ${sListName} does not exist.`); return false; };
|
||||||
|
let sServerList = JSON.parse(ns.read(sListName));
|
||||||
|
|
||||||
|
ns.print(sScript);
|
||||||
|
ns.print(nThreads);
|
||||||
|
ns.print(sTarget);
|
||||||
|
|
||||||
|
const nScriptSize = ns.getScriptRam(sScript, "home");
|
||||||
|
const nTotalSize = nScriptSize * nThreads;
|
||||||
|
|
||||||
|
ns.print("nScriptSize = " + nScriptSize);
|
||||||
|
ns.print("nTotalSize = " + nTotalSize);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// get sorted list of most cores servers
|
||||||
|
// get total free RAM per number of cores
|
||||||
|
// calculate effect of cores on each server with cores > 1
|
||||||
|
// update nThreads
|
||||||
|
// run weaken/grow on core servers until cores = 1
|
||||||
|
|
||||||
|
// get sorted list of biggest RAM servers
|
||||||
|
// get total free RAM on core 1 servers
|
||||||
|
// run remaining weaken/grow
|
||||||
|
// run hack untill RAM on cores 1 servers run out
|
||||||
|
// run remaining hacks on smallest to biggest core servers
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
for (i = 0; ; i++) {
|
for (i = 0; ; i++) {
|
||||||
let sHost = "";
|
let sHost = "";
|
||||||
ns.exec(sScript, sHost, nThreads);
|
ns.exec(sScript, sHost, nThreads, sTarget, bRepeat, nMsecDelay);
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user