Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WSSAnvil Revamp for multiple versions #5493

Open
wants to merge 19 commits into
base: master
Choose a base branch
from

Conversation

12xx12
Copy link
Member

@12xx12 12xx12 commented Apr 11, 2023

Goal

This PR enables us to support different versions of Minecraft save data. Since the vanilla encodes this is a Data Version variable, we always can query the save file for this. Until now, the loading is not very organized and mostly up to date with 1.12.

What i did

  • added enum for data version
  • added parsing
  • added (de)serializer for enums
  • moved actual deserialization to extra classes
  • new structure is similar to cProtocol and descendants
  • everything is serialised with the data version 1.12
  • Add storing for other versions (1.9-1.12)

Todo

  • Check if the implementation matches 1.8; if not, move to other class. See the methods of cBoat and cEndCrystal in 1.9

Future

  • Add support for DataVersion in cNBTChunkSerializer

- added enum for data version
- added parsing
- added (de)serializer for enums
- moved actual deseriliazation to extra classes
- new structure is similar to cProtocol and descendants
@12xx12
Copy link
Member Author

12xx12 commented May 23, 2023

I broke something. The .mca files are 4GB :o

@12xx12
Copy link
Member Author

12xx12 commented Sep 24, 2023

I am trying to finish this PR next.

@12xx12 12xx12 marked this pull request as draft September 24, 2023 21:14
@12xx12 12xx12 self-assigned this Sep 25, 2023
@12xx12 12xx12 marked this pull request as ready for review September 26, 2023 18:43
@12xx12 12xx12 requested a review from tigerw September 26, 2023 18:49
@bearbin bearbin self-requested a review September 26, 2023 22:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant