Minecraftforge: [1.14.4] Vanilla Object Holders are not updated in production

Created on 28 Jul 2019  路  2Comments  路  Source: MinecraftForge/MinecraftForge

Recently, #5922 made it possible for vanilla registry replacements to function again. However, now that it works, the vanilla object holders are not being applied in production. They work in a development environment, so I expect it has something to do with obf nonsense.

This has been the cause of a lot of issues for FastWorkbench (which is currently the only thing doing replacement on 1.14, as far as I am aware), see: Shadows-of-Fire/FastWorkbench/issues/22

It also causes problems for other mods that reference now-replaced fields, which is the underlying issue of Shadows-of-Fire/FastWorkbench/issues/21 and Shadows-of-Fire/FastWorkbench/issues/23

The validity of this issue can be verified by checking the class of a replaced block field at runtime, in which case it will still point to the original class of the (now-replaced) block.

Additionally, there may be an issue with replacement and Block#asItem, as the value is never updated to reflect an item replacement. That method should be updated to use item delegates.

Triage

Most helpful comment

I wasn't joking about needing the log. It would of saved me a bit trying to track this down.
The issue is that our patched vanilla classes arnt being scanned for annotations. I've informed cpw he'll get a fix when he can. {it's his system I dont want to patch in something quick outside of his design}

All 2 comments

It's also causing issue for me too https://github.com/Tfarcenim/Anvil-Tweaks/issues/2

I wasn't joking about needing the log. It would of saved me a bit trying to track this down.
The issue is that our patched vanilla classes arnt being scanned for annotations. I've informed cpw he'll get a fix when he can. {it's his system I dont want to patch in something quick outside of his design}

Was this page helpful?
0 / 5 - 0 ratings