Files
BitburnerOLD/run-simple-hack.js
2022-09-10 05:33:31 +02:00

47 lines
1.2 KiB
JavaScript

/** @param {import(".").NS } ns */
export async function main(ns) {
ns.disableLog('ALL');
let host = ns.args[0];
let remote = ns.args[1];
let script = 'simple-hack.js';
if (!ns.serverExists(host)) {
ns.print(`Host '${host}'' doesn't exist!`);
return 1;
}
if (!ns.serverExists(remote)) {
ns.print(`Remote '${remote}'' doesn't exist!`);
return 2;
}
if (!ns.fileExists(script, host)) {
if (!ns.fileExists(script, 'home')) {
ns.print(`Script '${script}' doesn't exist!`);
return 3;
}
ns.scp(script, host, 'home');
}
let serverMaxRam = ns.getServerMaxRam(host);
let serverUsedRam = ns.getServerUsedRam(host);
let serverFreeRam = serverMaxRam - serverUsedRam;
let scriptRam = ns.getScriptRam(script, host);
let maxThreads = Math.floor(serverFreeRam / scriptRam);
if(maxThreads == 0)
{
ns.print(`Not enough ram to run '${script}', ${scriptRam}/${serverFreeRam}!`)
}
ns.scriptKill(script, host);
if (!ns.exec(script, host, maxThreads, remote)) {
ns.tprint(`Exec error running script '${script} on '${host}!`);
}
}