A Go library for Minecraft: Java Edition 26.x — the network protocol, game data and world formats as Go types, generated from Mojang's unobfuscated server jars.
go-mc26 is another approach to a Minecraft library, not a fork: packets, data components, registries, block states, items, entities, biomes and translations are produced by generators from JSON extracted straight from the jar, and every Minecraft version is its own branch built from that data. The bot and the server framework of go-mc26-kit use the generated types only, so a new Minecraft version means "extract, generate, build — and the compiler points at what changed".
It was built with Claude Opus and Claude Fable. It carries code from
Tnze/go-mc (MIT); see LICENSE here and the COPIED
manifest in mc26.
- One branch per Minecraft version:
mc-26.1,mc-26.2, …mainholds only this README. - Releases are tags
v0.<YYN>.<patch>:v0.262.0is Minecraft 26.2.go get github.com/mj41/go-mc26@v0.262.0 - The three newest Minecraft versions receive fixes; older branches are frozen, their tags stay.
- No API compatibility promise (major version 0): every version is generated and may change shape.
- Nothing before Minecraft 26.1.
| branch | Minecraft | protocol | data version | latest tag |
|---|---|---|---|---|
mc-26.3 |
26.3 | 777 | 5023 | v0.263.1 |
mc-26.2 |
26.2 | 776 | 4903 | v0.262.1 |
mc-26.1 |
26.1 | 775 | 4786 | v0.261.1 |
- go-mc26 — this library (generated, templated or copied; never edited by hand).
- mc26 — the project: the extractors, the generators, the framework sources, the
buildandreleasecommands. - mc26-data / mc26-data-pre — the extracted JSON and its documentation per Minecraft version.
- go-mc26-kit — the bot, the server framework, the account flows and the examples: a module on top of this library that builds against every supported version of it.
0 comments
log in to comment.