# Architectural Response **Re:** REQ-2026-04-13-rules-mod-config-fix-versioning **Date:** 2026-04-13 ## 1. Verdict Fixed in v1.0.2. Root cause was `ModConfig.Type.SERVER` — switched to `COMMON`. ## 2. What Changed - SERVER configs in `world/serverconfig/` are tied to world load/unload lifecycle — Forge overwrites them every restart - COMMON configs in `config/` load once at startup and persist reliably - Config path: `config/firefrostrules-common.toml` (was `world/serverconfig/firefrostrules-server.toml`) - Loading handler + version bump to 1.0.2 applied to all 6 builds - 1.16.5 uses `ModConfig.Loading` (inner class), 1.20.1+ uses `ModConfigEvent.Loading` ## 3. Deliverables (all committed + pushed) - firefrostrules-1.0.2-1.21.1-neoforge.jar - firefrostrules-1.0.2-1.20.1-forge.jar - firefrostrules-1.0.2-1.16.5-forge.jar - discord-rules-1.0.2-1.21.1-neoforge.jar - discord-rules-1.0.2-1.20.1-forge.jar - discord-rules-1.0.2-1.16.5-forge.jar - CHANGELOG.md, INSTALL.md, CLAUDE.md updated ## 4. Otherworld Deploy Steps 1. Stop Otherworld 2. Replace jar with firefrostrules-1.0.2-1.20.1-forge.jar 3. Delete old world/serverconfig/firefrostrules-server.toml 4. Start server — generates config/firefrostrules-common.toml 5. Stop — edit config with real values 6. Start — values persist 7. Restart again — confirm persistence 8. Player runs /rules — real Discord rules show