PlayerSync/src
laforetbrut badc87c84e Fix backpack crash loss, ender chest restore, ReviveMe compat, effect sync
Backpack data loss on server crash:
- Periodic auto-save (every 5min) now includes backpack content snapshots.
  Previously backpacks were only saved on logout/shutdown — hard crashes
  (OOM, watchdog, kill -9) skipped both, losing all backpack changes.
- snapshotBackpackData captures NBT with .copy() on main thread.

Backpack ender chest restore mismatch:
- doBackPackRestore now scans ender chest in addition to main inventory.
  Save side already scanned ender chest, but restore didn't — backpacks
  in ender chest were saved to DB but never restored on join.

ReviveMe mod compatibility:
- Dead player kick check now uses health <= 0 instead of isDeadOrDying().
  ReviveMe puts players in a "downed" state (alive but isDeadOrDying=true)
  — previously these players were kicked on join.

Infinite effect filtering (phantom effects fix):
- Effects with infinite duration are now skipped during save. These come
  from ReviveMe (downed state effects with MAX_VALUE duration), beacons,
  and other mods. Syncing them across servers caused phantom effects.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 11:24:18 +02:00
..
main Fix backpack crash loss, ender chest restore, ReviveMe compat, effect sync 2026-04-15 11:24:18 +02:00