Commit Graph
6 Commits
Author SHA1 Message Date
modzuozhi 801deb701a Fix singleplayer disconnect on ESC pause: freeze dimension loops
- New client mixin MixinMinecraftPauseDetector: on each Minecraft.runTick, detect integrated-server pause and freeze/unfreeze all dimension loops via DimThreadCore.setPaused, so no worker writes LevelChunk while the main thread is saving/pausing. Fixes reproducible disconnect (packet decode IndexOutOfBounds on ClientboundLevelChunkWithLight) ~0.5s after opening the pause menu.

- LevelTickLoop: add pause()/resume() (cancel next tick, stop self-rescheduling, re-schedule on resume) plus a paused guard at run() entry. Resilient to RejectedExecutionException when the master pool is already shut down.

- ServerManager.setPaused: pause all loops, then wait up to 5s for the in-flight tick to fully settle before returning.

- Keep existing work: TE whitelist command (/dimensionalripper tewhitelist), shard drop counters (entity/TE/chunk-env), POI lock optimization.
2026-09-12 00:44:23 +08:00
modzuozhi 3b9320d1e0 Update README: document sharding command and new optimizations 2026-09-09 22:22:43 +08:00
xxdd001 837a6497e4 Add incompatibility warning for multithreading/cross-dimension mods 2026-08-26 21:19:56 +08:00
xxdd001 ce6532b644 Unify license to MIT 2026-08-26 21:16:34 +08:00
xxdd001 d14a892217 Add AI-generated disclosure to README 2026-08-26 21:13:13 +08:00
xxdd001 d4f1914c24 Add README with features and usage 2026-08-26 21:06:33 +08:00