Ошибка с регистрацией материала для айтемов

Версия Minecraft
1.12.2
API
Forge
По учебнику создал переменную материала для айтемов и теперь игра крашится
Судя по логам надо добавить в реестр. Но какой и как?
 
Краш-лог
[Minecraft-Game] [21:36:49] [Client thread/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:func_179870_a:553]: ---- Minecraft Crash Report ----// I let you down. Sorry :(Time: 10/17/21 9:36 PMDescription: Initializing gamejava.lang.IllegalStateException: The ObjectHolder annotation cannot apply to a field that does not map to a registry. Ensure the registry was created during the RegistryEvent.NewRegistry event. (found : net.minecraft.item.Item$ToolMaterial at com.shizukani.myMod.item.ItemsRegistry.TOOL_MATERIAL)
at net.minecraftforge.registries.ObjectHolderRef.<init>(ObjectHolderRef.java:85)
at net.minecraftforge.registries.ObjectHolderRegistry.scanClassForFields(ObjectHolderRegistry.java:153)
at net.minecraftforge.registries.ObjectHolderRegistry.scanTarget(ObjectHolderRegistry.java:115)
at net.minecraftforge.registries.ObjectHolderRegistry.findObjectHolders(ObjectHolderRegistry.java:68)
at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:626)
at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
A detailed walkthrough of the error, its code path and all known details is as follows:----
- Head --Thread: Client threadStacktrace:
at net.minecraftforge.registries.ObjectHolderRef.<init>(ObjectHolderRef.java:85) at net.minecraftforge.registries.ObjectHolderRegistry.scanClassForFields(ObjectHolderRegistry.java:153) at net.minecraftforge.registries.ObjectHolderRegistry.scanTarget(ObjectHolderRegistry.java:115) at net.minecraftforge.registries.ObjectHolderRegistry.findObjectHolders(ObjectHolderRegistry.java:68) at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:626) at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252) at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)-- Initialization --Details:Stacktrace: at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378) at net.minecraft.client.main.Main.main(SourceFile:123) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28)-- System Details --Details: Minecraft Version: 1.12.2 Operating System: Windows 8.1 (amd64) version 6.3 Java Version: 1.8.0_45, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 776139016 bytes (740 MB) / 1073741824 bytes (1024 MB) up to 4294967296 bytes (4096 MB) JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx4096M -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -Xverify:none IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 FML: MCP 9.42 Powered by Forge 14.23.5.2854 5 mods loaded, 5 mods active States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored | State | ID | Version | Source | Signature | |:----- |:--------- |:------------ |:----------------------------- |:---------------------------------------- | | LC | minecraft | 1.12.2 | minecraft.jar | None | | LC | mcp | 9.42 | minecraft.jar | None | | LC | FML | 8.0.99.99 | forge-1.12.2-14.23.5.2854.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 | | LC | forge | 14.23.5.2854 | forge-1.12.2-14.23.5.2854.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 | | LC | mymod | 1.0 | modid-1.0.jar | None | Loaded coremods (and transformers): GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.6.0 NVIDIA 471.11' Renderer: 'NVIDIA GeForce GTX 1060 3GB/PCIe/SSE2' Launched Version: forge-14.23.5.2854 LWJGL: 2.9.4 OpenGL: NVIDIA GeForce GTX 1060 3GB/PCIe/SSE2 GL version 4.6.0 NVIDIA 471.11, NVIDIA Corporation GL Caps: Using GL 1.3 multitexturing.Using GL 1.3 texture combiners.Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.Shaders are available because OpenGL 2.1 is supported.VBOs are available because OpenGL 1.5 is supported. Using VBOs: Yes Is Modded: Definitely; Client brand changed to 'fml,forge' Type: Client (map_client.txt) Resource Packs: Current Language: ������� (������) Profiler Position: N/A (disabled) CPU: 4x Intel(R) Core(TM) i3-9100F CPU @ 3.60GHz
Краш-лог:
[Minecraft-Game] [21:36:49] [Client thread/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:func_179870_a:553]: ---- Minecraft Crash Report ----// I let you down. Sorry :(Time: 10/17/21 9:36 PMDescription: Initializing gamejava.lang.IllegalStateException: The ObjectHolder annotation cannot apply to a field that does not map to a registry. Ensure the registry was created during the RegistryEvent.NewRegistry event. (found : net.minecraft.item.Item$ToolMaterial at com.shizukani.myMod.item.ItemsRegistry.TOOL_MATERIAL)
	at net.minecraftforge.registries.ObjectHolderRef.<init>(ObjectHolderRef.java:85)
	at net.minecraftforge.registries.ObjectHolderRegistry.scanClassForFields(ObjectHolderRegistry.java:153)
	at net.minecraftforge.registries.ObjectHolderRegistry.scanTarget(ObjectHolderRegistry.java:115)
	at net.minecraftforge.registries.ObjectHolderRegistry.findObjectHolders(ObjectHolderRegistry.java:68)
	at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:626)
	at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)
	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)
	at net.minecraft.client.main.Main.main(SourceFile:123)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
