Jump to content

Default system of Forge tags for ores will have to expand in the future versions of Minecraft


Recommended Posts

Posted (edited)

For everyone who make datapacks (and modpacks), it is not a news that mods (mostly technological), when it comes to processing ores into other materials rely on Forge tags, rather than their ID. This allows greater cross-mod compatibility when it comes to processing variety of ores. This system works as following:

  1. All ores are given tag "ores.json" in directories "data/forge/tags/items/" and "data/forge/tags/blocks/".
  2. All ores that contain certain materials are tagged "name_of_material.json" in directories "data/forge/tags/items/tags/ores/" and "data/forge/tags/blocks/ores/".

 

These tags are pretty much enough for most processes that involve ores. However, some mods add process that are more immersive in relation to on what kind of rock this ore is based on. For example, when processing vanilla iron ore Create mod crushing wheels output crushed ores and with 1/8 probability also output cobblestone. But they will also output cobblestone when crushing any ore that has "forge:ores/iron" tag, even if design wise it isn't based on stone. Another example, where ore base is relevant, is mods that allow to reinfuse or turn rock into ore, such as infusion in Mekanism or orechid in Botania. While most mods just add one base per ore types, some are more diverse. Subterranean Wilderness, for example, is mod that refurbish caves depending on biome, adding variants for all ore types, for example desert caves' walls are sandstone based and contain sandstone based variants of all vanilla ores.


Such mods are now uncommon, but it seems that this going to change in the future. Vanilla Minecraft already has ore basis variation: overworld gold ore with stone base and nether gold ore with netherrack base. In upcoming 1.17 Caves & Cliffs update, 5/8 of overworld ores will have two variants: one based on stone and one based on grimstone. In order to confront this new reality and maintain compatibility between technological mods, new family of tags should be added. I propose the following solution:
All ores that are based on certain rocks are to be tagged "name_of_ore_base.json" in directories "data/forge/tags/items/tags/ore_bases/" and "data/forge/tags/blocks/ore_bases/".

For example, vanilla stone gold ore would get additional tag "forge:ore_bases/stone", vanilla grimstone gold ore would get additional tag "forge:ore_bases/grimstone" and vanilla nether gold ore would get additional tag "forge:ore_bases/netherrack". Most processes would still use just old tags that denote carried material, but this additional tag system would allow to maintain many technological mods proper functionality when it comes to ore crashing and ore creation recipes by employing both tags.

P.S. I know that I can add/remove/change recipes and tags with CraftTweaker, Kubejs and/or datapacks. I am talking about default Forge tag convention that might be useful in the future.

Edited by MinskWurdalak
Wording errors

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.