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

Protocol generator #9

Draft
wants to merge 22 commits into
base: master
Choose a base branch
from
Draft

Protocol generator #9

wants to merge 22 commits into from

Conversation

vaIgarashi
Copy link
Member

@vaIgarashi vaIgarashi commented Feb 6, 2021

Motivation

There are over 150 packets in Minecraft. The main disappointment in completing this crate is the implementation of game state packets . Things are getting much worse if we want to support multiple versions of Minecraft. To improve this process we are inroducing packets generation.

Implementation details

  • Backend - Parses minecraft-data from json to structures.
  • Frontend - Generates rust files.
  • Transformers - Transforms backend data to frontend data.
  • Mappings - Special mappings to rename packets and change fields type to custom.
  • Templates - Helper templates for code generation.

@vaIgarashi
Copy link
Member Author

After writing this draft i realized that we should implement thing differently. I have implemented protodef parser as separate crate. Currently i am working on packet derive to add missing features. I hope this big milestone soon will be done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant