Registry list
Status: Partly implemented. Blocks and items register in code (vanilla-backed); the data-pack registries take entries from the mod’s
datapack/folder. Every other code registry is Planned.
How: code = registered in lifecycle.register; data = JSON in datapack/<ns>/<folder>/.
Vanilla clients: whether a vanilla client sees mod entries without help.
Code registries
| Registry | How | Status | Vanilla clients |
|---|---|---|---|
minecraft:block |
code: cl_block_register / cl.blocks.register |
Implemented (vanilla-backed, one state) | see the base block |
minecraft:item |
code: cl_item_register / cl.items.register |
Implemented (vanilla-backed) | see the base item with the mod’s name; the model with the resource pack |
minecraft:entity_type, block_entity_type, fluid, menu, particle_type, mob_effect, potion, attribute, data_component_type, creative_mode_tab, recipe_type, recipe_serializer, game_event, custom_stat, point_of_interest_type, villager_profession, command_argument_type, loot function and condition types, enchantment effect component types |
code | planned | via fallbacks (planned) |
minecraft:sound_event |
data: assets/<ns>/sounds.json |
Implemented through the resource pack | play with the mod’s resource pack |
Worldgen types: feature, structure_type, structure_piece, placement_modifier_type, density_function_type, biome_source, chunk_generator, carver |
code | planned | server-side only |
Data-pack registries
| Registry | Folder in datapack/<ns>/ |
Vanilla clients |
|---|---|---|
minecraft:damage_type |
damage_type/ |
✔ |
minecraft:enchantment |
enchantment/ |
✔ |
minecraft:enchantment_provider |
enchantment_provider/ |
✔ |
minecraft:painting_variant |
painting_variant/ |
✔ (the texture needs the resource pack) |
minecraft:jukebox_song |
jukebox_song/ |
✔ |
minecraft:banner_pattern |
banner_pattern/ |
✔ (texture via pack) |
minecraft:trim_material, trim_pattern |
trim_material/, trim_pattern/ |
✔ |
minecraft:wolf_variant, cat_variant, pig_variant, cow_variant, chicken_variant, frog_variant, wolf_sound_variant |
matching folders | ✔ |
minecraft:chat_type, instrument, trial_spawner, dialog |
matching folders | ✔ |
| Recipes, loot tables, tags, advancements, predicates, item modifiers, functions | recipe/, loot_table/, tags/, … |
✔ (server-side data) |
Worldgen (worldgen/...), dimension_type/, dimension/ |
matching folders | read for the three vanilla dimensions; extra dimensions aren’t generated yet |
clight:biome_modifier |
clight/biome_modifier/ |
planned |
Convention tags (c: namespace)
Celestial doesn’t ship c: tags, but the convention from other platforms works the same way: mods that share materials can add them to tags such as c:gems/ruby, c:ingots/<material> or c:ores/<material> in their data pack, and refer to those tags in their own data.