This is a very rough and tumble automated company progression script. its main purpose is to work you through every company that has an augment list (바라건대), and even auto-promotes you if available!
General Description
This script moves you through every company that has an augment list that I’m aware of, checking if you have been invited each, setting you to work if you haven’t, and even auto-promoting you over time! 그 말은, it’s probably full of redundancy, and is less than elegant to put it lightly. I’m self-taught thanks to this game and the various different people making helpful tutorials in here, so I understand if you want or need to tweak it to make the script more efficient.
I should also mention this script won’t work unless you are on or have completed bit node-5, for obvious reasons.
그렇지 않으면, also included in the script are my creator notes that explain what everything does, more or less. it should help new players who just reached bit node-5 to understand more how some things work if they don’t already. Hope it helps, if nothing else to serve as an example of how badly you can code and still have it work!
추신. I know the formatting is as ugly as sin, but it’s the best I could do to make copy/pasting easy on people and still keep my notes. Just hit beautify on it, should fix it right up.
스크립트
/** @param {NS} ns **/ 비동기 함수 메인 내보내기(ns) { //sets parameters for the script, var invites = ns.checkFactionInvitations() // what invites we have, var completed = []; // companies we have accepted invites from, var busy = ns.isBusy() //whether we're currently working, // and gives us both our company targets and matches each company to their respective city. var city = ["Sector-12", "Sector-12", "Sector-12", "Chongqing", "Volhaven", "Volhaven", "Aevum", "Aevum", "Aevum", "Aevum"] var company = ["포 시그마", "Blade Industries", "MegaCorp", "KuaiGong International", "NWO", "OmniTek Incorporated", "Clarke Incorporated", "Bachman & Associates", "Fulcrum Secret Technologies", "ECorp"]; ~하는 동안 (진실) { var joined = false while (!합류했다) { ~을 위한 (var career = 0; career < company.length; career++) { //첫 번째, we set the loop, sticking on the first company on our array, unless we have an invite //from them already, ~을 위한 (var i = 0; 나 < invites.length; i++) { 만약에 (company[career] == invites) { ns.joinFaction(invites); ns.tprint(invites + "has been joined!"); completed.push(company[career]);//then it checks if we completed that company. joined = true; ns.sleep을 기다리세요(1000); //fun fact, these times are offset strangely to help me find where the hell my code was screwing // 위로! } else if (company[career] !== invites && company[career] !== completed[career]) {//if we haven't, // we stay with our current company. career = 0 ns.sleep을 기다리세요(1100); } else if (company[career] == completed[career]) { //this is probably redundant, but it works so i'm not touching it. ns.tprint("Transfering to " + company[career++]) ns.sleep을 기다리세요(1200) } } 만약에 (!busy) { //if we're not working, ns.travelToCity(city[career]) //we go to our companies city, ns.tprint("Starting work at " + company[career]) // the terminal prints where we are, ns.applyToCompany(company[career], "소프트웨어"); //we ask nicely for a job or promotion, ns.workForCompany(company[career], "소프트웨어"); // then we get to work! ns.sleep을 기다리세요(60000); //then the script sleeps for a minute } else if (busy) {// if we're working, ns.tprint("Payday!");// we print a fun payday on terminal, ns.applyToCompany(company[career], "소프트웨어");// we ask for a promotion, ns.workForCompany(company[career], "소프트웨어");//and get our money and get back to work, ns.sleep을 기다리세요(60000);// then sleep for another minute. } //these are likewise also probably redundant, but i'm not touchin' them. else if (!합류했다) { ns.sleep을 기다리세요(1300) } else if (합류했다) { ns.sleep을 기다리세요(1400); } } } } }