From e3ea6119286625721ccb78ce7cd3fb5887037917 Mon Sep 17 00:00:00 2001 From: catloversg <152669316+catloversg@users.noreply.github.com> Date: Fri, 18 Jul 2025 04:24:19 +0700 Subject: [PATCH] CORPORATION: Remove VeChain (#2245) --- markdown/bitburner.corpunlockname.md | 1 - src/Corporation/Enums.ts | 1 - src/Corporation/data/CorporationUnlocks.ts | 9 -- src/Corporation/ui/DivisionOffice.tsx | 140 +++++++++--------- src/Corporation/ui/DivisionOverview.tsx | 50 +++---- .../corporation/unlocks-upgrade-research.md | 1 - src/ScriptEditor/NetscriptDefinitions.d.ts | 1 - src/utils/APIBreaks/3.0.0.ts | 5 + src/utils/SaveDataMigrationUtils.ts | 10 ++ 9 files changed, 105 insertions(+), 113 deletions(-) diff --git a/markdown/bitburner.corpunlockname.md b/markdown/bitburner.corpunlockname.md index 4b30e4874..e388e564d 100644 --- a/markdown/bitburner.corpunlockname.md +++ b/markdown/bitburner.corpunlockname.md @@ -13,7 +13,6 @@ type CorpUnlockName = | "Smart Supply" | "Market Research - Demand" | "Market Data - Competition" - | "VeChain" | "Shady Accounting" | "Government Partnership" | "Warehouse API" diff --git a/src/Corporation/Enums.ts b/src/Corporation/Enums.ts index 93a00fa2f..2f28b6d0c 100644 --- a/src/Corporation/Enums.ts +++ b/src/Corporation/Enums.ts @@ -32,7 +32,6 @@ export enum CorpUnlockName { SmartSupply = "Smart Supply", MarketResearchDemand = "Market Research - Demand", MarketDataCompetition = "Market Data - Competition", - VeChain = "VeChain", ShadyAccounting = "Shady Accounting", GovernmentPartnership = "Government Partnership", WarehouseAPI = "Warehouse API", diff --git a/src/Corporation/data/CorporationUnlocks.ts b/src/Corporation/data/CorporationUnlocks.ts index da1a017f0..471af9776 100644 --- a/src/Corporation/data/CorporationUnlocks.ts +++ b/src/Corporation/data/CorporationUnlocks.ts @@ -46,15 +46,6 @@ export const CorpUnlocks: Record = { "every material and product.", }, - [CorpUnlockName.VeChain]: { - name: CorpUnlockName.VeChain, - price: 10e9, - desc: - "Use AI and blockchain technology to identify where you can improve your supply chain systems. " + - "This upgrade will allow you to view a wide array of useful statistics about your " + - "Corporation.", - }, - [CorpUnlockName.ShadyAccounting]: { name: CorpUnlockName.ShadyAccounting, price: 500e12, diff --git a/src/Corporation/ui/DivisionOffice.tsx b/src/Corporation/ui/DivisionOffice.tsx index a95e4846a..b8c7e7bd9 100644 --- a/src/Corporation/ui/DivisionOffice.tsx +++ b/src/Corporation/ui/DivisionOffice.tsx @@ -3,7 +3,7 @@ import React, { useState } from "react"; import { OfficeSpace } from "../OfficeSpace"; -import { CorpUnlockName, CorpEmployeeJob, CorpUpgradeName, CorpProductResearchName } from "@enums"; +import { CorpEmployeeJob, CorpUpgradeName, CorpProductResearchName } from "@enums"; import { buyTea } from "../Actions"; import { MoneyCost } from "./MoneyCost"; @@ -202,78 +202,74 @@ function AutoManagement(props: OfficeProps): React.ReactElement { - {corp.unlocks.has(CorpUnlockName.VeChain) && ( - <> - - - - The amount of material this office can produce. -
- This value is based off the productivity of your -
- Operations, Engineering, and Management employees. - - } - > - Material Production: -
-
- - - {formatCorpStat(totalMaterialProduction)} - - -
- {division.makesProducts ? ( - - - - The amount of any given Product this office can produce. -
- This value is based off the productivity of your -
- Operations, Engineering, and Management employees. - - } - > - Product Production: -
-
- - - {formatCorpStat(totalProductProduction)} - - -
- ) : null} - - - - This office's sales effectivity for all materials and products. -
- It is based on your Business employees and your advertising. -
- This will be further modified by demand and competition for each item. - - } - > - Sales Multiplier: -
-
- - - {formatCorpMultiplier(totalSaleMultiplier)} - - -
- + + + + The amount of material this office can produce. +
+ This value is based off the productivity of your +
+ Operations, Engineering, and Management employees. + + } + > + Material Production: +
+
+ + + {formatCorpStat(totalMaterialProduction)} + + +
+ {division.makesProducts && ( + + + + The amount of any given Product this office can produce. +
+ This value is based off the productivity of your +
+ Operations, Engineering, and Management employees. + + } + > + Product Production: +
+
+ + + {formatCorpStat(totalProductProduction)} + + +
)} + + + + This office's sales effectivity for all materials and products. +
+ It is based on your Business employees and your advertising. +
+ This will be further modified by demand and competition for each item. + + } + > + Sales Multiplier: +
+
+ + + {formatCorpMultiplier(totalSaleMultiplier)} + + +
- {advertisingInfo && ( - - Multiplier for this industry's sales due to its awareness and popularity. -
- {`\\(\\text{${division.industry} Industry: }\\alpha = ${division.advertisingFactor}\\)`} - {`\\(\\text{multiplier} = \\left((\\text{awareness}+1)^{\\alpha} \\times (\\text{popularity}+1)^{\\alpha} \\times \\frac{\\text{popularity}+0.001}{\\text{awareness}}\\right)^{0.85}\\)`} -
- Total:, {formatCorpMultiplier(totalAdvertisingFac)}], - ]} - /> - - } - > - Advertising Multiplier: {formatCorpMultiplier(totalAdvertisingFac)} -
- )} + + Multiplier for this industry's sales due to its awareness and popularity. +
+ {`\\(\\text{${division.industry} Industry: }\\alpha = ${division.advertisingFactor}\\)`} + {`\\(\\text{multiplier} = \\left((\\text{awareness}+1)^{\\alpha} \\times (\\text{popularity}+1)^{\\alpha} \\times \\frac{\\text{popularity}+0.001}{\\text{awareness}}\\right)^{0.85}\\)`} +
+ Total:, {formatCorpMultiplier(totalAdvertisingFac)}], + ]} + /> + + } + > + Advertising Multiplier: {formatCorpMultiplier(totalAdvertisingFac)} +

= Player.corporation.unlocks; + for (const upgrade of unlocks) { + if (upgrade !== "VeChain") { + continue; + } + Player.corporation.gainFunds(10e9, "force majeure"); + } + unlocks.delete("VeChain"); } showAPIBreaks("3.0.0", breakingChanges300); }