valence
valence copied to clipboard
Anvil file format support
In a separate valence_anvil
crate at the root of the repo, support for anvil should be implemented (Both serialization and deserialization).
I've implemented a partial anvil deserializer before, but... I can't find it. Here are some things I would expect the library to have:
- Parallelization through rayon. In my deserializer I parallelized over each region.
- Support for both encoding and decoding.
- Chunk data saved to
UnloadedChunk
. - Lazy loading so we don't have to load the whole world into memory at once.
Supporting saves made with older version of the game is probably out of scope. No need to reimplement data fixer upper.
https://github.com/owengage/fastnbt has fastanvil for anvil files. Maybe that could help.
I would like to help with this 😃
The approach described here has deviated significantly from what is now planned in #288.