XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFESpaceNinjaServer

chore(alerts): Dagath Alerts 2026 (#3341)

Re #2842 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3341 Reviewed-by: Sainan <63328889+sainan@users.noreply.github.com> Co-authored-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Co-committed-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>

eb439146
AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>
提交于

代码差异

11 个文件 +147 -21
Modified config-vanilla.json +4 -0
@@ -58,6 +58,10 @@
58 58 "voidCorruption2025Week2": false,
59 59 "voidCorruption2025Week3": false,
60 60 "voidCorruption2025Week4": false,
61 "dagathAlerts2026Week1": false,
62 "dagathAlerts2026Week2": false,
63 "dagathAlerts2026Week3": false,
64 "dagathAlerts2026Week4": false,
61 65 "qtccAlerts": false,
62 66 "galleonOfGhouls": 0,
63 67 "ghoulEmergenceOverride": null,
Modified src/services/configService.ts +4 -0
@@ -70,6 +70,10 @@ export interface IConfig {
70 70 voidCorruption2025Week2?: boolean;
71 71 voidCorruption2025Week3?: boolean;
72 72 voidCorruption2025Week4?: boolean;
73 dagathAlerts2026Week1?: boolean;
74 dagathAlerts2026Week2?: boolean;
75 dagathAlerts2026Week3?: boolean;
76 dagathAlerts2026Week4?: boolean;
73 77 qtccAlerts?: boolean;
74 78 galleonOfGhouls?: number;
75 79 ghoulEmergenceOverride?: boolean;
Modified src/services/worldStateService.ts +90 -0
@@ -202,6 +202,96 @@ const configAlerts: Record<string, IAlert> = {
202 202 minEnemyLevel: 40,
203 203 maxEnemyLevel: 45
204 204 }
205 },
206 dagathAlerts2026Week1: {
207 _id: { $oid: "6949862e3f3f35491e02232c" },
208 Activation: { $date: { $numberLong: "1769022000000" } },
209 Expiry: { $date: { $numberLong: "2000000000000" } },
210 MissionInfo: {
211 location: "SolNode147",
212 missionType: "MT_TERRITORY",
213 faction: "FC_GRINEER",
214 difficulty: 1,
215 missionReward: {
216 credits: 10000,
217 items: ["/Lotus/StoreItems/Types/Recipes/WarframeRecipes/DagathChassisComponent"]
218 },
219 levelOverride: "/Lotus/Levels/Proc/Grineer/GrineerShipyardsInterception",
220 enemySpec: "/Lotus/Types/Game/EnemySpecs/GrineerShipyardsDefenseA",
221 minEnemyLevel: 25,
222 maxEnemyLevel: 35,
223 descText: "/Lotus/Language/Alerts/LotusGiftDesc"
224 },
225 Tag: "LotusGift",
226 ForceUnlock: true
227 },
228 dagathAlerts2026Week2: {
229 _id: { $oid: "6949863a548d83b650011de8" },
230 Activation: { $date: { $numberLong: "1769626800000" } },
231 Expiry: { $date: { $numberLong: "2000000000000" } },
232 MissionInfo: {
233 location: "SolNode404",
234 missionType: "MT_SABOTAGE",
235 faction: "FC_OROKIN",
236 difficulty: 1,
237 missionReward: {
238 credits: 10000,
239 items: ["/Lotus/StoreItems/Types/Recipes/WarframeRecipes/DagathHelmetComponent"]
240 },
241 levelOverride: "/Lotus/Levels/Proc/Orokin/OrokinTowerSabotageForest",
242 enemySpec: "/Lotus/Types/Game/EnemySpecs/OrokinSquadOne",
243 extraEnemySpec: "/Lotus/Types/Game/EnemySpecs/OrokinSabotageGrineerForest",
244 minEnemyLevel: 25,
245 maxEnemyLevel: 35,
246 vipAgent: "/Lotus/Types/Enemies/Grineer/Vip/JetpackSisters/JetpackSisters",
247 descText: "/Lotus/Language/Alerts/LotusGiftDesc"
248 },
249 Tag: "LotusGift",
250 ForceUnlock: true
251 },
252 dagathAlerts2026Week3: {
253 _id: { $oid: "69498642a0836c98e10f5e34" },
254 Activation: { $date: { $numberLong: "1770231600000" } },
255 Expiry: { $date: { $numberLong: "2000000000000" } },
256 MissionInfo: {
257 location: "SolNode100",
258 missionType: "MT_SURVIVAL",
259 faction: "FC_CORPUS",
260 difficulty: 1,
261 missionReward: {
262 credits: 10000,
263 items: ["/Lotus/StoreItems/Types/Recipes/WarframeRecipes/DagathSystemsComponent"]
264 },
265 levelOverride: "/Lotus/Levels/Proc/Corpus/CorpusGasCitySurvival",
266 enemySpec: "/Lotus/Types/Game/EnemySpecs/CorpusGasSurvival",
267 minEnemyLevel: 25,
268 maxEnemyLevel: 35,
269 descText: "/Lotus/Language/Alerts/LotusGiftDesc"
270 },
271 Tag: "LotusGift",
272 ForceUnlock: true
273 },
274 dagathAlerts2026Week4: {
275 _id: { $oid: "69498623a7342ab1500cc99b" },
276 Activation: { $date: { $numberLong: "1768417200000" } },
277 Expiry: { $date: { $numberLong: "2000000000000" } },
278 MissionInfo: {
279 location: "SolNode103",
280 missionType: "MT_EXTERMINATION",
281 faction: "FC_GRINEER",
282 difficulty: 1,
283 missionReward: {
284 credits: 10000,
285 items: ["/Lotus/StoreItems/Types/Recipes/WarframeRecipes/DagathBlueprint"]
286 },
287 levelOverride: "/Lotus/Levels/Proc/Grineer/GrineerAsteroidExterminate",
288 enemySpec: "/Lotus/Types/Game/EnemySpecs/GrineerExterminateBlades",
289 minEnemyLevel: 25,
290 maxEnemyLevel: 35,
291 descText: "/Lotus/Language/Alerts/LotusGiftDesc"
292 },
293 Tag: "LotusGift",
294 ForceUnlock: true
205 295 }
206 296 };
207 297
Modified static/webui/index.html +42 -21
@@ -1291,6 +1291,48 @@
1291 1291 <input class="form-check-input" type="checkbox" id="worldState.qtccAlerts" />
1292 1292 <label class="form-check-label" for="worldState.qtccAlerts" data-loc="worldState_qtccAlerts"></label>
1293 1293 </div>
1294 <div class="mt-2">
1295 <label class="form-label" data-loc="worldState_voidCorruption" data-loc-replace="2025"></label>
1296 <div class="d-flex flex-wrap gap-3">
1297 <div class="form-check">
1298 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week1" />
1299 <label class="form-check-label" for="worldState.voidCorruption2025Week1" data-loc="worldState_week" data-loc-replace="1"></label>
1300 </div>
1301 <div class="form-check">
1302 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week2" />
1303 <label class="form-check-label" for="worldState.voidCorruption2025Week2" data-loc="worldState_week" data-loc-replace="2"></label>
1304 </div>
1305 <div class="form-check">
1306 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week3" />
1307 <label class="form-check-label" for="worldState.voidCorruption2025Week3" data-loc="worldState_week" data-loc-replace="3"></label>
1308 </div>
1309 <div class="form-check">
1310 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week4" />
1311 <label class="form-check-label" for="worldState.voidCorruption2025Week4" data-loc="worldState_week" data-loc-replace="4"></label>
1312 </div>
1313 </div>
1314 </div>
1315 <div class="mt-2">
1316 <label class="form-label" data-loc="worldState_dagathAlerts" data-loc-replace="2026"></label>
1317 <div class="d-flex flex-wrap gap-3">
1318 <div class="form-check">
1319 <input class="form-check-input" type="checkbox" id="worldState.dagathAlerts2026Week1" />
1320 <label class="form-check-label" for="worldState.dagathAlerts2026Week1" data-loc="worldState_week" data-loc-replace="1"></label>
1321 </div>
1322 <div class="form-check">
1323 <input class="form-check-input" type="checkbox" id="worldState.dagathAlerts2026Week2" />
1324 <label class="form-check-label" for="worldState.dagathAlerts2026Week2" data-loc="worldState_week" data-loc-replace="2"></label>
1325 </div>
1326 <div class="form-check">
1327 <input class="form-check-input" type="checkbox" id="worldState.dagathAlerts2026Week3" />
1328 <label class="form-check-label" for="worldState.dagathAlerts2026Week3" data-loc="worldState_week" data-loc-replace="3"></label>
1329 </div>
1330 <div class="form-check">
1331 <input class="form-check-input" type="checkbox" id="worldState.dagathAlerts2026Week4" />
1332 <label class="form-check-label" for="worldState.dagathAlerts2026Week4" data-loc="worldState_week" data-loc-replace="4"></label>
1333 </div>
1334 </div>
1335 </div>
1294 1336 <div class="form-group mt-2">
1295 1337 <label class="form-label" for="worldState.evilBaroStage" data-loc="worldState_evilBaroStage"></label>
1296 1338 <select class="form-control" id="worldState.evilBaroStage" data-default="0">
@@ -1353,27 +1395,6 @@
1353 1395 </select>
1354 1396 </div>
1355 1397 </div>
1356 <div class="mt-2">
1357 <label class="form-label" data-loc="worldState_voidCorruption" data-loc-replace="2025"></label>
1358 <div class="d-flex flex-wrap gap-3">
1359 <div class="form-check">
1360 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week1" />
1361 <label class="form-check-label" for="worldState.voidCorruption2025Week1" data-loc="worldState_week" data-loc-replace="1"></label>
1362 </div>
1363 <div class="form-check">
1364 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week2" />
1365 <label class="form-check-label" for="worldState.voidCorruption2025Week2" data-loc="worldState_week" data-loc-replace="2"></label>
1366 </div>
1367 <div class="form-check">
1368 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week3" />
1369 <label class="form-check-label" for="worldState.voidCorruption2025Week3" data-loc="worldState_week" data-loc-replace="3"></label>
1370 </div>
1371 <div class="form-check">
1372 <input class="form-check-input" type="checkbox" id="worldState.voidCorruption2025Week4" />
1373 <label class="form-check-label" for="worldState.voidCorruption2025Week4" data-loc="worldState_week" data-loc-replace="4"></label>
1374 </div>
1375 </div>
1376 </div>
1377 1398 <div class="form-group mt-2">
1378 1399 <label class="form-label" for="worldState.galleonOfGhouls" data-loc="worldState_galleonOfGhouls"></label>
1379 1400 <abbr data-loc-inc="worldState_wolfHunt|worldState_anniversary|worldState_orphixVenom"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><path d="M320 576C461.4 576 576 461.4 576 320C576 178.6 461.4 64 320 64C178.6 64 64 178.6 64 320C64 461.4 178.6 576 320 576zM320 200C333.3 200 344 210.7 344 224L344 336C344 349.3 333.3 360 320 360C306.7 360 296 349.3 296 336L296 224C296 210.7 306.7 200 320 200zM293.3 416C292.7 406.1 297.6 396.7 306.1 391.5C314.6 386.4 325.3 386.4 333.8 391.5C342.3 396.7 347.2 406.1 346.6 416C347.2 425.9 342.3 435.3 333.8 440.5C325.3 445.6 314.6 445.6 306.1 440.5C297.6 435.3 292.7 425.9 293.3 416z"/></svg></abbr>
Modified static/webui/translations/de.js +1 -0
@@ -307,6 +307,7 @@ dict = {
307 307 worldState_dogDaysRewards: `Hitzefrei-Belohnungen`,
308 308 worldState_wolfHunt: `Wolfsjagd`,
309 309 worldState_voidCorruption: `Void-Korruption (|VAL|)`,
310 worldState_dagathAlerts: `Dagath Alarmierungen (|VAL|)`,
310 311 worldState_scarletSpear: `Scharlachroter Speer`,
311 312 worldState_orphixVenom: `Orphix Gift`,
312 313 worldState_bloodOfPerita: `Blut von Perita`,
Modified static/webui/translations/en.js +1 -0
@@ -306,6 +306,7 @@ dict = {
306 306 worldState_dogDaysRewards: `Dog Days Rewards`,
307 307 worldState_wolfHunt: `Wolf Hunt`,
308 308 worldState_voidCorruption: `Void Corruption (|VAL|)`,
309 worldState_dagathAlerts: `Dagath Alerts (|VAL|)`,
309 310 worldState_scarletSpear: `Scarlet Spear`,
310 311 worldState_orphixVenom: `Orphix Venom`,
311 312 worldState_bloodOfPerita: `Blood of Perita`,
Modified static/webui/translations/es.js +1 -0
@@ -307,6 +307,7 @@ dict = {
307 307 worldState_dogDaysRewards: `Recompensas de Canícula`,
308 308 worldState_wolfHunt: `Cacería del Lobo`,
309 309 worldState_voidCorruption: `Corrupción del Vacío (|VAL|)`,
310 worldState_dagathAlerts: `Alertas de Dagath (|VAL|)`,
310 311 worldState_scarletSpear: `Lanza Escarlata`,
311 312 worldState_orphixVenom: `Veneno de Orphix`,
312 313 worldState_bloodOfPerita: `Sangre de Perita`,
Modified static/webui/translations/fr.js +1 -0
@@ -307,6 +307,7 @@ dict = {
307 307 worldState_dogDaysRewards: `Récompenses de la Bataille d'Eau`,
308 308 worldState_wolfHunt: `Chasse au Loup`,
309 309 worldState_voidCorruption: `Corruption du Néant (|VAL|)`,
310 worldState_dagathAlerts: `Alertes Dagath (|VAL|)`,
310 311 worldState_scarletSpear: `Incursion Écarlate`,
311 312 worldState_orphixVenom: `Venin Orphix`,
312 313 worldState_bloodOfPerita: `Sang de Perita`,
Modified static/webui/translations/ru.js +1 -0
@@ -307,6 +307,7 @@ dict = {
307 307 worldState_dogDaysRewards: `Награды Знойных дней`,
308 308 worldState_wolfHunt: `Волчья Охота`,
309 309 worldState_voidCorruption: `Искажение Бездны (|VAL|)`,
310 worldState_dagathAlerts: `Сигналы Тревоги Дагас (|VAL|)`,
310 311 worldState_scarletSpear: `Алое Копьё`,
311 312 worldState_orphixVenom: `Яд Орфикса`,
312 313 worldState_bloodOfPerita: `Кровь Периты`,
Modified static/webui/translations/uk.js +1 -0
@@ -307,6 +307,7 @@ dict = {
307 307 worldState_dogDaysRewards: `Нагороди Спекотних днів`,
308 308 worldState_wolfHunt: `Полювання на Вовка`,
309 309 worldState_voidCorruption: `Викривлення Порожнечі (|VAL|)`,
310 worldState_dagathAlerts: `Виклики Даґат (|VAL|)`,
310 311 worldState_scarletSpear: `Багряний спис`,
311 312 worldState_orphixVenom: `Орфіксова отрута`,
312 313 worldState_bloodOfPerita: `Кров Періти`,
Modified static/webui/translations/zh.js +1 -0
@@ -307,6 +307,7 @@ dict = {
307 307 worldState_dogDaysRewards: `三伏天奖励设置`,
308 308 worldState_wolfHunt: `恶狼狩猎`,
309 309 worldState_voidCorruption: `虚空堕落 (|VAL|)`,
310 worldState_dagathAlerts: `Dagath 警报 (|VAL|)`,
310 311 worldState_scarletSpear: `猩红之矛`,
311 312 worldState_orphixVenom: `奥影之毒`,
312 313 worldState_bloodOfPerita: `佩里塔之血`,