mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2026-04-17 14:59:16 +02:00
DNET: Player feedback (#2545)
This commit is contained in:
committed by
GitHub
parent
73b7921ef0
commit
1b6b07faae
@@ -1,7 +1,6 @@
|
||||
import { Player } from "@player";
|
||||
import type { DarknetServerData, Person as IPerson } from "@nsdefs";
|
||||
import { AugmentationName, CompletedProgramName, LiteratureName } from "@enums";
|
||||
import { generateContract } from "../../CodingContract/ContractGenerator";
|
||||
import {
|
||||
commonPasswordDictionary,
|
||||
notebookFileNames,
|
||||
@@ -20,7 +19,7 @@ import { populateDarknet } from "../controllers/NetworkGenerator";
|
||||
import { getDarknetServer } from "../utils/darknetServerUtils";
|
||||
import {
|
||||
getAllMovableDarknetServers,
|
||||
getBackdooredDarkwebServers,
|
||||
getBackdooredDarknetServers,
|
||||
getNearbyNonEmptyPasswordServer,
|
||||
getStasisLinkServers,
|
||||
} from "../utils/darknetNetworkUtils";
|
||||
@@ -41,14 +40,9 @@ export const handleSuccessfulAuth = (server: DarknetServer, threads: number, pid
|
||||
server.hasAdminRights = true;
|
||||
addClue(server);
|
||||
|
||||
const cctChance = Math.min(0.12, 0.02 * (server.difficulty - 1));
|
||||
if (Math.random() < cctChance) {
|
||||
generateContract({ server: server.hostname });
|
||||
}
|
||||
|
||||
const chance = 0.1 * 1.05 ** server?.difficulty;
|
||||
if (Math.random() < chance && !isLabyrinthServer(server.hostname)) {
|
||||
addCacheToServer(server);
|
||||
addCacheToServer(server, false);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -110,7 +104,7 @@ export const calculateAuthenticationTime = (
|
||||
};
|
||||
|
||||
export const getBackdoorAuthTimeDebuff = () => {
|
||||
const backdooredServerCount = getBackdooredDarkwebServers().length;
|
||||
const backdooredServerCount = getBackdooredDarknetServers().length;
|
||||
const serverCount = getAllMovableDarknetServers().filter((s) => s.hasAdminRights).length;
|
||||
const safeBackdoors = Math.max(serverCount / (NET_WIDTH * 3), 2);
|
||||
const backdoorSurplus = Math.max(0, backdooredServerCount - safeBackdoors);
|
||||
@@ -132,7 +126,7 @@ export const getMultiplierFromCharisma = (scalar = 1) => {
|
||||
|
||||
export const calculatePasswordAttemptChaGain = (server: DarknetServerData, threads: number = 1, success = false) => {
|
||||
const baseXpGain = 3;
|
||||
const difficultyBase = 0.8;
|
||||
const difficultyBase = 1.1;
|
||||
const xpGain = baseXpGain + difficultyBase ** server.difficulty;
|
||||
const alreadyHackedMult = server.hasAdminRights ? 0.2 : 1;
|
||||
const successMult = success && !server.hasAdminRights ? 10 : 1;
|
||||
@@ -264,7 +258,7 @@ export const setStasisLink = (ctx: NetscriptContext, server: DarknetServer, shou
|
||||
|
||||
export const chargeServerMigration = (server: DarknetServer, threads = 1) => {
|
||||
const chargeIncrease = ((Player.skills.charisma + 500) / (server.difficulty * 200 + 1000)) * 0.01 * threads;
|
||||
const xpGained = Player.mults.charisma_exp * 50 * ((200 + Player.skills.charisma) / 200) * threads;
|
||||
const xpGained = Player.mults.charisma_exp * 5 * threads * server.difficulty;
|
||||
Player.gainCharismaExp(xpGained);
|
||||
const currentCharge = DarknetState.migrationInductionServers.get(server.hostname) ?? 0;
|
||||
const newCharge = Math.min(currentCharge + chargeIncrease, 1);
|
||||
@@ -292,4 +286,9 @@ export const getDarkscapeNavigator = () => {
|
||||
populateDarknet();
|
||||
};
|
||||
|
||||
export const cctCooldownReached = () => {
|
||||
const timeSinceLastCCT = new Date().getTime() - DarknetState.lastCctRewardTime.getTime();
|
||||
return timeSinceLastCCT > 10 * 60 * 1000;
|
||||
};
|
||||
|
||||
export const hasFullDarknetAccess = (): boolean => Player.bitNodeN === 15 || Player.activeSourceFileLvl(15) > 0;
|
||||
|
||||
Reference in New Issue
Block a user