Compare commits
6 Commits
36a12b3eac
...
93c8e2be5e
| Author | SHA1 | Date | |
|---|---|---|---|
| 93c8e2be5e | |||
| b5c6c3e485 | |||
| fa65ba3f25 | |||
| 0c54c064eb | |||
| b4e789bf0d | |||
| 9add016d7b |
@ -18,7 +18,6 @@
|
||||
"unlockAllSkins": false,
|
||||
"unlockAllCapturaScenes": false,
|
||||
"fullyStockedVendors": false,
|
||||
"unlockAllProfitTakerStages": false,
|
||||
"skipClanKeyCrafting": false,
|
||||
"noDojoRoomBuildStage": false,
|
||||
"noDecoBuildStage": false,
|
||||
|
||||
@ -31,7 +31,7 @@ fs.readdirSync("../static/webui/translations").forEach(file => {
|
||||
const strings = extractStrings(line);
|
||||
if (Object.keys(strings).length > 0) {
|
||||
Object.entries(strings).forEach(([key, value]) => {
|
||||
if (targetStrings.hasOwnProperty(key) && !targetStrings[key].startsWith("[UNTRANSLATED] ")) {
|
||||
if (targetStrings.hasOwnProperty(key) && !targetStrings[key].startsWith("[UNTRANSLATED]")) {
|
||||
fs.writeSync(fileHandle, ` ${key}: \`${targetStrings[key]}\`,\n`);
|
||||
} else {
|
||||
fs.writeSync(fileHandle, ` ${key}: \`[UNTRANSLATED] ${value}\`,\n`);
|
||||
|
||||
@ -486,19 +486,6 @@ export const getInventoryResponse = async (
|
||||
}
|
||||
}
|
||||
|
||||
if (config.unlockAllProfitTakerStages) {
|
||||
inventoryResponse.CompletedJobChains ??= [];
|
||||
const EudicoHeists = inventoryResponse.CompletedJobChains.find(x => x.LocationTag == "EudicoHeists");
|
||||
if (EudicoHeists) {
|
||||
EudicoHeists.Jobs = allEudicoHeistJobs;
|
||||
} else {
|
||||
inventoryResponse.CompletedJobChains.push({
|
||||
LocationTag: "EudicoHeists",
|
||||
Jobs: allEudicoHeistJobs
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (config.unlockAllSimarisResearchEntries) {
|
||||
inventoryResponse.LibraryPersonalTarget = undefined;
|
||||
inventoryResponse.LibraryPersonalProgress = [
|
||||
@ -515,13 +502,6 @@ export const getInventoryResponse = async (
|
||||
return inventoryResponse;
|
||||
};
|
||||
|
||||
const allEudicoHeistJobs = [
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyOne",
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyTwo",
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyThree",
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyFour"
|
||||
];
|
||||
|
||||
const getExpRequiredForMr = (rank: number): number => {
|
||||
if (rank <= 30) {
|
||||
return 2500 * rank * rank;
|
||||
|
||||
@ -0,0 +1,24 @@
|
||||
import { getInventory } from "../../services/inventoryService.ts";
|
||||
import { getAccountIdForRequest } from "../../services/loginService.ts";
|
||||
import type { RequestHandler } from "express";
|
||||
|
||||
const allEudicoHeistJobs = [
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyOne",
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyTwo",
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyThree",
|
||||
"/Lotus/Types/Gameplay/Venus/Jobs/Heists/HeistProfitTakerBountyFour"
|
||||
];
|
||||
|
||||
export const unlockAllProfitTakerStagesController: RequestHandler = async (req, res) => {
|
||||
const accountId = await getAccountIdForRequest(req);
|
||||
const inventory = await getInventory(accountId, "CompletedJobChains");
|
||||
inventory.CompletedJobChains ??= [];
|
||||
const chain = inventory.CompletedJobChains.find(x => x.LocationTag == "EudicoHeists");
|
||||
if (chain) {
|
||||
chain.Jobs = allEudicoHeistJobs;
|
||||
} else {
|
||||
inventory.CompletedJobChains.push({ LocationTag: "EudicoHeists", Jobs: allEudicoHeistJobs });
|
||||
}
|
||||
await inventory.save();
|
||||
res.end();
|
||||
};
|
||||
@ -1435,6 +1435,7 @@ const inventorySchema = new Schema<IInventoryDatabase, InventoryDocumentProps>(
|
||||
dontSubtractPurchaseStandingCost: Boolean,
|
||||
dontSubtractVoidTraces: Boolean,
|
||||
dontSubtractConsumables: Boolean,
|
||||
finishInvasionsInOneMission: Boolean,
|
||||
infiniteCredits: Boolean,
|
||||
infinitePlatinum: Boolean,
|
||||
infiniteEndo: Boolean,
|
||||
|
||||
@ -14,6 +14,7 @@ import { addMissingMaxRankModsController } from "../controllers/custom/addMissin
|
||||
import { webuiFileChangeDetectedController } from "../controllers/custom/webuiFileChangeDetectedController.ts";
|
||||
import { completeAllMissionsController } from "../controllers/custom/completeAllMissionsController.ts";
|
||||
import { addMissingHelminthBlueprintsController } from "../controllers/custom/addMissingHelminthBlueprintsController.ts";
|
||||
import { unlockAllProfitTakerStagesController } from "../controllers/custom/unlockAllProfitTakerStagesController.ts";
|
||||
|
||||
import { abilityOverrideController } from "../controllers/custom/abilityOverrideController.ts";
|
||||
import { createAccountController } from "../controllers/custom/createAccountController.ts";
|
||||
@ -48,6 +49,7 @@ customRouter.get("/addMissingMaxRankMods", addMissingMaxRankModsController);
|
||||
customRouter.get("/webuiFileChangeDetected", webuiFileChangeDetectedController);
|
||||
customRouter.get("/completeAllMissions", completeAllMissionsController);
|
||||
customRouter.get("/addMissingHelminthBlueprints", addMissingHelminthBlueprintsController);
|
||||
customRouter.get("/unlockAllProfitTakerStages", unlockAllProfitTakerStagesController);
|
||||
|
||||
customRouter.post("/abilityOverride", abilityOverrideController);
|
||||
customRouter.post("/createAccount", createAccountController);
|
||||
|
||||
@ -26,7 +26,6 @@ export interface IConfig extends IConfigRemovedOptions {
|
||||
unlockAllCapturaScenes?: boolean;
|
||||
unlockAllDecoRecipes?: boolean;
|
||||
fullyStockedVendors?: boolean;
|
||||
unlockAllProfitTakerStages?: boolean;
|
||||
skipClanKeyCrafting?: boolean;
|
||||
noDojoRoomBuildStage?: boolean;
|
||||
noDojoDecoBuildStage?: boolean;
|
||||
@ -105,6 +104,7 @@ export const configRemovedOptionsKeys = [
|
||||
"unlockDoubleCapacityPotatoesEverywhere",
|
||||
"unlockExilusEverywhere",
|
||||
"unlockArcanesEverywhere",
|
||||
"unlockAllProfitTakerStages",
|
||||
"noDailyStandingLimits",
|
||||
"noDailyFocusLimit",
|
||||
"noArgonCrystalDecay",
|
||||
|
||||
@ -775,6 +775,11 @@ export const addMissionInventoryUpdates = async (
|
||||
}
|
||||
case "InvasionProgress": {
|
||||
for (const clientProgress of value) {
|
||||
if (inventory.finishInvasionsInOneMission) {
|
||||
clientProgress.Delta *= 3;
|
||||
clientProgress.AttackerScore *= 3;
|
||||
clientProgress.DefenderScore *= 3;
|
||||
}
|
||||
const dbProgress = inventory.QualifyingInvasions.find(x =>
|
||||
x.invasionId.equals(clientProgress._id.$oid)
|
||||
);
|
||||
@ -1832,6 +1837,10 @@ function getRandomMissionDrops(
|
||||
ItemCount: 10
|
||||
});
|
||||
}
|
||||
drops.push({
|
||||
StoreItem: "/Lotus/StoreItems/Types/Gameplay/Duviri/Resource/DuviriDragonDropItem",
|
||||
ItemCount: 10
|
||||
});
|
||||
rewardManifests = ["/Lotus/Types/Game/MissionDecks/DuviriEncounterRewards/DuviriMurmurFinalChestRewards"];
|
||||
} else if (RewardInfo.T == 19) {
|
||||
if (config.worldState?.eightClaw) {
|
||||
@ -1840,6 +1849,10 @@ function getRandomMissionDrops(
|
||||
ItemCount: 15
|
||||
});
|
||||
}
|
||||
drops.push({
|
||||
StoreItem: "/Lotus/StoreItems/Types/Gameplay/Duviri/Resource/DuviriDragonDropItem",
|
||||
ItemCount: 15
|
||||
});
|
||||
rewardManifests = [
|
||||
"/Lotus/Types/Game/MissionDecks/DuviriEncounterRewards/DuviriMurmurFinalSteelChestRewards"
|
||||
];
|
||||
|
||||
@ -2630,84 +2630,92 @@ export const getWorldState = (buildLabel?: string): IWorldState => {
|
||||
);
|
||||
}
|
||||
|
||||
const thermiaFracturesCycleDay = day % 32;
|
||||
const isThermiaFracturesActive = thermiaFracturesCycleDay < 14;
|
||||
// Thermia Fractures activates for 14 days, with alternating 4 and 3-day breaks
|
||||
const thermiaFracturesCycleDay = day % 35;
|
||||
const isThermiaFracturesActive =
|
||||
thermiaFracturesCycleDay < 14 || (thermiaFracturesCycleDay >= 18 && thermiaFracturesCycleDay < 32);
|
||||
const activeThermiaFracturesCycleDay =
|
||||
thermiaFracturesCycleDay - (thermiaFracturesCycleDay < 14 ? 0 : thermiaFracturesCycleDay < 18 ? 14 : 32);
|
||||
|
||||
if (config.worldState?.thermiaFracturesOverride ?? isThermiaFracturesActive) {
|
||||
const activeStartDay = day - thermiaFracturesCycleDay;
|
||||
const activeStartDay = day - activeThermiaFracturesCycleDay;
|
||||
|
||||
const count = config.worldState?.thermiaFracturesProgressOverride ?? 0;
|
||||
const activation = config.worldState?.thermiaFracturesOverride ? 1740416400000 : getSortieTime(activeStartDay);
|
||||
const expiry = config.worldState?.thermiaFracturesOverride ? 2000000000000 : getSortieTime(activeStartDay + 14);
|
||||
|
||||
worldState.Goals.push({
|
||||
_id: { $oid: "5c7cb0d00000000000000000" },
|
||||
Activation: { $date: { $numberLong: activation.toString() } },
|
||||
Expiry: { $date: { $numberLong: expiry.toString() } },
|
||||
Node: "SolNode129",
|
||||
ScoreVar: "FissuresClosed",
|
||||
ScoreLocTag: "/Lotus/Language/G1Quests/HeatFissuresEventScore",
|
||||
Count: count,
|
||||
HealthPct: count / 100,
|
||||
Regions: [1],
|
||||
Desc: "/Lotus/Language/G1Quests/HeatFissuresEventName",
|
||||
ToolTip: "/Lotus/Language/G1Quests/HeatFissuresEventDesc",
|
||||
OptionalInMission: true,
|
||||
Tag: "HeatFissure",
|
||||
UpgradeIds: [{ $oid: "5c81cefa4c4566791728eaa7" }, { $oid: "5c81cefa4c4566791728eaa6" }],
|
||||
Personal: true,
|
||||
Community: true,
|
||||
Goal: 100,
|
||||
Reward: {
|
||||
items: ["/Lotus/StoreItems/Weapons/Corpus/LongGuns/CrpBFG/Vandal/VandalCrpBFG"]
|
||||
},
|
||||
InterimGoals: [5, 25, 50, 75],
|
||||
InterimRewards: [
|
||||
{ items: ["/Lotus/StoreItems/Upgrades/Skins/Clan/OrbBadgeItem"] },
|
||||
{
|
||||
items: [
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Shotgun/ShotgunMedicMod",
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Rifle/SerratedRushMod"
|
||||
]
|
||||
},
|
||||
{
|
||||
items: [
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Pistol/MultishotDodgeMod",
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Melee/CritDamageChargeSpeedMod"
|
||||
]
|
||||
},
|
||||
{ items: ["/Lotus/StoreItems/Upgrades/Skins/Sigils/OrbSigil"] }
|
||||
]
|
||||
});
|
||||
worldState.NodeOverrides.push({
|
||||
_id: { $oid: "5c7cb0d00000000000000000" },
|
||||
Activation: { $date: { $numberLong: activation.toString() } },
|
||||
Expiry: { $date: { $numberLong: expiry.toString() } },
|
||||
Node: "SolNode129",
|
||||
Faction: "FC_CORPUS",
|
||||
CustomNpcEncounters: ["/Lotus/Types/Gameplay/Venus/Encounters/Heists/ExploiterHeistFissure"]
|
||||
});
|
||||
if (count >= 35) {
|
||||
worldState.GlobalUpgrades.push({
|
||||
_id: { $oid: "5c81cefa4c4566791728eaa6" },
|
||||
// If we push it, the game may show the event even tho it's not activated yet (https://onlyg.it/OpenWF/SpaceNinjaServer/issues/2721)
|
||||
if (timeMs >= activation) {
|
||||
worldState.Goals.push({
|
||||
_id: { $oid: "5c7cb0d00000000000000000" },
|
||||
Activation: { $date: { $numberLong: activation.toString() } },
|
||||
ExpiryDate: { $date: { $numberLong: expiry.toString() } },
|
||||
UpgradeType: "GAMEPLAY_MONEY_REWARD_AMOUNT",
|
||||
OperationType: "MULTIPLY",
|
||||
Value: 2,
|
||||
Nodes: ["SolNode129"]
|
||||
Expiry: { $date: { $numberLong: expiry.toString() } },
|
||||
Node: "SolNode129",
|
||||
ScoreVar: "FissuresClosed",
|
||||
ScoreLocTag: "/Lotus/Language/G1Quests/HeatFissuresEventScore",
|
||||
Count: count,
|
||||
HealthPct: count / 100,
|
||||
Regions: [1],
|
||||
Desc: "/Lotus/Language/G1Quests/HeatFissuresEventName",
|
||||
ToolTip: "/Lotus/Language/G1Quests/HeatFissuresEventDesc",
|
||||
OptionalInMission: true,
|
||||
Tag: "HeatFissure",
|
||||
UpgradeIds: [{ $oid: "5c81cefa4c4566791728eaa7" }, { $oid: "5c81cefa4c4566791728eaa6" }],
|
||||
Personal: true,
|
||||
Community: true,
|
||||
Goal: 100,
|
||||
Reward: {
|
||||
items: ["/Lotus/StoreItems/Weapons/Corpus/LongGuns/CrpBFG/Vandal/VandalCrpBFG"]
|
||||
},
|
||||
InterimGoals: [5, 25, 50, 75],
|
||||
InterimRewards: [
|
||||
{ items: ["/Lotus/StoreItems/Upgrades/Skins/Clan/OrbBadgeItem"] },
|
||||
{
|
||||
items: [
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Shotgun/ShotgunMedicMod",
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Rifle/SerratedRushMod"
|
||||
]
|
||||
},
|
||||
{
|
||||
items: [
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Pistol/MultishotDodgeMod",
|
||||
"/Lotus/StoreItems/Upgrades/Mods/DualSource/Melee/CritDamageChargeSpeedMod"
|
||||
]
|
||||
},
|
||||
{ items: ["/Lotus/StoreItems/Upgrades/Skins/Sigils/OrbSigil"] }
|
||||
]
|
||||
});
|
||||
}
|
||||
// Not sure about that
|
||||
if (count == 100) {
|
||||
worldState.GlobalUpgrades.push({
|
||||
_id: { $oid: "5c81cefa4c4566791728eaa7" },
|
||||
worldState.NodeOverrides.push({
|
||||
_id: { $oid: "5c7cb0d00000000000000000" },
|
||||
Activation: { $date: { $numberLong: activation.toString() } },
|
||||
ExpiryDate: { $date: { $numberLong: expiry.toString() } },
|
||||
UpgradeType: "GAMEPLAY_PICKUP_AMOUNT",
|
||||
OperationType: "MULTIPLY",
|
||||
Value: 2,
|
||||
Nodes: ["SolNode129"]
|
||||
Expiry: { $date: { $numberLong: expiry.toString() } },
|
||||
Node: "SolNode129",
|
||||
Faction: "FC_CORPUS",
|
||||
CustomNpcEncounters: ["/Lotus/Types/Gameplay/Venus/Encounters/Heists/ExploiterHeistFissure"]
|
||||
});
|
||||
if (count >= 35) {
|
||||
worldState.GlobalUpgrades.push({
|
||||
_id: { $oid: "5c81cefa4c4566791728eaa6" },
|
||||
Activation: { $date: { $numberLong: activation.toString() } },
|
||||
ExpiryDate: { $date: { $numberLong: expiry.toString() } },
|
||||
UpgradeType: "GAMEPLAY_MONEY_REWARD_AMOUNT",
|
||||
OperationType: "MULTIPLY",
|
||||
Value: 2,
|
||||
Nodes: ["SolNode129"]
|
||||
});
|
||||
}
|
||||
// Not sure about that
|
||||
if (count == 100) {
|
||||
worldState.GlobalUpgrades.push({
|
||||
_id: { $oid: "5c81cefa4c4566791728eaa7" },
|
||||
Activation: { $date: { $numberLong: activation.toString() } },
|
||||
ExpiryDate: { $date: { $numberLong: expiry.toString() } },
|
||||
UpgradeType: "GAMEPLAY_PICKUP_AMOUNT",
|
||||
OperationType: "MULTIPLY",
|
||||
Value: 2,
|
||||
Nodes: ["SolNode129"]
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -28,6 +28,7 @@ export interface IAccountCheats {
|
||||
dontSubtractPurchaseStandingCost?: boolean;
|
||||
dontSubtractVoidTraces?: boolean;
|
||||
dontSubtractConsumables?: boolean;
|
||||
finishInvasionsInOneMission?: boolean;
|
||||
infiniteCredits?: boolean;
|
||||
infinitePlatinum?: boolean;
|
||||
infiniteEndo?: boolean;
|
||||
|
||||
@ -783,6 +783,10 @@
|
||||
<input class="form-check-input" type="checkbox" id="disableDailyTribute" />
|
||||
<label class="form-check-label" for="disableDailyTribute" data-loc="cheats_disableDailyTribute"></label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" id="finishInvasionsInOneMission" />
|
||||
<label class="form-check-label" for="finishInvasionsInOneMission" data-loc="cheats_finishInvasionsInOneMission"></label>
|
||||
</div>
|
||||
<div class="mt-2 mb-2 d-flex flex-wrap gap-2">
|
||||
<button class="btn btn-primary" onclick="debounce(doUnlockAllMissions);" data-loc="cheats_unlockAllMissions"></button>
|
||||
<button class="btn btn-primary" onclick="debounce(markAllAsRead);" data-loc="cheats_markAllAsRead"></button>
|
||||
@ -791,6 +795,7 @@
|
||||
<button class="btn btn-primary" onclick="debounce(addMissingHelminthRecipes);" data-loc="cheats_addMissingSubsumedAbilities"></button>
|
||||
<button class="btn btn-primary" onclick="doIntrinsicsUnlockAll();" data-loc="cheats_intrinsicsUnlockAll"></button>
|
||||
<button class="btn btn-primary" onclick="debounce(doMaxPlexus);" data-loc="inventory_maxPlexus"></button>
|
||||
<button class="btn btn-primary" onclick="debounce(doUnlockAllProfitTakerStages);" data-loc="cheats_unlockAllProfitTakerStages"></button>
|
||||
</div>
|
||||
<form class="mt-2" onsubmit="doChangeSupportedSyndicate(); return false;">
|
||||
<label class="form-label" for="changeSyndicate" data-loc="cheats_changeSupportedSyndicate"></label>
|
||||
@ -846,10 +851,6 @@
|
||||
<input class="form-check-input" type="checkbox" id="fullyStockedVendors" />
|
||||
<label class="form-check-label" for="fullyStockedVendors" data-loc="cheats_fullyStockedVendors"></label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" id="unlockAllProfitTakerStages" />
|
||||
<label class="form-check-label" for="unlockAllProfitTakerStages" data-loc="cheats_unlockAllProfitTakerStages"></label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" id="skipClanKeyCrafting" />
|
||||
<label class="form-check-label" for="skipClanKeyCrafting" data-loc="cheats_skipClanKeyCrafting"></label>
|
||||
|
||||
@ -2719,6 +2719,12 @@ async function doUnlockAllMissions() {
|
||||
toast(loc("cheats_unlockAllMissions_ok"));
|
||||
}
|
||||
|
||||
async function doUnlockAllProfitTakerStages() {
|
||||
await revalidateAuthz();
|
||||
await fetch("/custom/unlockAllProfitTakerStages?" + window.authz);
|
||||
toast(loc("cheats_unlockSucc"));
|
||||
}
|
||||
|
||||
const importSamples = {
|
||||
maxFocus: {
|
||||
FocusUpgrades: [
|
||||
|
||||
@ -210,6 +210,7 @@ dict = {
|
||||
cheats_baroFullyStocked: `Baro hat volles Inventar`,
|
||||
cheats_syndicateMissionsRepeatable: `Syndikat-Missionen wiederholbar`,
|
||||
cheats_unlockAllProfitTakerStages: `Alle Profiteintreiber-Phasen freischalten`,
|
||||
cheats_unlockSucc: `[UNTRANSLATED] Successfully unlocked.`,
|
||||
cheats_instantFinishRivenChallenge: `Riven-Mod Herausforderung sofort abschließen`,
|
||||
cheats_instantResourceExtractorDrones: `Sofortige Ressourcen-Extraktor-Drohnen`,
|
||||
cheats_noResourceExtractorDronesDamage: `Kein Schaden für Ressourcen-Extraktor-Drohnen`,
|
||||
@ -238,6 +239,7 @@ dict = {
|
||||
cheats_changeSupportedSyndicate: `Unterstütztes Syndikat`,
|
||||
cheats_changeButton: `Ändern`,
|
||||
cheats_markAllAsRead: `Posteingang als gelesen markieren`,
|
||||
cheats_finishInvasionsInOneMission: `[UNTRANSLATED] Finish Invasions in One Mission`,
|
||||
|
||||
worldState: `Weltstatus`,
|
||||
worldState_creditBoost: `Event Booster: Credit`,
|
||||
|
||||
@ -209,6 +209,7 @@ dict = {
|
||||
cheats_baroFullyStocked: `Baro Fully Stocked`,
|
||||
cheats_syndicateMissionsRepeatable: `Syndicate Missions Repeatable`,
|
||||
cheats_unlockAllProfitTakerStages: `Unlock All Profit Taker Stages`,
|
||||
cheats_unlockSucc: `Successfully unlocked.`,
|
||||
cheats_instantFinishRivenChallenge: `Instant Finish Riven Challenge`,
|
||||
cheats_instantResourceExtractorDrones: `Instant Resource Extractor Drones`,
|
||||
cheats_noResourceExtractorDronesDamage: `No Resource Extractor Drones Damage`,
|
||||
@ -237,6 +238,7 @@ dict = {
|
||||
cheats_changeSupportedSyndicate: `Supported syndicate`,
|
||||
cheats_changeButton: `Change`,
|
||||
cheats_markAllAsRead: `Mark Inbox As Read`,
|
||||
cheats_finishInvasionsInOneMission: `Finish Invasions in One Mission`,
|
||||
|
||||
worldState: `World State`,
|
||||
worldState_creditBoost: `Credit Boost`,
|
||||
|
||||
@ -210,6 +210,7 @@ dict = {
|
||||
cheats_baroFullyStocked: `Baro con stock completo`,
|
||||
cheats_syndicateMissionsRepeatable: `Misiones de sindicato rejugables`,
|
||||
cheats_unlockAllProfitTakerStages: `Desbloquea todas las etapas del Roba-ganancias`,
|
||||
cheats_unlockSucc: `[UNTRANSLATED] Successfully unlocked.`,
|
||||
cheats_instantFinishRivenChallenge: `Terminar desafío de agrietado inmediatamente`,
|
||||
cheats_instantResourceExtractorDrones: `Drones de extracción de recursos instantáneos`,
|
||||
cheats_noResourceExtractorDronesDamage: `Sin daño a los drones extractores de recursos`,
|
||||
@ -238,6 +239,7 @@ dict = {
|
||||
cheats_changeSupportedSyndicate: `Sindicatos disponibles`,
|
||||
cheats_changeButton: `Cambiar`,
|
||||
cheats_markAllAsRead: `Marcar bandeja de entrada como leída`,
|
||||
cheats_finishInvasionsInOneMission: `[UNTRANSLATED] Finish Invasions in One Mission`,
|
||||
|
||||
worldState: `Estado del mundo`,
|
||||
worldState_creditBoost: `Potenciador de Créditos`,
|
||||
|
||||
@ -210,6 +210,7 @@ dict = {
|
||||
cheats_baroFullyStocked: `Stock de Baro au max`,
|
||||
cheats_syndicateMissionsRepeatable: `Mission syndicat répétables`,
|
||||
cheats_unlockAllProfitTakerStages: `Débloquer toutes les étapes du Preneur de Profit`,
|
||||
cheats_unlockSucc: `[UNTRANSLATED] Successfully unlocked.`,
|
||||
cheats_instantFinishRivenChallenge: `Débloquer le challenge Riven instantanément`,
|
||||
cheats_instantResourceExtractorDrones: `Ressources de drones d'extraction instantannées`,
|
||||
cheats_noResourceExtractorDronesDamage: `Aucun dégâts aux drones d'extraction de resources`,
|
||||
@ -238,6 +239,7 @@ dict = {
|
||||
cheats_changeSupportedSyndicate: `Allégeance`,
|
||||
cheats_changeButton: `Changer`,
|
||||
cheats_markAllAsRead: `Marquer la boîte de réception comme lue`,
|
||||
cheats_finishInvasionsInOneMission: `[UNTRANSLATED] Finish Invasions in One Mission`,
|
||||
|
||||
worldState: `Carte Solaire`,
|
||||
worldState_creditBoost: `Booster de Crédit`,
|
||||
|
||||
@ -210,6 +210,7 @@ dict = {
|
||||
cheats_baroFullyStocked: `Баро полностью укомплектован`,
|
||||
cheats_syndicateMissionsRepeatable: `Повторять миссии синдиката`,
|
||||
cheats_unlockAllProfitTakerStages: `Разблокировать все этапы Сферы извлечения прибыли`,
|
||||
cheats_unlockSucc: `[UNTRANSLATED] Successfully unlocked.`,
|
||||
cheats_instantFinishRivenChallenge: `Мгновенное завершение испытания мода Разлома`,
|
||||
cheats_instantResourceExtractorDrones: `Мгновенно добывающие Дроны-сборщики`,
|
||||
cheats_noResourceExtractorDronesDamage: `Без урона по Дронам-сборщикам`,
|
||||
@ -238,6 +239,7 @@ dict = {
|
||||
cheats_changeSupportedSyndicate: `Поддерживаемый синдикат`,
|
||||
cheats_changeButton: `Изменить`,
|
||||
cheats_markAllAsRead: `Пометить все входящие как прочитанные`,
|
||||
cheats_finishInvasionsInOneMission: `[UNTRANSLATED] Finish Invasions in One Mission`,
|
||||
|
||||
worldState: `Состояние мира`,
|
||||
worldState_creditBoost: `Глобальный бустер Кредитов`,
|
||||
|
||||
@ -210,6 +210,7 @@ dict = {
|
||||
cheats_baroFullyStocked: `Баро повністю укомплектований`,
|
||||
cheats_syndicateMissionsRepeatable: `Повторювати місії синдиката`,
|
||||
cheats_unlockAllProfitTakerStages: `Розблокувати всі етапи Привласнювачки`,
|
||||
cheats_unlockSucc: `[UNTRANSLATED] Successfully unlocked.`,
|
||||
cheats_instantFinishRivenChallenge: `Миттєве завершення випробування модифікатора Розколу`,
|
||||
cheats_instantResourceExtractorDrones: `Миттєво добуваючі Дрони-видобувачі`,
|
||||
cheats_noResourceExtractorDronesDamage: `Без шкоди по Дронам-видобувачам`,
|
||||
@ -238,6 +239,7 @@ dict = {
|
||||
cheats_changeSupportedSyndicate: `Підтримуваний синдикат`,
|
||||
cheats_changeButton: `Змінити`,
|
||||
cheats_markAllAsRead: `Помітити всі вхідні як прочитані`,
|
||||
cheats_finishInvasionsInOneMission: `[UNTRANSLATED] Finish Invasions in One Mission`,
|
||||
|
||||
worldState: `Стан світу`,
|
||||
worldState_creditBoost: `Глобальне посилення Кредитів`,
|
||||
|
||||
@ -210,6 +210,7 @@ dict = {
|
||||
cheats_baroFullyStocked: `虚空商人贩卖所有商品`,
|
||||
cheats_syndicateMissionsRepeatable: `集团任务可重复完成`,
|
||||
cheats_unlockAllProfitTakerStages: `解锁利润收割者圆蛛所有阶段`,
|
||||
cheats_unlockSucc: `[UNTRANSLATED] Successfully unlocked.`,
|
||||
cheats_instantFinishRivenChallenge: `立即完成裂罅挑战`,
|
||||
cheats_instantResourceExtractorDrones: `资源无人机即时完成`,
|
||||
cheats_noResourceExtractorDronesDamage: `资源无人机不会损毁`,
|
||||
@ -238,6 +239,7 @@ dict = {
|
||||
cheats_changeSupportedSyndicate: `支持的集团`,
|
||||
cheats_changeButton: `更改`,
|
||||
cheats_markAllAsRead: `收件箱全部标记为已读`,
|
||||
cheats_finishInvasionsInOneMission: `一场任务完成整场入侵`,
|
||||
|
||||
worldState: `世界状态配置`,
|
||||
worldState_creditBoost: `现金加成`,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user