Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add New Data Version - Doc update #835

Merged
merged 11 commits into from
Jan 25, 2024
78 changes: 38 additions & 40 deletions doc/add-data-new-version.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,46 +4,44 @@ For bedrock edition see [bedrock.md](bedrock.md)

| file name | auto? | how to get it | notes |
| -- | -- | -- | -- |
| protocol.json | No | Follow [Pre-release Protocol][3] |
| blocks.json | Yes | Use [Burger][1], then use [burger-extractor][2] |
| items.json | Yes | Use [Burger][1], then use [burger-extractor][2], then use [turbo-invention][6] |
| entities.json | Yes | Use [mcdata-generator][20] and run `extractPcEntityMetadata.js` script in tools/js to generate entity metadata in entities.json and protocol.json |
| recipes.json | Yes | Use [Burger][1], then use [burger-extractor][2] | should eventually be changed to native data generators |
| blockCollisionShapes.json | Yes | Use [McDataExtracting][4] |
| commands.json | No? |Use [mc-data-command-generator][5] | link to jar files have to be manually added |
| biomes.json | Yes | Use [Burger][1], then use [burger-extractor][2] | [extra info][13] |
| instruments | No | [wiki.vg block actions][11] |
| materials.json | No | [import from previous version](18) or [fix it properly](19) |
| windows.json | No | Look at [wiki.vg inventories][7] |
| version.json | No | Look at [Protocol Versions][9] | [wiki.vg protocol numbers][8] |
| effects.json | No | Look at [minecraft wiki effects][12] |
| enchantments.json | No | Duplicate enchantments.json from the latest version and add manually the missing enchantments. Enchantments data could be found by looking into the deobfuscated classe files of each enchantments, as well as in the Enchantments registry. |
| language.json | Yes | Use [minecraft-jar-extractor][10] |
| particles.json | Yes | Use [Burger][1], then use [burger-extractor][2] |
| blockLoot.json | Yes | Use [minecraft-jar-extractor][10] |
| entityLoot.json | Yes | Use [minecraft-jar-extractor][10] |
| mapIcons.json | No | Icons can be found in the Minecraft jar file where they are added as a single sprite. The file location is `/assets/minecraft/textures/map/map_icons.png`. Alternatively you might be able to look up the icons from the following page on the [Minecraft wiki][15] or from [wiki.vg][16]. | [minecraft-data pr mapIcons][14] |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why remove the file path for this, is it incorrect?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its a correct file path but not useful. Since it doesn't label the icons at all, and doesn't provide the information needed to fill out the mapIcons.json file.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

| protocol.json | No | Follow [Pre-release Protocol][1] | Always double check by looking at the Minecraft source files. |
| blocks.json | Yes | Use [minecraft-data-generator-server][2] |
| items.json | Yes | Use [minecraft-data-generator-server][2] |
| entities.json | Yes | Use [minecraft-data-generator-server][2] and run `extractPcEntityMetadata.js` script in tools/js to generate entity metadata in entities.json and protocol.json |
| recipes.json | Yes | Use [minecraft-data-generator-server][2] | Make sure that `-1` in output are replaced with `null` |
| blockCollisionShapes.json | Yes | Use [minecraft-data-generator-server][2] |
| commands.json | No? |Use [mc-data-command-generator][3] | Link to jar files have to be manually added |
| biomes.json | Yes | Use [minecraft-data-generator-server][2] |
| instruments | Yes | Use [minecraft-data-generator-server][2] |
| materials.json | Yes | Use [minecraft-data-generator-server][2] |
| windows.json | No | Look at [wiki.vg inventories][4] |
| version.json | No | Look at [Protocol Versions][5] | [wiki.vg protocol numbers][6] |
| effects.json | Yes | Use [minecraft-data-generator-server][2] |
| enchantments.json | Yes | Use [minecraft-data-generator-server][2] |
| language.json | Yes | Use [minecraft-data-generator-server][2] |
| particles.json | Yes | Use [minecraft-data-generator-server][2] |
| blockLoot.json | No | Use [minecraft-jar-extractor][7] | Currently no extractor seems to works for this
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand why you say both that people should use Minecraft jar extractor and that there is no extractor

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I link it since its the last know working extractor. I should probably mention that some where.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have removed the mention of it. Since it doesn't work.

| entityLoot.json | No | Use [minecraft-jar-extractor][7] | Currently no extractor seems to works for this
| mapIcons.json | No | Icons data can be found in the Minecraft source directly. Alternatively you might be able to look up the icons from the following page on the [Minecraft wiki][9] or from [wiki.vg][10]. | [minecraft-data pr mapIcons][11] |
| loginPacket.json | Yes | Running tests on [node-minecraft-protocol][12] |
| sounds.json | Yes | Use [minecraft-jar-extractor][10] |

* All files that say Yes for auto can be gotten from [minecraft-data-auto-updater][17] (that uses [minecraft-data-generator-server][20]). This is the preferred way to extract the data.

[1]: https://github.com/Pokechu22/Burger
[2]: https://github.com/PrismarineJS/burger-extractor
[3]: https://wiki.vg/Pre-release_protocol
[4]: https://github.com/PrismarineJS/McDataExtracting
[5]: https://github.com/Miro-Andrin/mc-data-command-generator
[6]: https://github.com/u9g/turbo-invention
[7]: https://wiki.vg/Inventory
[8]: https://wiki.vg/Protocol_version_numbers
[9]: https://github.com/PrismarineJS/minecraft-data/blob/master/data/pc/common/protocolVersions.json
[10]: https://github.com/PrismarineJS/minecraft-jar-extractor
[11]: http://wiki.vg/Block_Actions
[12]: https://minecraft.wiki/w/Effect
[13]: https://github.com/PrismarineJS/mineflayer/pull/197
[14]: https://github.com/PrismarineJS/minecraft-data/pull/348#issue-545841883
[15]: https://minecraft.wiki/Map#Map_icons
[16]: https://wiki.vg/Protocol#Map_Data
[17]: https://github.com/PrismarineJS/minecraft-data-auto-updater
[18]: https://github.com/PrismarineJS/minecraft-data/pull/282#issue-612896577
[19]: https://github.com/PrismarineJS/minecraft-data/issues/412#issuecomment-1008202471
[20]: https://github.com/PrismarineJS/minecraft-data-generator-server
* All files that say Yes for auto can be gotten from [minecraft-data-auto-updater][11] (that uses [minecraft-data-generator-server][2]). This is the preferred way to extract the data.

After generating and creating the new files for the version in its own directory, the version must be added to dataPaths.json in the data folder.
Additionally in data/pc/common the versions.json file needs to be updated with the new version.


[1]: https://wiki.vg/Pre-release_protocol
[2]: https://github.com/PrismarineJS/minecraft-data-generator-server
[3]: https://github.com/Miro-Andrin/mc-data-command-generator
[4]: https://wiki.vg/Inventory
[5]: https://github.com/PrismarineJS/minecraft-data/blob/master/data/pc/common/protocolVersions.json
[6]: https://wiki.vg/Protocol_version_numbers
[7]: https://github.com/PrismarineJS/minecraft-jar-extractor
[8]: https://github.com/PrismarineJS/minecraft-data/pull/348#issue-545841883
[9]: https://minecraft.wiki/Map#Map_icons
[10]: https://wiki.vg/Protocol#Map_Data
[11]: https://github.com/PrismarineJS/minecraft-data-auto-updater
[12]: https://github.com/PrismarineJS/node-minecraft-protocol
Loading