Add new public game modifiers 🙂 (#3500)

## Description:

Adds 5 new public game modifiers to the Special game mode modifier pool:

- **Ports Disabled** - disables port construction, focus on factories
- **Nukes Disabled** - disables atom bombs, hydrogen bombs, MIRVs,
missile silos and SAM launchers
- **SAMs Disabled** - disables SAM launchers (thats funny, you cant
protect against nukes, have to space out your stuff) (mutually exclusive
with nukes disabled)
- **1M Starting Gold** - gives all players 1M starting gold (was
requested by people, new chill tier alongside existing 5M and 25M)
- **4min Peace Time** - grants 4 minutes of PVP spawn immunity

All `PublicGameModifiers` boolean fields are now optional - inactive
modifiers are omitted from game JSON instead of being serialized as
`false` (stop bloating the JSON size)

I think we have enough modifiers now :) Good variety

## Please complete the following:

- [X] I have added screenshots for all UI updates
- [X] I process any text displayed to the user through translateText()
and I've added it to the en.json file
- [X] I have added relevant tests to the test directory
- [X] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced

## Please put your Discord username so you can be contacted if a bug or
regression is found:

FloPinguin
This commit is contained in:
FloPinguin
2026-03-24 20:57:08 +01:00
committed by GitHub
parent 6e67c2bf0d
commit cf0cf14a1f
5 changed files with 140 additions and 45 deletions
+9 -1
View File
@@ -500,7 +500,15 @@
"starting_gold_label": "Starting Gold",
"gold_multiplier": "x{amount} Gold Multiplier",
"disable_alliances": "Alliances Disabled",
"disable_alliances_label": "Alliances"
"disable_alliances_label": "Alliances",
"ports_disabled": "Ports Disabled",
"ports_disabled_label": "Ports",
"nukes_disabled": "Nukes Disabled",
"nukes_disabled_label": "Nukes",
"sams_disabled": "SAMs Disabled",
"sams_disabled_label": "SAMs",
"peace_time": "4min Peace",
"peace_time_label": "PVP Immunity"
},
"select_lang": {
"title": "Select Language"