A detailed walkthrough of the error, its code path and all known details is as follows:----
- Head --Thread: Client threadStacktrace:	
at net.minecraftforge.registries.ObjectHolderRef.<init>(ObjectHolderRef.java:85)	at net.minecraftforge.registries.ObjectHolderRegistry.scanClassForFields(ObjectHolderRegistry.java:153)	at net.minecraftforge.registries.ObjectHolderRegistry.scanTarget(ObjectHolderRegistry.java:115)	at net.minecraftforge.registries.ObjectHolderRegistry.findObjectHolders(ObjectHolderRegistry.java:68)	at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:626)	at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)	at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)-- Initialization --Details:Stacktrace:	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)	at net.minecraft.client.main.Main.main(SourceFile:123)	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)	at java.lang.reflect.Method.invoke(Unknown Source)	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)	at net.minecraft.launchwrapper.Launch.main(Launch.java:28)-- System Details --Details:	Minecraft Version: 1.12.2	Operating System: Windows 8.1 (amd64) version 6.3	Java Version: 1.8.0_45, Oracle Corporation	Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation	Memory: 776139016 bytes (740 MB) / 1073741824 bytes (1024 MB) up to 4294967296 bytes (4096 MB)	JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx4096M -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -Xverify:none	IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0	FML: MCP 9.42 Powered by Forge 14.23.5.2854 5 mods loaded, 5 mods active	States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored	| State | ID        | Version      | Source                        | Signature                                |	|:----- |:--------- |:------------ |:----------------------------- |:---------------------------------------- |	| LC    | minecraft | 1.12.2       | minecraft.jar                 | None                                     |	| LC    | mcp       | 9.42         | minecraft.jar                 | None                                     |	| LC    | FML       | 8.0.99.99    | forge-1.12.2-14.23.5.2854.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 |	| LC    | forge     | 14.23.5.2854 | forge-1.12.2-14.23.5.2854.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 |	| LC    | mymod     | 1.0          | modid-1.0.jar                 | None                                     |	Loaded coremods (and transformers): 	GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.6.0 NVIDIA 471.11' Renderer: 'NVIDIA GeForce GTX 1060 3GB/PCIe/SSE2'	Launched Version: forge-14.23.5.2854	LWJGL: 2.9.4	OpenGL: NVIDIA GeForce GTX 1060 3GB/PCIe/SSE2 GL version 4.6.0 NVIDIA 471.11, NVIDIA Corporation	GL Caps: Using GL 1.3 multitexturing.Using GL 1.3 texture combiners.Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.Shaders are available because OpenGL 2.1 is supported.VBOs are available because OpenGL 1.5 is supported.	Using VBOs: Yes	Is Modded: Definitely; Client brand changed to 'fml,forge'	Type: Client (map_client.txt)	Resource Packs: 	Current Language: ������� (������)	Profiler Position: N/A (disabled)	CPU: 4x Intel(R) Core(TM) i3-9100F CPU @ 3.60GHz
Решение
Ты перестал использовать @ObjectHolder и forge перестал наполнять поля значениями.
Можно вернуть аннотации или переписать так:
Java:
@Mod.EventBusSubscriber
public class ItemsRegistry {
    public static Item KEY;
    public static Item COCONUT;

    @SideOnly(Side.CLIENT)
    private static void registryModel(Item item){
        final ResourceLocation regName = item.getRegistryName();
        final ModelResourceLocation mr1 = new ModelResourceLocation(regName, "inventory");
        ModelBakery.registerItemVariants(item, mr1);
        ModelLoader.setCustomModelResourceLocation(item, 0, mr1);
    }

