GT New Horizons

GT New Horizons

867k Downloads

Unify and remove same items in different mods

SKProCH opened this issue · 2 comments

commented

Your GTNH Discord Username

skproch

Your Pack Version

2.7.1 nightly

Your Proposal

Many mods has its own versions of items, which don't used due to GT items or something. E.g.:

  • EnderIO ingots doesn't used since we have GT ingots
    image

  • Thaumcraft has nuggets for many metals replaces by GT ones
    image

  • IC2 own dusts, plates
    image

  • GT++ ones
    image

  • Avaritia infinity and cosmic neutronium
    image
    image

  • Draconic Evolution ingots and dust
    image

  • And so on, i think that current issue we can track list of it

My proposal is to remove this items and use the commonly used ones (e.g. GT ones) instead.

Your Goal

Remove NEI cluttering, remove chance of mistakes in AE2 recipes encoding, remove unused items.

Yes, there is a forge(?) system what automatically converts some of this items in your inventory to target ones, but it isn't sufficient, since items in AE2 doesn't converted, AE2 recipes still can use different materials, NEI still cluttered.

My personal pain is the thaumcraft iron nuggets, my EIG farms iron from metalleat and it gives me the thaumcraft nuggets. Nuggets should be smelted to ingots but every server restart my zyngen stocking input bus converts the filter with thaumcraft nuggets into GT ones, and TC nuggets starts stockpiling in my system.

image

Your Vision

I can't say I'm very knowledgeable about modding, but I have a couple of ideas on how to do it. So, there is a technical suggestions on how to do it.

Mods register items by calling the forge API GameRegistry.registerItem. We can rewrite it (for mods which sources we can change) or write a mixins which reassign the item variable, and replace it with our commonly used alternative. Original item (which we will replace) we still register in registry to ensure backward compatibility and migration, but hides from NEI, creative tabs, etc. And the final step is a postea transformer which will migrate old items to a commonly used ones.

So, mods will use our item instead of theirs, and existing old items will be migrated on world load.

Final Checklist

  • I have searched this issue tracker and there is nothing similar already. Posting on a closed issue saying I like this feature please reconsider adding it will prompt us to investigate and reopen it once we confirm your report.
  • I believe there is nothing similar in the pack already, or the existing solution isn't good enough.
  • I understand this change request may not attract enough attention and thus not be implemented.
  • I understand this change request may be rejected due to other community members thinking it's inappropriate.
  • I believe this feature would make the pack better.
commented

its a work in progress. see for example GTNewHorizons/ForestryMC#82, #17298

mixin should be reserved for the arr mods but yea any help is very much appreciated :)

commented

Also linked with #16996