EndlessEasy
Makes BOMBANANA! endless mode more forgiving: bomb timer multiplier, extra tolerated mistakes, and an optional whitelist of allowed modules.Changelog
1.7.0
The available module names are now listed in the config description and the README, so a whitelist
can be written without guessing. The list is read from the game's own ModuleRegistry asset, and the
mod no longer takes it on faith: at startup it asks the registry about every name and logs how many
resolve, so a name that no longer exists is reported instead of failing silently later.
Chaos modules named explicitly in the whitelist are now accepted (the log says which they are) rather than being refused without explanation.
1.6.0
Replaced ForceCableOnly / CableModuleName with a general [Modules] EnabledModules whitelist of
the module types endless waves may use. It is empty by default, so endless keeps the game's
normal module pool unless you opt in.
Every configured name is validated against ModuleRegistry.Get (and rejected if IsChaosModule
says it is a chaos module) before anything is rewritten. Unknown names are reported and dropped, and
if nothing survives validation no rewriting happens at all — so a typo cannot turn a wave into
modules the game cannot spawn, which the previous auto-detected single name could not guarantee.
1.5.0
Verified ForceCableOnly in a live three-player run: a five-module endless wave came out entirely
wires. Cable-name resolution now validates each candidate through ModuleRegistry.Get(string)
instead of scanning the registry, and the registry scan itself is fixed — Registry<,> declares its
statics on the open generic type, which .NET reflection cannot see through a derived class.
1.3.0
Added [Modules] ForceCableOnly (one module type per wave) and CableModuleName.
Corrected OnlyApplyAsHost: the host is authoritative for the timer and strikes, so only the host
needs the mod. A non-modded client's lobby panel just shows a stale local number.
1.1.0
Added [Modules] DisableMorse, which forces the game's own allowMorse selector flag so the Morse
module is never offered.
1.0.0
BOMBANANA endless values verified in game: the timer goes from 2:30 to 3:45 at the default 1.5x.
Removed the OverrideMinPlayerCount testing knob after it was proven ineffective — the game re-pins
the player count every frame, and BOMBANANA! requires three players in every mode. Lobby start gates
are logged instead, so a blocked start is diagnosable.
0.2.0
Retargeted to EndlessModeConfig. The 0.1.0 approach wrote MissionData.Length / .Health, which
the endless mission's overridden GetLength() / GetHealth() ignore.
0.1.0
Initial release.
