* chore(bedrock): Update most of the packets to mirror the official docs
more closely.
* Fix typo
* Fix CCreativeContent
* Undo unrelated `registry.rs` change
* Update WIT to merged PR
---------
Signed-off-by: Demetrius Kanios <demetrius@kanios.net>
Implements the vanilla /debug start and /debug stop commands (tracked in #15):
- /debug start opens one server-wide tick profiling session and rejects duplicate starts.
- /debug stop reports elapsed seconds, processed ticks, and average TPS, then returns the floored average TPS.
- Profiling state handles tick counter wraparound and can be restarted after a completed session.
- Registers minecraft:command.debug at operator permission level 3 and uses the existing Java and Bedrock translation keys.
/debug function is intentionally out of scope because Pumpkin does not yet have the required function runtime.
* fix(bedrock): restore saved player position
* fix(bedrock): offset initial player position
---------
Co-authored-by: Zoltán Virágh <zoltan.viragh@cloudtalk.io>
`AnvilLevelInfo::read_world_info` validated the version tags and then returned
`LevelData::default(Seed(0))`, so level name, difficulty, spawn, world border
and data packs were discarded on every start, and the writer emitted only
`DataVersion`, `version` and `LastPlayed`, truncating the rest on save. A world
whose seed lives in level.dat's legacy `Data.WorldGenSettings` compound, as
converters such as Chunker emit, therefore loaded with seed 0 and generated
foreign terrain into its existing region files.
level.dat is now read and written tag by tag through pumpkin-nbt, every field
falling back to its vanilla default, so a missing optional tag such as
`Version.Series` no longer costs the whole file. Saving merges into the existing
`Data` compound, so tags Pumpkin does not model survive. A world with no seed
in either file aborts startup instead of silently regenerating, and the seed is
mirrored into level.dat, the only world file that is backed up. Version tags are
re-stamped with the current constants on save so level.dat stays consistent with
the chunks Pumpkin writes.