A simple web-based tool to compare Minecraft Java Edition protocol packet structures across different versions.
This tool allows you to select a range of Minecraft versions, a protocol state (Handshaking, Status, Login, Play), a packet direction (Clientbound or Serverbound), and a specific packet name. It then displays how the Packet ID and structure definition for that packet changed over the selected version range.
- Compare packet structures between specified Minecraft versions.
- View changes in Packet ID and structure definition.
- Displays the corresponding protocol version number range for each packet definition group.
- Filter by protocol state and direction.
- Simple web interface built with Node.js/Express.
- Node.js (LTS version recommended)
- npm (included with Node.js)
- Clone the repository:
git clone <repository-url> # Or download the source code cd <repository-directory>
- Install dependencies:
npm install
- Start the server:
node server.js
- The server will start, typically listening on
http://localhost:3000. You'll see a confirmation message in your console.
- Open your web browser and navigate to
http://localhost:3000. - Select the desired Start Version and End Version for the comparison range using the dropdown menus.
- Choose the protocol State (e.g., Play, Login).
- Select the packet Direction (Server -> Client or Client -> Server).
- The Packet Name dropdown will populate based on your selections. Choose the specific packet you want to compare.
- Click the Compare button.
- The results area will display the comparison, showing groups of versions where the packet ID and structure remained the same. Changes between these groups will be highlighted. Protocol version numbers (e.g.,
p340) corresponding to the Minecraft versions will also be shown.
This tool relies heavily on the protocol definitions provided by the minecraft-data library. Ensure this dependency is installed correctly.
