v1.33.0
FEAT
New !rollmenu admin command — a SwiftlyS2 menu-based configuration UI:
- Random Rounds on/off toggle (routed through
ToggleRandomRoundsso the existing broadcast announcement still fires) - Modifiers per player submenu with Min/Max sliders, clamped against each other so the pair can never be inverted
- Enable / disable modifiers submenu with one toggle per registered modifier, reflecting live active state; a toggle blocked by an incompatibility snaps back and reports why
- Re-roll this round / Remove all active modifiers buttons
This restores runtime control over MinRandomRounds/MaxRandomRounds, which became config-only in v1.31.0. Menu changes are deliberately runtime-only (no write-back to config.jsonc), stated in the menu itself.
Menus are used here and not for the reveal/spin on purpose: a menu renders into the same panel via the same game event and unlocks no extra styling — it only adds input capture, which is right for a settings screen and wrong for a transient banner (it would hijack movement keys mid-round). Menu text also caps at
fontSize-xl(32px) vs the 64px reachable from raw HTML.