1.4 KiB
1.4 KiB
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(wasworld/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+ usesModConfigEvent.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
- Stop Otherworld
- Replace jar with firefrostrules-1.0.2-1.20.1-forge.jar
- Delete old world/serverconfig/firefrostrules-server.toml
- Start server — generates config/firefrostrules-common.toml
- Stop — edit config with real values
- Start — values persist
- Restart again — confirm persistence
- Player runs /rules — real Discord rules show