Skip to content

Commit

Permalink
Fix #400 - new bitnode priority order, with detailed documentation to…
Browse files Browse the repository at this point in the history
… help make tweaks
  • Loading branch information
alainbryden committed Oct 22, 2024
1 parent 83d7713 commit 3fd75f9
Showing 1 changed file with 40 additions and 5 deletions.
45 changes: 40 additions & 5 deletions autopilot.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,6 @@ import {
formatMoney, formatDuration, getErrorInfo
} from './helpers.js'

const persistentLog = "log.autopilot.txt";
const factionManagerOutputFile = "/Temp/affordable-augs.txt"; // Temp file produced by faction manager with status information
const casinoFlagFile = "/Temp/ran-casino.txt";
const defaultBnOrder = [4.3, 1.3, 14.3, 5.1, 9.2, 10.1, 2.1, 8.2, 10.3, 9.3, 11.3, 13.3, 5.3, 7.1, 6.3, 7.3, 2.3, 8.3, 3.3, 12.999];

let options; // The options used at construction time
const argsSchema = [ // The set of all command line arguments
['next-bn', 0], // If we destroy the current BN, the next BN to start
Expand Down Expand Up @@ -42,6 +37,46 @@ export function autocomplete(data, args) {
return [];
}

const persistentLog = "log.autopilot.txt";
const factionManagerOutputFile = "/Temp/affordable-augs.txt"; // Temp file produced by faction manager with status information
const casinoFlagFile = "/Temp/ran-casino.txt";
const defaultBnOrder = [ // The order in which we intend to play bitnodes
// 1st Priority: Key new features and/or major stat boosts
4.3, // Normal. Need singularity to automate everything, and need the API costs reduced from 16x -> 4x -> 1x reliably do so from the start of each BN
1.2, // Easy. Big boost to all multipliers (16% -> 24%), and no penalties to slow us down. Should go quick.
5.1, // Normal. Unlock intelligence stat early to maximize growth, getBitNodeMultipliers + Formulas.exe for more accurate scripts, and +8% hack mults
14.2, // Normal. Boosts the powerful go.js bonuses quite a lot but note that we can automate IPvGO from the very start (BN1.1), no need to unlock it.
1.3, // Easy. The last bonus is not as big a jump (24% -> 28%), but it's low-hanging fruit
10.1, // Hard. Unlock Sleeves (which tremendously speed along gangs) and grafting (can speed up slow rep-gain BNs). // TODO: Buying / upgrading sleeve mem has no API, requires manual interaction. Can we automate this with UI clicking like casino.js?
2.1, // Easy. Unlocks gangs, which reduces the need to grind faction and company rep to getting access to most augmentations, speeding up all BNs

// 2nd Priority: More new features, from Harder BNs. Things will slow down for a while, but the new features should pay in dividends for all future BNs
8.2, // Hard. 8.1 immediately unlocks stocks, 8.2 doubles stock earning rate with shorts. Stocks are never nerfed in any BN (4S can be made too pricey though), and we have a good pre-4S stock script.
13.1, // Hard. Unlock Stanek's Gift. We've put a lot of effort into min/maxing the Tetris, so we should try to get it early, even though it's a hard BN. I might change my mind and push this down if it proves too slow.
7.1, // Hard. Unlocks the bladeburner API (TODO: Can we still play bladeburner in other BNs without 6.1?) Many recommend it before BN9 since it may end up being a faster win condition in some of the tougher bitnodes ahead. I'm on the fence.
9.1, // Hard. Unlocks hacknet servers. Hashes can be earned and spent on cash very early in a tough BN to help kick-start things. Hacknet productin/costs improved by 12%

// 3nd Priority: With most features unlocked, max out SF levels roughly in the order of greatest boost and/or easiest difficulty, to hardest and/or less worthwhile
2.3, // Easy. Boosts to crime success / money / CHA will speed along gangs, training and earning augmentations in the future
5.3, // Normal. Diminishing boost to hacking multipliers (8% -> 12% -> 14%), but relatively normal bitnode, especially with other features unlocked
11.3, // Normal. Decrease augmentation cost scaling in a reset (4% -> 6% -> 7%) (can buy more augs per reset). Also boosts company salary/rep (32% -> 48% -> 56%), which we have little use for with gangs.)
14.3, // Normal: Makes go.js cheats slightly more successful, increases max go favour from (100->120) and not too difficult to get out of the way
13.3, // Hard. Make stanek's gift bigger to get more/different boosts
9.2, // Hard. Start with 128 GB home ram. Speeds up slow-starting new BNs, but less important with good ram-dodging scripts. Hacknet productin/costs improved by 12% -> 18%.
9.3, // Hard. Start each new BN with an already powerful hacknet server, but *only until the first reset*, which is a bit of a damper. Hacknet productin/costs improved by 18% -> 21%
10.3, // Hard. Get the last 2 sleeves (6 => 8) to boost their productivity ~30%. These really help with Bladeburner below. Putting this a little later because buying sleeves memory upgrades requires manual intervention right now.

// 4th Priority: Play some Bladeburners. Mostly not used to beat other BNs, because for much of the BN this can't be done concurrently with player actions like crime/faction work, and no other BNs are "tuned" to be beaten via Bladeburner win condition
7.1, // Hard. Unlock the Bladeburner API, required to automate these 6 BNs (and boosts future Bladeburner mults by 8%)
6.3, // Normal. The 3 easier bladeburner BNs. Boosts combat stats by 8% -> 12% -> 14%
7.3, // Hard. The remaining 2 hard bladeburner BNs. Boosts all Bladeburner mults by 8% -> 12% -> 14%, so no interaction with other BNs unless trying to win via Bladeburner.

// Low Priority:
8.3, // Hard. Just gives stock "Limit orders" which we don't use in our scripts,
3.3, // Hard. Corporations. I have no corp scripts, maybe one day I will. The history here is: in 2021, corps were too exploity and broke the game (inf. money). Also the APIs were buggy and new, so I skipped it. Autopilot will win normally while ignoring corps.
12.9999 // Easy. Keep playing forever. Only stanek scales very well here, there is much work to be done to be able to climb these faster.
];

let playerInGang = false, rushGang = false; // Tells us whether we're should be trying to work towards getting into a gang
let playerInBladeburner = false; // Whether we've joined bladeburner
let wdHack = 0; // If the WD server is available (i.e. TRP is installed), caches the required hack level
Expand Down

0 comments on commit 3fd75f9

Please sign in to comment.