    @SubscribeEvent
    public static void onRegistryItem(RegistryEvent.Register<Item> e) {
        e.getRegistry().register(KEY=new...
Покажи свой код
 
Java:
@GameRegistry.ObjectHolder("mymod")
@Mod.EventBusSubscriber
public class ItemsRegistry {
    @GameRegistry.ObjectHolder("tool")
    public static final Item.ToolMaterial TOOL_MATERIAL = EnumHelper.addToolMaterial("mymod:tool", 3, 1204, 70.0F, 4.0F, 12);
    @GameRegistry.ObjectHolder("key")
    public static final Item KEY = null;
    @GameRegistry.ObjectHolder("coconut")
    public static final Item COCONUT = null;
    @GameRegistry.ObjectHolder("bsword")
    public static final ItemSword BSWORD = null;
    @GameRegistry.ObjectHolder("maxe")
    public static final ItemAxe MAXE = null;
    @GameRegistry.ObjectHolder("mspade")
    public static final ItemSpade MSPADE = null;
    @GameRegistry.ObjectHolder("mpick")
    public static final ItemPickaxe MPICKAXE = null;
    @GameRegistry.ObjectHolder("mhoe")
    public static final ItemHoe MHOE = null;

    @SideOnly(Side.CLIENT)
    private static void registryModel(Item item){
        final ResourceLocation regName = item.getRegistryName();
        final ModelResourceLocation mr1 = new ModelResourceLocation(regName, "inventory");
        ModelBakery.registerItemVariants(item, mr1);
        ModelLoader.setCustomModelResourceLocation(item, 0, mr1);
    }

    @SubscribeEvent
    public static void onRegistryItem(RegistryEvent.Register<Item> e) {
        e.getRegistry().register(new ItemKey());
        e.getRegistry().register(new ItemCoconut("coconut", 3, 2, false));
        e.getRegistry().register(new ItemBestSword("bsword", TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolHoe("mhoe", TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolAxe("maxe", TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolSpade("mspade", TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolPickaxe("mpick", TOOL_MATERIAL));

    }

    @SubscribeEvent
    @SideOnly(Side.CLIENT)
    public static void onRegistryModel(ModelRegistryEvent e) {
        registryModel(KEY);
        registryModel(COCONUT);
        registryModel(BSWORD);
        registryModel(MAXE);
        registryModel(MSPADE);
        registryModel(MPICKAXE);
        registryModel(MHOE);
    }

}
 
@GameRegistry.ObjectHolder("tool") public static final Item.ToolMaterial TOOL_MATERIAL
Материалы инструментов не являются регистрируемыми объектами, поэтому на них бессмысленно вешать аннотацию @ObjectHolder

@ObjectHolder работает следующим образом: forge после регистрации объектов каждого вида(предметы, блоки, жижы, и прочее) наполяет помеченные поля соответствующими экземплярами.
 
Вот только без него тоже самое писало, я просто пробовал добавить, мало ли. В таком случае, что тут может быть не так?
Вообще убери все @ObjectHolder и их поля. Они тебе нужны?
 
Они нужны только для получения экземпляров регисрируемых объектов по имени, больше ни для чего
 
Убрал их все, теперь вот это вот
Java:
-- Head --Thread: Client threadStacktrace:    
at net.minecraftforge.registries.IForgeRegistryEntry$Impl.setRegistryName(IForgeRegistryEntry.java:71)    
at com.shizukani.myMod.item.ItemBestSword.<init>(ItemBestSword.java:10)   
 at com.shizukani.myMod.item.ItemsRegistry.onRegistryItem(ItemsRegistry.java:40) 
   at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_5_ItemsRegistry_onRegistryItem_Register.invoke(.dynamic)  
  at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) 
   at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144)
    at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182) 
   at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:850)  
  at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:630)  
  at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)   
 at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)-- Initialization --Details:Stacktrace: 
   at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)    at java.lang.reflect.Method.invoke(Unknown Source)   
 at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
 
Теперь новый краш лог, похоже проблема не только в этом была
Java:
[Minecraft-Game] [23:35:33] [Client thread/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:func_179870_a:553]: ---- Minecraft Crash Report ----// Don't do that.Time: 10/18/21 11:35 PMDescription: Initializing gamejava.lang.NullPointerException: Initializing game
    at com.shizukani.myMod.item.ItemsRegistry.registryModel(ItemsRegistry.java:30)
    at com.shizukani.myMod.item.ItemsRegistry.onRegistryModel(ItemsRegistry.java:51)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_4_ItemsRegistry_onRegistryModel_ModelRegistryEvent.invoke(.dynamic)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
    at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144)
    at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
    at net.minecraftforge.fml.client.FMLClientHandler.fireSidedRegistryEvents(FMLClientHandler.java:1062)
    at net.minecraftforge.fml.common.FMLCommonHandler.fireSidedRegistryEvents(FMLCommonHandler.java:764)
    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:631)
    at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)
    at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)
    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
