mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2026-04-21 16:52:55 +02:00
INFIL: Add stat requirements; Add market consequences for spamming infiltration (#2210)
The primary parts are changing the way stats affect infiltration difficulty, to make rewards more intuitive and balanced, and adding a "market demand" mechanism, which kicks in when doing lots of infils quickly. With current parameters, market demand shouldn't affect manual play at all, and won't affect most auto-infil terribly (it depends how they're implemented). This was a complex change, see PR #2210 for the full context
This commit is contained in:
committed by
GitHub
parent
fdafa191ac
commit
dd128842af
@@ -40,6 +40,9 @@ export function NetscriptInfiltration(): InternalAPI<NetscriptInfiltation> {
|
||||
}
|
||||
const startingSecurityLevel = location.infiltrationData.startingSecurityLevel;
|
||||
const difficulty = calculateDifficulty(startingSecurityLevel);
|
||||
// This is supposed to calculate the constant reward, without market demand.
|
||||
// We simulate this by using a time far in the future.
|
||||
const timestamp = Date.now() + 1e20;
|
||||
const reward = calculateReward(startingSecurityLevel);
|
||||
const maxLevel = location.infiltrationData.maxClearanceLevel;
|
||||
return {
|
||||
@@ -48,9 +51,14 @@ export function NetscriptInfiltration(): InternalAPI<NetscriptInfiltation> {
|
||||
name: location.name,
|
||||
},
|
||||
reward: {
|
||||
tradeRep: calculateTradeInformationRepReward(reward, maxLevel, startingSecurityLevel),
|
||||
sellCash: calculateSellInformationCashReward(reward, maxLevel, startingSecurityLevel),
|
||||
SoARep: calculateInfiltratorsRepReward(Factions[FactionName.ShadowsOfAnarchy], startingSecurityLevel),
|
||||
tradeRep: calculateTradeInformationRepReward(reward, maxLevel, startingSecurityLevel, timestamp),
|
||||
sellCash: calculateSellInformationCashReward(reward, maxLevel, startingSecurityLevel, timestamp),
|
||||
SoARep: calculateInfiltratorsRepReward(
|
||||
Factions[FactionName.ShadowsOfAnarchy],
|
||||
maxLevel,
|
||||
startingSecurityLevel,
|
||||
timestamp,
|
||||
),
|
||||
},
|
||||
difficulty: difficulty,
|
||||
maxClearanceLevel: location.infiltrationData.maxClearanceLevel,
|
||||
|
||||
Reference in New Issue
Block a user