Skip to content

Latest commit

 

History

History
45 lines (29 loc) · 1.48 KB

README.md

File metadata and controls

45 lines (29 loc) · 1.48 KB

rust-craft

rust-craft is a collection of crates to make minecraft development (client, server) with rust possible.

Motivation

There's no better way of learning proc-macros and feature-flags by implementing them for a game you like (and also learning more about its packets on the way).

Crates

Name Description
protocol-core Packet related abstraction traits and implementations for common types
protocol-derive Proc-macros responsible for implementing Readable, Writeable and Packet traits for structs automatically via #[derive(Packet, Readable, Writeable)]
protocol-packets Packet structs and documentation

Examples

Examples can be found on the folder /examples, more examples will come when possible.

Desired Features

Not in order.

  • Handshake packet definitions. (protocol-packets)
  • Status packet definitions. (protocol-packets)
  • Login packet definitions. (protocol-packets)
  • Play packet definitions. (protocol-packets)
  • Connection wrapper that stores data (state, compression) and send/receive packets. (protocol-packets)
  • Nbt type (like Json). (protocol-core)
  • ChatComponent type. (protocol-packets)

Inspiration

License

This project is licensed under the MIT license.

Contributions

PRs are welcome :D