Java:
A detailed walkthrough of the error, its code path and all known details is as follows:----------------------------------------------------------------------------------------- Head --Thread: Client threadStacktrace:   
at com.shizukani.myMod.item.ItemsRegistry.registryModel(ItemsRegistry.java:30)   
at com.shizukani.myMod.item.ItemsRegistry.onRegistryModel(ItemsRegistry.java:51)  
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_4_ItemsRegistry_onRegistryModel_ModelRegistryEvent.invoke(.dynamic)   
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)   
at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144)   
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)  
at net.minecraftforge.fml.client.FMLClientHandler.fireSidedRegistryEvents(FMLClientHandler.java:1062)   
at net.minecraftforge.fml.common.FMLCommonHandler.fireSidedRegistryEvents(FMLCommonHandler.java:764)   
at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:631)   
at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:252)   
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:467)-- Initialization --Details:Stacktrace:   
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)    at net.minecraft.client.main.Main.main(SourceFile:123)   
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)    at java.lang.reflect.Method.invoke(Unknown Source)   
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
Java:
-- System Details --Details:    Minecraft Version: 1.12.2   
 Operating System: Windows 8.1 (amd64) version 6.3   
 Java Version: 1.8.0_45, Oracle Corporation  
  Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation    
Memory: 703809104 bytes (671 MB) / 1073741824 bytes (1024 MB) up to 4294967296 bytes (4096 MB)   
 JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump 
-Xmx4096M -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20
-XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -Xverify:none    
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0   
 FML: MCP 9.42 Powered by Forge 14.23.5.2854 5 mods loaded, 5 mods active   
 States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized
 'A' = Available 'D' = Disabled 'E' = Errored    | State | ID        | Version      | Source                  
      | Signature                                |    |:----- |:--------- |:------------ |:----------------------------- |:---------------------------------------- | 
   | LCH   | minecraft | 1.12.2       | minecraft.jar                 | None                                     |    | LCH   | mcp       | 9.42         | minecraft.jar                 | None                                     |    | LCH   | FML       | 8.0.99.99    | forge-1.12.2-14.23.5.2854.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 |    | LCH   | forge     | 14.23.5.2854 | forge-1.12.2-14.23.5.2854.jar | e3c3d50c7c986df74c645c0ac54639741c90a557 |    | LCH   | mymod     | 1.0          | modid-1.0.jar                 | None                                     |
 
Java:
@Mod.EventBusSubscriber
public class ItemsRegistry {
    public static final Item KEY = null;
    public static final Item COCONUT = null;
    public static final ItemSword BSWORD = null;
    public static final ItemAxe MAXE = null;
    public static final ItemSpade MSPADE = null;
    public static final ItemPickaxe MPICKAXE = null;
    public static final ItemHoe MHOE = null;

    @SideOnly(Side.CLIENT)
    private static void registryModel(Item item){
        final ResourceLocation regName = item.getRegistryName();
        final ModelResourceLocation mr1 = new ModelResourceLocation(regName, "inventory");
        ModelBakery.registerItemVariants(item, mr1);
        ModelLoader.setCustomModelResourceLocation(item, 0, mr1);
    }

    @SubscribeEvent
    public static void onRegistryItem(RegistryEvent.Register<Item> e) {
        e.getRegistry().register(new ItemKey());
        e.getRegistry().register(new ItemCoconut("coconut", 3, 2, false));
        e.getRegistry().register(new ItemBestSword("bsword", MyMod.TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolHoe("mhoe", MyMod.TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolAxe("maxe", MyMod.TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolSpade("mspade", MyMod.TOOL_MATERIAL));
        e.getRegistry().register(new ItemToolPickaxe("mpick", MyMod.TOOL_MATERIAL));

    }

    @SubscribeEvent
    @SideOnly(Side.CLIENT)
    public static void onRegistryModel(ModelRegistryEvent e) {
        registryModel(KEY);
        registryModel(COCONUT);
        registryModel(BSWORD);
        registryModel(MAXE);
        registryModel(MSPADE);
        registryModel(MPICKAXE);
        registryModel(MHOE);
    }

}
 
Ты перестал использовать @ObjectHolder и forge перестал наполнять поля значениями.
Можно вернуть аннотации или переписать так:
Java:
@Mod.EventBusSubscriber
public class ItemsRegistry {
    public static Item KEY;
    public static Item COCONUT;

    @SideOnly(Side.CLIENT)
    private static void registryModel(Item item){
        final ResourceLocation regName = item.getRegistryName();
        final ModelResourceLocation mr1 = new ModelResourceLocation(regName, "inventory");
        ModelBakery.registerItemVariants(item, mr1);
        ModelLoader.setCustomModelResourceLocation(item, 0, mr1);
    }

    @SubscribeEvent
    public static void onRegistryItem(RegistryEvent.Register<Item> e) {
        e.getRegistry().register(KEY=new ItemKey());
        e.getRegistry().register(COCONUT=new ItemCoconut("coconut", 3, 2, false));

    }

    @SubscribeEvent
    @SideOnly(Side.CLIENT)
    public static void onRegistryModel(ModelRegistryEvent e) {
        registryModel(KEY);
        registryModel(COCONUT);
    }

}
Для двух предметов для примера, для остальных сам по подобию, копипаста получается
 
Назад
Сверху