bitburner-src/markdown/bitburner.ns.growthanalyze.md
David Walker dc9b1050bf Result of npm run doc
Includes my change and a bunch of prior changes
2023-02-17 00:14:20 -08:00

2.3 KiB

Home > bitburner > NS > growthAnalyze

NS.growthAnalyze() method

Calculate the number of grow threads needed for a given multiplicative growth factor.

Signature:

growthAnalyze(host: string, multiplier: number, cores?: number): number;

Parameters

Parameter Type Description
host string Hostname of the target server.
multiplier number Multiplier that will be applied to a server's money after applying additive growth. Decimal form.
cores number (Optional) Number of cores on the host running the grow function. Optional, defaults to 1.

Returns:

number

Decimal number of grow threads needed for the specified multiplicative growth factor (does not include additive growth).

Remarks

RAM cost: 1 GB

This function returns the total decimal number of grow threads needed in order to multiply the money available on the specified server by a given multiplier, if all threads are executed at the server's current security level, regardless of how many threads are assigned to each call.

Note that there is also an additive factor that is applied before the multiplier. Each grow call will add $1 to the host's money for each thread before applying the multiplier for its thread count. This means that at extremely low starting money, fewer threads would be needed to apply the same effective multiplier than what is calculated by growthAnalyze.

Like other basic hacking analysis functions, this calculation uses the current status of the player and server. To calculate using hypothetical server or player status, obtain access to the Formulas API and use formulas.hacking.growThreads.

Example

// calculate number of grow threads to apply 2x growth multiplier on n00dles (does not include the additive growth).
const growThreads = ns.growthAnalyze("n00dles", 2);

// When using the thread count to launch a script, it needs to be converted to an integer.
ns.run("noodleGrow.js", Math.ceil(growThreads));