DARKNET: Darkweb Expansion Project & Bitnode (#2139)

This is BN15. It is a really big change; see the PR for all the details.
This commit is contained in:
Michael Ficocelli
2026-02-03 06:40:36 -05:00
committed by GitHub
parent a674633f6c
commit 6073964768
225 changed files with 15010 additions and 526 deletions
+29
View File
@@ -53,6 +53,9 @@ import { Skills } from "../Bladeburner/data/Skills";
import type { PositiveNumber } from "../types";
import { Crimes } from "../Crime/Crimes";
import { calculateEffectiveSharedThreads, calculateShareBonus } from "../NetworkShare/Share";
import { calculateAuthenticationTime } from "../DarkNet/effects/effects";
import { assertDarknetServerData } from "../Netscript/TypeAssertion";
import { getRamBlockRemoved } from "../DarkNet/effects/ramblock";
export function NetscriptFormulas(): InternalAPI<IFormulas> {
const checkFormulasAccess = function (ctx: NetscriptContext): void {
@@ -466,6 +469,32 @@ export function NetscriptFormulas(): InternalAPI<IFormulas> {
return skill.calculateMaxUpgradeCount(level, skillPoints as PositiveNumber);
},
},
dnet: {
getAuthenticateTime:
(ctx) =>
(_darknetServerData, _threads, _player): number => {
assertDarknetServerData(ctx, _darknetServerData);
const threads = helpers.number(ctx, "threads", _threads ?? 1);
const person = helpers.person(ctx, _player ?? Player);
return calculateAuthenticationTime(_darknetServerData, person, threads);
},
getHeartbleedTime:
(ctx) =>
(_darknetServerData, _threads, _player): number => {
assertDarknetServerData(ctx, _darknetServerData);
const threads = helpers.number(ctx, "threads", _threads ?? 1);
const person = helpers.person(ctx, _player ?? Player);
return calculateAuthenticationTime(_darknetServerData, person, threads) * 1.5;
},
getExpectedRamBlockRemoved:
(ctx) =>
(_darknetServerData, _threads, _person): number => {
assertDarknetServerData(ctx, _darknetServerData);
const threads = helpers.number(ctx, "threads", _threads ?? 1);
const person = helpers.person(ctx, _person ?? Player);
return getRamBlockRemoved(_darknetServerData, threads, person);
},
},
};
// Removed functions