Minecraftforge: [1.13.2] Handling new vanilla registries

Created on 18 Feb 2019  路  5Comments  路  Source: MinecraftForge/MinecraftForge

As per:
https://github.com/MinecraftForge/MinecraftForge/blob/e47fa70279ec81c54abb3381c428ff3c1e9d7c35/patches/minecraft/net/minecraft/util/registry/IRegistry.java.patch#L9

Going over the new registries in 1.13.2, the following all use int IDs for network transmission, and are going to need some Forge handling to work properly with mods adding to them.

  • Fluids (NetworkTagCollection)
  • Paintings (SPacketSpawnPainting)
  • Custom statistics and statistic types (SPacketStatistics)
  • Particles (SPacketParticles)

Obviously fluids are still very much up-in-the-air at the moment, but it's probably still worth thinking about them.

A non-persisted Forge registry is probably the way to go here, but other ideas are also welcome.

1.13 Needs Update RFC Stale

Most helpful comment

Despite having a registry, paintings still use a hardcoded texture sheet in 1.13.2. A patch should probably be made to allow modders to provide their own texture sheets as well.

All 5 comments

Also, there are the following ID-based structures that are candidates for slave maps (or some other Forge wrapper map):

  • particle -> particle factory
  • biome -> mutated biome
  • fluid state <-> id (currently unused, but can be considered for the future)

Despite having a registry, paintings still use a hardcoded texture sheet in 1.13.2. A patch should probably be made to allow modders to provide their own texture sheets as well.

Inspected the GameData class, it seems that it still limits registries to the ID-limits from 1.12: blocks are still limited to 4096, biomes still to 255. In 1.13, blocks can at least have up to Integer.MAX_VALUE >> 5 different IDs without distorting vanilla's mechanics, biomes even up to Integer.MAX_VALUE, as long as the forge registries support it... This should probably be taken into account too when revisiting the above registries...

This issue has been automatically marked as stale because it has not had activity in a long time. If this issue is still relevant and should remain open, please reply with a short explanation (e.g. "I have checked the code and this issue is still relevant because ___." or "Here's a screenshot of this issue on the latest version"). Thank you for your contributions!

This issue has been automatically closed because it has not had activity in a long time. Please feel free to reopen it or create a new issue.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ChiriCuddles picture ChiriCuddles  路  3Comments

tterrag1098 picture tterrag1098  路  3Comments

williewillus picture williewillus  路  3Comments

juliand665 picture juliand665  路  3Comments

ghost picture ghost  路  3Comments