From a10bd8ec3574e61ad2120effcecc00909f144b1c Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Sat, 5 Apr 2025 21:26:00 +0200 Subject: [PATCH] feat: no mastery rank up cooldown cheat --- config.json.example | 1 + src/controllers/api/trainingResultController.ts | 8 +++++++- src/services/configService.ts | 1 + static/webui/index.html | 4 ++++ static/webui/translations/de.js | 1 + static/webui/translations/en.js | 1 + static/webui/translations/fr.js | 1 + static/webui/translations/ru.js | 1 + static/webui/translations/zh.js | 1 + 9 files changed, 18 insertions(+), 1 deletion(-) diff --git a/config.json.example b/config.json.example index d1c93a66..4e52c750 100644 --- a/config.json.example +++ b/config.json.example @@ -30,6 +30,7 @@ "unlockArcanesEverywhere": false, "noDailyStandingLimits": false, "noArgonCrystalDecay": false, + "noMasteryRankUpCooldown": false, "noVendorPurchaseLimits": true, "instantResourceExtractorDrones": false, "noDojoRoomBuildStage": false, diff --git a/src/controllers/api/trainingResultController.ts b/src/controllers/api/trainingResultController.ts index a9bc196e..639f0db6 100644 --- a/src/controllers/api/trainingResultController.ts +++ b/src/controllers/api/trainingResultController.ts @@ -6,6 +6,7 @@ import { RequestHandler } from "express"; import { unixTimesInMs } from "@/src/constants/timeConstants"; import { IInventoryChanges } from "@/src/types/purchaseTypes"; import { createMessage } from "@/src/services/inboxService"; +import { config } from "@/src/services/configService"; interface ITrainingResultsRequest { numLevelsGained: number; @@ -25,7 +26,12 @@ const trainingResultController: RequestHandler = async (req, res): Promise const inventory = await getInventory(accountId); if (trainingResults.numLevelsGained == 1) { - inventory.TrainingDate = new Date(Date.now() + unixTimesInMs.hour * 23); + let time = Date.now(); + if (!config.noMasteryRankUpCooldown) { + time += unixTimesInMs.hour * 23; + } + inventory.TrainingDate = new Date(time); + inventory.PlayerLevel += 1; await createMessage(accountId, [ diff --git a/src/services/configService.ts b/src/services/configService.ts index c01fee7e..04c47d36 100644 --- a/src/services/configService.ts +++ b/src/services/configService.ts @@ -35,6 +35,7 @@ interface IConfig { unlockArcanesEverywhere?: boolean; noDailyStandingLimits?: boolean; noArgonCrystalDecay?: boolean; + noMasteryRankUpCooldown?: boolean; noVendorPurchaseLimits?: boolean; instantResourceExtractorDrones?: boolean; noDojoRoomBuildStage?: boolean; diff --git a/static/webui/index.html b/static/webui/index.html index 74ea23d6..6468d53a 100644 --- a/static/webui/index.html +++ b/static/webui/index.html @@ -592,6 +592,10 @@ +
+ + +
diff --git a/static/webui/translations/de.js b/static/webui/translations/de.js index ba6a405a..49fcb1cd 100644 --- a/static/webui/translations/de.js +++ b/static/webui/translations/de.js @@ -132,6 +132,7 @@ dict = { cheats_unlockArcanesEverywhere: `Arkana-Adapter überall`, cheats_noDailyStandingLimits: `Kein tägliches Ansehenslimit`, cheats_noArgonCrystalDecay: `Argon-Kristalle verschwinden niemals`, + cheats_noMasteryRankUpCooldown: `[UNTRANSLATED] No Mastery Rank Up Cooldown`, cheats_noVendorPurchaseLimits: `Keine Kaufbeschränkungen bei Händlern`, cheats_instantResourceExtractorDrones: `Sofortige Ressourcen-Extraktor-Drohnen`, cheats_noDojoRoomBuildStage: `Kein Dojo-Raum-Bauvorgang`, diff --git a/static/webui/translations/en.js b/static/webui/translations/en.js index ba1e406c..798c69db 100644 --- a/static/webui/translations/en.js +++ b/static/webui/translations/en.js @@ -131,6 +131,7 @@ dict = { cheats_unlockArcanesEverywhere: `Arcane Adapters Everywhere`, cheats_noDailyStandingLimits: `No Daily Standing Limits`, cheats_noArgonCrystalDecay: `No Argon Crystal Decay`, + cheats_noMasteryRankUpCooldown: `No Mastery Rank Up Cooldown`, cheats_noVendorPurchaseLimits: `No Vendor Purchase Limits`, cheats_instantResourceExtractorDrones: `Instant Resource Extractor Drones`, cheats_noDojoRoomBuildStage: `No Dojo Room Build Stage`, diff --git a/static/webui/translations/fr.js b/static/webui/translations/fr.js index 9e307117..eb635c5a 100644 --- a/static/webui/translations/fr.js +++ b/static/webui/translations/fr.js @@ -132,6 +132,7 @@ dict = { cheats_unlockArcanesEverywhere: `Adaptateur d'Arcanes partout`, cheats_noDailyStandingLimits: `Pas de limite de réputation journalière`, cheats_noArgonCrystalDecay: `[UNTRANSLATED] No Argon Crystal Decay`, + cheats_noMasteryRankUpCooldown: `[UNTRANSLATED] No Mastery Rank Up Cooldown`, cheats_noVendorPurchaseLimits: `[UNTRANSLATED] No Vendor Purchase Limits`, cheats_instantResourceExtractorDrones: `Ressources de drone d'extraction instantannées`, cheats_noDojoRoomBuildStage: `No Dojo Room Build Stage`, diff --git a/static/webui/translations/ru.js b/static/webui/translations/ru.js index 294b526e..893a864d 100644 --- a/static/webui/translations/ru.js +++ b/static/webui/translations/ru.js @@ -132,6 +132,7 @@ dict = { cheats_unlockArcanesEverywhere: `Адаптеры для мистификаторов везде`, cheats_noDailyStandingLimits: `Без ежедневных ограничений репутации`, cheats_noArgonCrystalDecay: `Без распада аргоновых кристаллов`, + cheats_noMasteryRankUpCooldown: `[UNTRANSLATED] No Mastery Rank Up Cooldown`, cheats_noVendorPurchaseLimits: `Отсутствие лимитов на покупки у вендоров`, cheats_instantResourceExtractorDrones: `Мгновенные Экстракторы Ресурсов`, cheats_noDojoRoomBuildStage: `Мгновенное Строительтво Комнат Додзё`, diff --git a/static/webui/translations/zh.js b/static/webui/translations/zh.js index 5ec64622..29890fd0 100644 --- a/static/webui/translations/zh.js +++ b/static/webui/translations/zh.js @@ -132,6 +132,7 @@ dict = { cheats_unlockArcanesEverywhere: `全物品自带赋能适配器`, cheats_noDailyStandingLimits: `无每日声望限制`, cheats_noArgonCrystalDecay: `[UNTRANSLATED] No Argon Crystal Decay`, + cheats_noMasteryRankUpCooldown: `[UNTRANSLATED] No Mastery Rank Up Cooldown`, cheats_noVendorPurchaseLimits: `[UNTRANSLATED] No Vendor Purchase Limits`, cheats_instantResourceExtractorDrones: `即时资源采集无人机`, cheats_noDojoRoomBuildStage: `无视道场房间建造阶段`,