Context
The server is missing several optional Configuration registries. While not strictly required for basic gameplay, they cause missing functionality and potential warnings.
Problem
- banner_pattern: banners can't display patterns
- enchantment: enchantment names can't display in tooltips. Complex NBT format with supported_items as a tag set, slots array, cost formulas, and effect definitions.
- jukebox_song: music disc names missing
- instrument: goat horn sounds undefined
Proposed approach
Add each registry with entries matching the vanilla data generator output. The enchantment registry is the most complex — it may require a data-driven approach (loading from JSON) rather than hardcoding, as there are 40+ enchantments with hundreds of fields each.
Scope
crates/basalt-protocol/src/registry_data.rs
Benefits
Full registry compatibility with vanilla, no client warnings.
Non-goals
- Custom enchantments or instruments for plugins
- Complete vanilla parity (minimum viable entries first)
Context
The server is missing several optional Configuration registries. While not strictly required for basic gameplay, they cause missing functionality and potential warnings.
Problem
Proposed approach
Add each registry with entries matching the vanilla data generator output. The enchantment registry is the most complex — it may require a data-driven approach (loading from JSON) rather than hardcoding, as there are 40+ enchantments with hundreds of fields each.
Scope
crates/basalt-protocol/src/registry_data.rsBenefits
Full registry compatibility with vanilla, no client warnings.
Non-goals