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

Convert save file format to use new minification #154

Open
ChrisNeedham24 opened this issue Sep 22, 2024 · 1 comment
Open

Convert save file format to use new minification #154

ChrisNeedham24 opened this issue Sep 22, 2024 · 1 comment
Labels
refactor No new functionality

Comments

@ChrisNeedham24
Copy link
Owner

  • In MCR-117 Added multiplayer. #150, for multiplayer, minification of game models was required in order to send them as packets to and from the game server.
  • In the process of doing this, a way to minify quads was found that is far better than the existing save file format.
  • Currently quads take up something north of 80% of actual save file content, so it would be good to reduce this.
  • However, we would have to make sure that the old format is still supported, though that should be easy to do in save_migrator.py.
  • It might be worth considering replacing the whole save file format with its minified equivalent as well, though that isn't strictly required for this issue to be resolved.
@ChrisNeedham24 ChrisNeedham24 added the refactor No new functionality label Sep 22, 2024
@ChrisNeedham24
Copy link
Owner Author

Acceptance Criteria:

  • When saving games in save_game() in game_save_manager.py, each quad should be minified using the minify_quad() function from minifier.py before persisting the save's data.
  • Loading games must still work using the new format.
  • Update migrate_quad() in save_migrator.py to initially use inflate_quad() from minifier.py, and then fallback to the original implementation.
  • Consider whether it would be worth storing the game's players and heathens in their minified forms as well, and implement if so, following the same process as the above points.

@ChrisNeedham24 ChrisNeedham24 added the hacktoberfest Issues that are appropriate for new contributors label Sep 30, 2024
@ChrisNeedham24 ChrisNeedham24 removed the hacktoberfest Issues that are appropriate for new contributors label Nov 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactor No new functionality
Projects
None yet
Development

No branches or pull requests

1 participant