This repository is a simple tool which connects to BDS using gophertunnel and generates necessary data for Dragonfly updates.
- Download the latest version of BDS and run the
server. You will also need to generate a vanilla world with education features and any other appropriate
experiments enabled. Ensure
block-network-ids-are-hashesis disabled within BDSserver.propertiesaswell - Make sure
data/block_state_meta_map.jsonanddata/canonical_block_states.nbtare up-to-date from BedrockData (or newly generated from bds-mod-mapping) - Run
go run main.goand authenticate with Xbox if it is your first time running the tool - Once the data is generated, copy the required folders from
outputinto the desired location
Note
All .nbt files use the network-encoding variant of NBT.
Tip
The tool will generate the data in a structured format, allowing you to easily copy the data into the respective repositories.
| File | Description |
|---|---|
| server/item/creative/creative_items.nbt | This file contains the creative groups and items in the vanilla order |
| server/item/recipe/crafting_data.nbt | This file contains a list of shaped and shapeless crafting recipes |
| server/item/recipe/furnace_data.nbt | This file contains a list of furnace recipes |
| server/item/recipe/potion_data.nbt | This file contains a list of brewing stand recipes |
| server/item/recipe/smithing_data.nbt | This file contains a list of recipes for the smithing table, excluding armour trims |
| server/item/recipe/smithing_trim_data.nbt | This file contains a list of recipes for armour trims in the smithing table |
| server/world/vanilla_items.nbt | This file contains a list of all vanilla items with their runtime ID and version |
Note
The ordering of recipes does not currently match the existing ordering for BedrockData, creating unreliable diffs if used.
| File | Description |
|---|---|
| biome_definitions.json | This file contains the biome mappings obtained from the BiomeDefinitionList packet |
| creativeitems.json | The file contains the creative groups and items obtained from the CreativeContent packet |
| entity_id_map.json | This file contains a mapping of entity identifiers to their legacy, numerical IDs |
| entity_identifiers.nbt | This file contains entity identifier mappings obtained from the AvailableActorIdentifiers packet |
| required_item_list.json | This file contains a list of items with their runtime ID and version, obtained from the ItemRegistry packet |
| recipes/potion_container_change.json | This file contains the brewing recipes that affect the bottle of the potion |
| recipes/potion_type.json | This file contains the brewing recipes, excluding the container changes |
| recipes/shaped_chemistry_asymmetric.json | This file contains the shaped chemistry recipes |
| recipes/shaped_crafting.json | This file contains the shaped crafting recipes |
| recipes/shapeless_chemistry.json | This file contains the shapeless chemistry recipes |
| recipes/shapeless_crafting.json | This file contains the shapeless crafting recipes |
| recipes/shapeless_shulker_box.json | This file contains the recipes for coloured containers |
| recipes/smelting.json | This file contains the furnace recipes |
| recipes/smithing.json | This file contains the smithing table recipes, excluding armour trims |
| recipes/smithing_trim.json | This file contains the armour trim recipes for the smithing table |
| recipes/special_hardcoded.json | This file contains the UUIDs for recipes that are hardcoded on the client |