返回提交历史
Modified
Dockerfile
+1
-0
Modified
config.json.example
+1
-0
Modified
docker-compose.yml
+1
-0
Modified
src/controllers/api/activateRandomModController.ts
+9
-2
Modified
src/services/configService.ts
+1
-0
Modified
static/webui/index.html
+4
-0
Modified
static/webui/translations/de.js
+1
-0
Modified
static/webui/translations/en.js
+1
-0
Modified
static/webui/translations/es.js
+1
-0
Modified
static/webui/translations/fr.js
+1
-0
Modified
static/webui/translations/ru.js
+1
-0
Modified
static/webui/translations/zh.js
+1
-0
XFEstudio/SpaceNinjaServer
feat: instantFinishRivenChallenge cheat (#2087)
Closes #1952 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2087 Co-authored-by: Animan8000 <animan8000@noreply.localhost> Co-committed-by: Animan8000 <animan8000@noreply.localhost>
727f6837
代码差异
12 个文件
+23
-2
@@ -32,6 +32,7 @@ ENV APP_NO_MASTERY_RANK_UP_COOLDOWN=false
32
32
ENV APP_NO_VENDOR_PURCHASE_LIMITS=true
33
33
ENV APP_NO_DEATH_MARKS=false
34
34
ENV APP_NO_KIM_COOLDOWNS=false
35
ENV APP_INSTANT_FINISH_RIVEN_CHALLENGE=false
35
36
ENV APP_INSTANT_RESOURCE_EXTRACTOR_DRONES=false
36
37
ENV APP_NO_RESOURCE_EXTRACTOR_DRONES_DAMAGE=false
37
38
ENV APP_SKIP_CLAN_KEY_CRAFTING=false
@@ -38,6 +38,7 @@
38
38
"noVendorPurchaseLimits": true,
39
39
"noDeathMarks": false,
40
40
"noKimCooldowns": false,
41
"instantFinishRivenChallenge": false,
41
42
"instantResourceExtractorDrones": false,
42
43
"noResourceExtractorDronesDamage": false,
43
44
"skipClanKeyCrafting": false,
@@ -39,6 +39,7 @@ services:
39
39
# APP_NO_VENDOR_PURCHASE_LIMITS: true
40
40
# APP_NO_DEATH_MARKS: false
41
41
# APP_NO_KIM_COOLDOWNS: false
42
# APP_INSTANT_FINISH_RIVEN_CHALLENGE: false
42
43
# APP_INSTANT_RESOURCE_EXTRACTOR_DRONES: false
43
44
# APP_NO_RESOURCE_EXTRACTOR_DRONES_DAMAGE: false
44
45
# APP_SKIP_CLAN_KEY_CRAFTING: false
@@ -1,11 +1,16 @@
1
1
import { toOid } from "@/src/helpers/inventoryHelpers";
2
import { createVeiledRivenFingerprint, rivenRawToRealWeighted } from "@/src/helpers/rivenHelper";
2
import {
3
createVeiledRivenFingerprint,
4
createUnveiledRivenFingerprint,
5
rivenRawToRealWeighted
6
} from "@/src/helpers/rivenHelper";
3
7
import { getJSONfromString } from "@/src/helpers/stringHelpers";
4
8
import { addMods, getInventory } from "@/src/services/inventoryService";
5
9
import { getAccountIdForRequest } from "@/src/services/loginService";
6
10
import { getRandomElement } from "@/src/services/rngService";
7
11
import { RequestHandler } from "express";
8
12
import { ExportUpgrades } from "warframe-public-export-plus";
13
import { config } from "@/src/services/configService";
9
14
10
15
export const activateRandomModController: RequestHandler = async (req, res) => {
11
16
const accountId = await getAccountIdForRequest(req);
@@ -18,7 +23,9 @@ export const activateRandomModController: RequestHandler = async (req, res) => {
18
23
}
19
24
]);
20
25
const rivenType = getRandomElement(rivenRawToRealWeighted[request.ItemType])!;
21
const fingerprint = createVeiledRivenFingerprint(ExportUpgrades[rivenType]);
26
const fingerprint = config.instantFinishRivenChallenge
27
? createUnveiledRivenFingerprint(ExportUpgrades[rivenType])
28
: createVeiledRivenFingerprint(ExportUpgrades[rivenType]);
22
29
const upgradeIndex =
23
30
inventory.Upgrades.push({
24
31
ItemType: rivenType,
@@ -44,6 +44,7 @@ interface IConfig {
44
44
noVendorPurchaseLimits?: boolean;
45
45
noDeathMarks?: boolean;
46
46
noKimCooldowns?: boolean;
47
instantFinishRivenChallenge?: boolean;
47
48
instantResourceExtractorDrones?: boolean;
48
49
noResourceExtractorDronesDamage?: boolean;
49
50
skipClanKeyCrafting?: boolean;
@@ -674,6 +674,10 @@
674
674
<input class="form-check-input" type="checkbox" id="noKimCooldowns" />
675
675
<label class="form-check-label" for="noKimCooldowns" data-loc="cheats_noKimCooldowns"></label>
676
676
</div>
677
<div class="form-check">
678
<input class="form-check-input" type="checkbox" id="instantFinishRivenChallenge" />
679
<label class="form-check-label" for="instantFinishRivenChallenge" data-loc="cheats_instantFinishRivenChallenge"></label>
680
</div>
677
681
<div class="form-check">
678
682
<input class="form-check-input" type="checkbox" id="instantResourceExtractorDrones" />
679
683
<label class="form-check-label" for="instantResourceExtractorDrones" data-loc="cheats_instantResourceExtractorDrones"></label>
@@ -151,6 +151,7 @@ dict = {
151
151
cheats_noVendorPurchaseLimits: `Keine Kaufbeschränkungen bei Händlern`,
152
152
cheats_noDeathMarks: `Keine Todesmarkierungen`,
153
153
cheats_noKimCooldowns: `Keine Wartezeit bei KIM`,
154
cheats_instantFinishRivenChallenge: `Riven-Mod Herausforderung sofort abschließen`,
154
155
cheats_instantResourceExtractorDrones: `Sofortige Ressourcen-Extraktor-Drohnen`,
155
156
cheats_noResourceExtractorDronesDamage: `Kein Schaden für Ressourcen-Extraktor-Drohnen`,
156
157
cheats_skipClanKeyCrafting: `Clan-Schlüsselherstellung überspringen`,
@@ -150,6 +150,7 @@ dict = {
150
150
cheats_noVendorPurchaseLimits: `No Vendor Purchase Limits`,
151
151
cheats_noDeathMarks: `No Death Marks`,
152
152
cheats_noKimCooldowns: `No KIM Cooldowns`,
153
cheats_instantFinishRivenChallenge: `Instant Finish Riven Challenge`,
153
154
cheats_instantResourceExtractorDrones: `Instant Resource Extractor Drones`,
154
155
cheats_noResourceExtractorDronesDamage: `No Resource Extractor Drones Damage`,
155
156
cheats_skipClanKeyCrafting: `Skip Clan Key Crafting`,
@@ -151,6 +151,7 @@ dict = {
151
151
cheats_noVendorPurchaseLimits: `Sin límite de compras de vendedores`,
152
152
cheats_noDeathMarks: `Sin marcas de muerte`,
153
153
cheats_noKimCooldowns: `Sin tiempo de espera para conversaciones KIM`,
154
cheats_instantFinishRivenChallenge: `[UNTRANSLATED] Instant Finish Riven Challenge`,
154
155
cheats_instantResourceExtractorDrones: `Drones de extracción de recursos instantáneos`,
155
156
cheats_noResourceExtractorDronesDamage: `Sin daño a los drones extractores de recursos`,
156
157
cheats_skipClanKeyCrafting: `Saltar la fabricación de la llave de clan`,
@@ -151,6 +151,7 @@ dict = {
151
151
cheats_noVendorPurchaseLimits: `Aucune limite d'achat chez les PNJ`,
152
152
cheats_noDeathMarks: `Aucune marque d'assassin`,
153
153
cheats_noKimCooldowns: `Aucun cooldown sur le KIM`,
154
cheats_instantFinishRivenChallenge: `[UNTRANSLATED] Instant Finish Riven Challenge`,
154
155
cheats_instantResourceExtractorDrones: `Ressources de drones d'extraction instantannées`,
155
156
cheats_noResourceExtractorDronesDamage: `Aucun dégâts aux drones d'extraction de resources`,
156
157
cheats_skipClanKeyCrafting: `[UNTRANSLATED] Skip Clan Key Crafting`,
@@ -151,6 +151,7 @@ dict = {
151
151
cheats_noVendorPurchaseLimits: `Отсутствие лимитов на покупки у вендоров`,
152
152
cheats_noDeathMarks: `Без меток сметри`,
153
153
cheats_noKimCooldowns: `Чаты KIM без кулдауна`,
154
cheats_instantFinishRivenChallenge: `[UNTRANSLATED] Instant Finish Riven Challenge`,
154
155
cheats_instantResourceExtractorDrones: `Мгновенные Экстракторы Ресурсов`,
155
156
cheats_noResourceExtractorDronesDamage: `Без урона по дронам-сборщикам`,
156
157
cheats_skipClanKeyCrafting: `Пропустить крафт кланового ключа`,
@@ -151,6 +151,7 @@ dict = {
151
151
cheats_noVendorPurchaseLimits: `[UNTRANSLATED] No Vendor Purchase Limits`,
152
152
cheats_noDeathMarks: `[UNTRANSLATED] No Death Marks`,
153
153
cheats_noKimCooldowns: `[UNTRANSLATED] No KIM Cooldowns`,
154
cheats_instantFinishRivenChallenge: `[UNTRANSLATED] Instant Finish Riven Challenge`,
154
155
cheats_instantResourceExtractorDrones: `即时资源采集无人机`,
155
156
cheats_noResourceExtractorDronesDamage: `[UNTRANSLATED] No Resource Extractor Drones Damage`,
156
157
cheats_skipClanKeyCrafting: `[UNTRANSLATED] Skip Clan Key Crafting`,