twoolie / NBT

Python Parser/Writer for the NBT file format, and it's container the RegionFile.
MIT License
361 stars 74 forks source link

Policy on compatibility with old Minecraft versions #180

Open SupraSummus opened 10 months ago

SupraSummus commented 10 months ago

I'm interested in adding support for the modern 1.20.x Minecraft versions. However, I'm unsure about the policy regarding the support for new and old Minecraft versions. Should I be concerned about preserving interoperability with older Minecraft versions while working on this? Any guidance or suggestions would be greatly appreciated. Thanks.

This issue is somewhat related to #151

twoolie commented 10 months ago

Preserving compatibility is nice to have, but we shouldn't complicate everything to achieve it. I'm happy enough if we update the example worlds to newer formats, and people needing compatibility with old worlds can use an older version of the library.

SupraSummus commented 10 months ago

I dag around and read some about chunk format and it looks like we can't drop support for old formats. This is because data format of a chunk is not determined by the game version being played, but the version when it was last saved. So we can have some ancient chunks present in world on Minecraft 1.20.2.

Of course we can have a policy like "if you want to load your world migrate all chunks to the latest format". But I'm not sure if there is a tool for performing such a migration.