aboutsummaryrefslogtreecommitdiff
path: root/codegen/README.md
blob: e2cb0fcde170e2fc59a96b487476e1224e8c86d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Tools for automatically generating code to help with updating Minecraft versions.

The directory name doesn't start with `azalea-` because it's not a Rust crate.

## Requirements

- Python 3.8+
- Java 17+
- Gradle

## Usage

Generate packet:\
`python newpacket.py [packet id] [clientbound or serverbound] \[game/handshake/login/status\]`\
This will create a new file in the `azalea-protocol/src/packets/\[state\] directory`. You will probably have to manually fix up the auto generated code.

Migrate to a new Minecraft version:\
`python migrate.py [new version]`\
This updates all the packet ids in `azalea-protocol/src/packets/mod.rs` and creates all the new packets.