bevy_minecraft 0.1.0

Minecraft servers using bevy
Documentation
  • Coverage
  • 100%
    1 out of 1 items documented0 out of 0 items with examples
  • Size
  • Source code size: 136.64 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 229.47 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 2m 35s Average build duration of successful builds.
  • all releases: 2m 35s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • olukowski

bevy_minecraft

A toolkit to create minecraft servers using bevy, in an ECS-native way.

Status

This project is just starting development, we currently have these "phases" of development planned:

First Server Ping

  • Implement a structured way to handle the various packets in the minecraft protocol.
  • Run a TCP server as an async task, to handle the incoming connections.
  • Implement a state machine to keep track of the connection state.
  • Implement enough of the packets so that we can receive the ping request, from the Minecraft server list, and respond appropriately.

Login Sequence

  • Build out more of the packets to handle the full login sequence.
  • Get the client to show the "Joining world" message.

Joining the world

  • Handle more packets to get the client to join the world (empty world to start).

And much more that will be implemented over time!

Contributing

All contributions are welcome, but we do enforce Conventional Commits for commit messages. This helps with managing breaking changes, and maintaining and accurate changelog.

License

As most projects in the bevy ecosystem, this project is dual-licensed under both the MIT and the Apache 2.0 licenses. See LICENSE-MIT and LICENSE-APACHE for more information.