data

module
v0.0.0-...-ae70652 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 17, 2026 License: MIT

README

go-mclib/data

Go bindings for Minecraft Java Edition network protocol and game data, for use with go-mclib/protocol in go-mclib/client and other projects.

Features

  • Packet definitions for all protocol states (handshake, status, login, configuration, play)
  • Generated data from Minecraft server reports:
    • 95 registries with bidirectional lookups
    • 1,166 blocks with state calculations
    • 1,505 items with component metadata
    • Packet ID mappings
  • ItemStack middleware for typed component access

Dependency Chain

go-mclib/protocol <–––(requires)––– go-mclib/data <–––(requires)––– go-mclib/client

Installation

go get github.com/go-mclib/data

Usage

See package documentation:

Updating to a New Minecraft Version

  1. Regenerate data from server reports:

    cd pkg/data && go generate ./... && go fmt ./...
    
  2. Update packet bindings - see .claude/prompts/PACKETS.md

  3. Update component decoders - see .claude/prompts/DATA.md

License

Licensed under the MIT License.

Directories

Path Synopsis
pkg
data
Package data provides Minecraft protocol data bindings.
Package data provides Minecraft protocol data bindings.
data/generate command
data/hitboxes
Package hitboxes provides collision geometry types shared by block and entity hitbox packages.
Package hitboxes provides collision geometry types shared by block and entity hitbox packages.
data/hitboxes/blocks
Package blocks provides block collision shape lookups by state ID.
Package blocks provides block collision shape lookups by state ID.
data/hitboxes/entities
Package entities provides entity hitbox dimension lookups by entity type name.
Package entities provides entity hitbox dimension lookups by entity type name.
data/packet_ids
Package packets provides generated protocol IDs for Minecraft packets.
Package packets provides generated protocol IDs for Minecraft packets.
data/storage
Package storage implements Minecraft's Anvil region file format for persisting chunk and player data.
Package storage implements Minecraft's Anvil region file format for persisting chunk and player data.
proxy
cmd/decode command
Reads a captured packet JSON file and prints decoded packet structures
Reads a captured packet JSON file and prints decoded packet structures
cmd/proxy command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL