Jump to content

Recommended Posts

Posted

Hello, I am an experienced plugin developer for bukkit and spout. However, when going through the tutorial for basic adding of a crafting recipe. The mod now crashes my game on launch. Below is the error and my code. The error is pointing to line 35 of the Generic class which is just then ItemStack commandBlock. I'm not sure what is wrong with it. Thanks for any help!

Error:

---- Minecraft Crash Report ----
// Oh - I know what I did wrong!

Time: 7/30/13 4:07 PM
Description: There was a severe problem during mod loading that has caused the game to fail

cpw.mods.fml.common.LoaderException: java.lang.NoSuchFieldError: commandBlock
at cpw.mods.fml.common.LoadController.transition(LoadController.java:149)
at cpw.mods.fml.common.Loader.initializeMods(Loader.java:698)
at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:232)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:506)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:796)
at net.minecraft.client.main.Main.main(SourceFile:101)
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:57)
at net.minecraft.launchwrapper.Launch.main(Launch.java:18)
Caused by: java.lang.NoSuchFieldError: commandBlock
at tutorial.generic.Generic.load(Generic.java:35)
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 cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:540)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174)
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 com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105)
at cpw.mods.fml.common.Loader.initializeMods(Loader.java:697)
... 10 more


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
Minecraft Version: 1.6.2
Operating System: Windows 7 (x86) version 6.1
Java Version: 1.7.0_25, Oracle Corporation
Java VM Version: Java HotSpot(TM) Client VM (mixed mode, sharing), Oracle Corporation
Memory: 50955944 bytes (48 MB) / 115183616 bytes (109 MB) up to 518979584 bytes (494 MB)
JVM Flags: 2 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx512M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Suspicious classes: FML and Forge are installed
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v8.04 FML v6.2.35.804 Minecraft Forge 9.10.0.804 18 mods loaded, 18 mods active
mcp{8.04} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized
FML{6.2.35.804} [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
Forge{9.10.0.804} [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
BetterSprinting{v10} [better Sprinting Coremod] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
CodeChickenCore{0.9.0.0} [CodeChicken Core] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
NotEnoughItems{1.6.0.4} [Not Enough Items] (NotEnoughItems 1.6.0.4.jar) Unloaded->Constructed->Pre-initialized->Initialized
mod_bspkrsCore{v3.03(1.6.2)} [bspkrsCore] ([1.6.2]bspkrsCorev3.03.zip) Unloaded->Constructed->Pre-initialized->Initialized
DamageIndicatorsMod{2.8.5.1} [Damage Indicators] (1.6.2 DamageIndicators v2.8.5.1.zip) Unloaded->Constructed->Pre-initialized->Initialized
mod_ReiMinimap{v3.4_01 [1.6.2]} [mod_ReiMinimap] ([1.6.2]ReiMinimap_v3.4_01.zip) Unloaded->Constructed->Pre-initialized->Initialized
TreeCapitator{Forge 1.6.2.r01} [TreeCapitator] ([1.6.2]TreeCapitator.Forge.1.6.2.r01.Uni.CoreMod.jar) Unloaded->Constructed->Pre-initialized->Initialized
Backpack{1.12.13} [backpack] (backpack-1.12.13-1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized
buddycam{1.6.2 a} [buddyCam] (buddycam-1.6.2_a.zip) Unloaded->Constructed->Pre-initialized->Initialized
ComputerCraft{1.55} [ComputerCraft] (ComputerCraft1.55.zip) Unloaded->Constructed->Pre-initialized->Initialized
CCTurtle{1.55} [ComputerCraft Turtles] (ComputerCraft1.55.zip) Unloaded->Constructed->Pre-initialized->Initialized
RopesPlus{1.4.3} [Ropes+] (RopePlus_1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized
row{1.6.2-13.07.30-0} [Rails of War] (RoW-162-130730-0.zip) Unloaded->Constructed->Pre-initialized->Initialized
Generic{0.0.0} [Generic] (Tutorial.jar) Unloaded->Constructed->Pre-initialized->Errored
AS_UpdateCheck{1.1.0} [AtomicStryker Update Check Mod] (UpdateCheckerMod_1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized

 

Code:

package tutorial.generic;

import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.registry.GameRegistry;

@Mod(modid="Generic", name="Generic", version="0.0.0")
@NetworkMod(clientSideRequired=true, serverSideRequired=false)
public class Generic {

        // The instance of your mod that Forge uses.
        @Instance("Generic")
        public static Generic instance;
        
        // Says where the client and server 'proxy' code is loaded.
        @SidedProxy(clientSide="tutorial.generic.client.ClientProxy", serverSide="tutorial.generic.CommonProxy")
        public static CommonProxy proxy;
        
        @EventHandler
        public void preInit(FMLPreInitializationEvent event) {
                // Stub Method
        }
        
        @EventHandler
        public void load(FMLInitializationEvent event) {
                proxy.registerRenderers();
                ItemStack commandStack = new ItemStack(Block.commandBlock);
            	ItemStack redstoneStack = new ItemStack(Block.redstoneWire);
            	ItemStack repeaterStack = new ItemStack(Block.redstoneRepeaterIdle);

            	GameRegistry.addRecipe(commandStack, "xy", "yx", 'x', redstoneStack, 'y', repeaterStack);
        }
        
        @EventHandler
        public void postInit(FMLPostInitializationEvent event) {
                // Stub Method
        }
}

Posted

yay go forge :D, boo bukkit

 

  Quote
Below is the error and my code.

but you forgot to post it :P

edit

 

can we have logs (i dont know just by looking at it)

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/30/2013 at 8:17 PM, hydroflame said:

yay go forge :D, boo bukkit

 

  Quote
Below is the error and my code.

but you forgot to post it :P

edit

 

can we have logs (i dont know just by looking at it)

 

Ya sorry about that. I program on one computer and test on the other so I had to switch back and forth and edit my posts a few times to that the rror code and java code could be in the post.  ;D

Posted

which IDE are you using ?

the error is

NoSuchFieldError meaning at compile time it find it, but at run time it doesnt, here with forge we have something called obfuscation (something i dont know if bukkit does)

but basicly this mean that we will change the names back to their original when were done coding

 

so net.minecraft.client.Minecraft class becomes "jd"  (or something similar, 2-3 letter), basicly if you're using a special IDE you might be doing things weirdly and it obfuscate the code before you run it, meaning that commandBlock becomes something else

 

eclipse ?

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/30/2013 at 8:23 PM, hydroflame said:

which IDE are you using ?

the error is

NoSuchFieldError meaning at compile time it find it, but at run time it doesnt, here with forge we have something called obfuscation (something i dont know if bukkit does)

but basicly this mean that we will change the names back to their original when were done coding

 

so net.minecraft.client.Minecraft class becomes "jd"  (or something similar, 2-3 letter), basicly if you're using a special IDE you might be doing things weirdly and it obfuscate the code before you run it, meaning that commandBlock becomes something else

 

eclipse ?

 

That is what I'm using. However, I should note that I am having to export my jar file as Eclipse can't run the modded minecraft for some strange reason.

Posted

oh i know

yeah basicly you're not following the correct procedure to release a mod

 

ok so once your code is all good (and it works in eclipse)

 

goto mcp/

run recompile.bat (.sh if you're on linux)

run reobfuscate.bat (.sh if you're on linux)

goto mcp/reobf/minecraft/

zip everythign in there (ZIP, not rar, 7z, tar.gz, tar.bz etc)

rename the file to yourmodname.jar

place that jar into .minecraft/mod

run minecraft

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/30/2013 at 8:36 PM, hydroflame said:

oh i know

yeah basicly you're not following the correct procedure to release a mod

 

ok so once your code is all good (and it works in eclipse)

 

goto mcp/

run recompile.bat (.sh if you're on linux)

run reobfuscate.bat (.sh if you're on linux)

goto mcp/reobf/minecraft/

zip everythign in there (ZIP, not rar, 7z, tar.gz, tar.bz etc)

rename the file to yourmodname.jar

place that jar into .minecraft/mod

run minecraft

 

Okay so I am in the process of doing what you said. But I have to do this whole thing every time I want to test my mod?

Posted
  On 7/30/2013 at 8:52 PM, hydroflame said:

no in eclispe you can press the green arrow and everything should be fine

 

It isn't though. It won't run the modded minecraft. Otherwise I would have done that like the tutorial said. I have 1.6.2 installed and everything.

Posted
  Quote
I should note that I am having to export my jar file as Eclipse can't run the modded minecraft for some strange reason.

i misunderstood that for, "im trying to make a release"

 

in your eclipse workspace do you have the net.* package ? (net.minecraft.*)

how to debug 101:http://www.minecraftforge.net/wiki/Debug_101

-hydroflame, author of the forge revolution-

Posted
  On 7/30/2013 at 9:00 PM, hydroflame said:

  Quote
I should note that I am having to export my jar file as Eclipse can't run the modded minecraft for some strange reason.

i misunderstood that for, "im trying to make a release"

 

in your eclipse workspace do you have the net.* package ? (net.minecraft.*)

 

I do. The error I'm getting is actually that of JVM.

 

EDIT: Sometimes it works just fine. When it does work and the wrapped minecraft is loaded, my mod is listed but the crafting recipe does not work.

Posted
  On 7/30/2013 at 9:00 PM, hydroflame said:

  Quote
I should note that I am having to export my jar file as Eclipse can't run the modded minecraft for some strange reason.

i misunderstood that for, "im trying to make a release"

 

in your eclipse workspace do you have the net.* package ? (net.minecraft.*)

 

Everything seems to work now except the crafting recipe.

Posted
  On 7/30/2013 at 8:23 PM, hydroflame said:

which IDE are you using ?

the error is

NoSuchFieldError meaning at compile time it find it, but at run time it doesnt, here with forge we have something called obfuscation (something i dont know if bukkit does)

but basicly this mean that we will change the names back to their original when were done coding

 

so net.minecraft.client.Minecraft class becomes "jd"  (or something similar, 2-3 letter), basicly if you're using a special IDE you might be doing things weirdly and it obfuscate the code before you run it, meaning that commandBlock becomes something else

 

eclipse ?

 

Okay I did everything you suggested. Recompiled and reobed. But I am still getting this error when using the files exported to the reobf folder.

 

---- Minecraft Crash Report ----
// I'm sorry, Dave.

Time: 7/30/13 9:09 PM
Description: There was a severe problem during mod loading that has caused the game to fail

cpw.mods.fml.common.LoaderException: java.lang.NoSuchFieldError: commandBlock
at cpw.mods.fml.common.LoadController.transition(LoadController.java:149)
at cpw.mods.fml.common.Loader.initializeMods(Loader.java:698)
at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:232)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:506)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:796)
at net.minecraft.client.main.Main.main(SourceFile:101)
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:57)
at net.minecraft.launchwrapper.Launch.main(Launch.java:18)
Caused by: java.lang.NoSuchFieldError: commandBlock
at tutorial.generic.Generic.load(Generic.java:35)
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 cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:540)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174)
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 com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105)
at cpw.mods.fml.common.Loader.initializeMods(Loader.java:697)
... 10 more


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
Minecraft Version: 1.6.2
Operating System: Windows 7 (x86) version 6.1
Java Version: 1.7.0_25, Oracle Corporation
Java VM Version: Java HotSpot(TM) Client VM (mixed mode, sharing), Oracle Corporation
Memory: 52324272 bytes (49 MB) / 115990528 bytes (110 MB) up to 518979584 bytes (494 MB)
JVM Flags: 2 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx512M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Suspicious classes: FML and Forge are installed
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v8.04 FML v6.2.35.804 Minecraft Forge 9.10.0.804 19 mods loaded, 19 mods active
mcp{8.04} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized
FML{6.2.35.804} [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
Forge{9.10.0.804} [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
BetterSprinting{v10} [better Sprinting Coremod] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
CodeChickenCore{0.9.0.0} [CodeChicken Core] (coremods) Unloaded->Constructed->Pre-initialized->Initialized
NotEnoughItems{1.6.0.4} [Not Enough Items] (NotEnoughItems 1.6.0.4.jar) Unloaded->Constructed->Pre-initialized->Initialized
mod_bspkrsCore{v3.03(1.6.2)} [bspkrsCore] ([1.6.2]bspkrsCorev3.03.zip) Unloaded->Constructed->Pre-initialized->Initialized
CommandBlockRecipe{0.0.1} [CommandBlockRecipe] (1.6.2 CommandBlockRecipe.zip) Unloaded->Constructed->Pre-initialized->Initialized
DamageIndicatorsMod{1.0} [Damage Indicators] (1.6.2 DamageIndicators v2.8.5.1.zip) Unloaded->Constructed->Pre-initialized->Initialized
mod_ReiMinimap{v3.4_01 [1.6.2]} [mod_ReiMinimap] ([1.6.2]ReiMinimap_v3.4_01.zip) Unloaded->Constructed->Pre-initialized->Initialized
TreeCapitator{Forge 1.6.2.r01} [TreeCapitator] ([1.6.2]TreeCapitator.Forge.1.6.2.r01.Uni.CoreMod.jar) Unloaded->Constructed->Pre-initialized->Initialized
Backpack{1.12.13} [backpack] (backpack-1.12.13-1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized
buddycam{1.6.2 a} [buddyCam] (buddycam-1.6.2_a.zip) Unloaded->Constructed->Pre-initialized->Initialized
ComputerCraft{1.55} [ComputerCraft] (ComputerCraft1.55.zip) Unloaded->Constructed->Pre-initialized->Initialized
CCTurtle{1.55} [ComputerCraft Turtles] (ComputerCraft1.55.zip) Unloaded->Constructed->Pre-initialized->Initialized
RopesPlus{1.4.3} [Ropes+] (RopePlus_1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized
row{1.6.2-13.07.30-0} [Rails of War] (RoW-162-130730-0.zip) Unloaded->Constructed->Pre-initialized->Initialized
Generic{0.0.0} [Generic] (Tutorial.jar) Unloaded->Constructed->Pre-initialized->Errored
AS_UpdateCheck{1.1.0} [AtomicStryker Update Check Mod] (UpdateCheckerMod_1.6.2.zip) Unloaded->Constructed->Pre-initialized->Initialized

 

My mod does work fully from within eclipse.

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



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • The specific issue is that items in my inventory wont stack properly. For instance, if I punch a tree down to collect wood, the first block I collected goes to my hand. So when I punch the second block of wood to collect it, it drops, but instead of stacking with the piece of wood already in my hand, it goes to the second slot in my hotbar instead. Another example is that I'll get some dirt, and then when I'm placing it down later I'll accidentally place a block where I don't want it. When I harvest it again, it doesn't go back to the stack that it came from on my hotbar, where it should have gone, but rather into my inventory. That means that if my inventory is full, then the dirt wont be picked up even though there should be space available in the stack I'm holding. The forge version I'm using is 40.3.0, for java 1.18.2. I'll leave the mods I'm using here, and I'd appreciate it if anybody can point me in the right direction in regards to figuring out how to fix this. I forgot to mention that I think it only happens on my server but I'm not entirely sure. PLEASE HELP ME! LIST OF THE MODS. aaa_particles Adorn AdvancementPlaques AI-Improvements AkashicTome alexsdelight alexsmobs AmbientSounds amwplushies Animalistic another_furniture AppleSkin Aquaculture aquamirae architectury artifacts Atlas-Lib AutoLeveling AutoRegLib auudio balm betterfpsdist biggerstacks biomancy BiomesOPlenty blockui blueprint Bookshelf born_in_chaos Botania braincell BrassAmberBattleTowers brutalbosses camera CasinoCraft cfm (MrCrayfish’s Furniture Mod) chat_heads citadel cloth-config Clumps CMDCam CNB cobweb collective comforts convenientcurioscontainer cookingforblockheads coroutil CosmeticArmorReworked CozyHome CrabbersDelight crashexploitfixer crashutilities Create CreativeCore creeperoverhaul cristellib crittersandcompanions Croptopia CroptopiaAdditions CullLessLeaves curios curiouslanterns curiouslights Curses' Naturals CustomNPCs CyclopsCore dannys_expansion decocraft Decoration Mod DecorationDelightRefurbished Decorative Blocks Disenchanting DistantHorizons doubledoors DramaticDoors drippyloadingscreen durabilitytooltip dynamic-fps dynamiclights DynamicTrees DynamicTreesBOP DynamicTreesPlus Easy Dungeons EasyAnvils EasyMagic easy_npc eatinganimation ecologics effective_fg elevatorid embeddium emotecraft enchantlimiter EnchantmentDescriptions EnderMail engineersdecor entityculling entity_model_features entity_texture_features epicfight EvilCraft exlinefurniture expandability explosiveenhancement factory-blocks fairylights fancymenu FancyVideo FarmersDelight fast-ip-ping FastSuite ferritecore finsandtails FixMySpawnR Forge Middle Ages fossil FpsReducer2 furnish GamingDeco geckolib goblintraders goldenfood goodall H.e.b habitat harvest-with-ease hexerei hole_filler huge-structure-blocks HunterIllager iammusicplayer Iceberg illuminations immersive_paintings incubation infinitybuttons inventoryhud InventoryProfilesNext invocore ItemBorders itemzoom Jade jei (Just Enough Items) JetAndEliasArmors journeymap JRFTL justzoom kiwiboi Kobolds konkrete kotlinforforge lazydfu LegendaryTooltips libIPN lightspeed lmft lodestone LongNbtKiller LuckPerms Lucky77 MagmaMonsters malum ManyIdeasCore ManyIdeasDoors marbledsarsenal marg mcw-furniture mcw-lights mcw-paths mcw-stairs mcw-trapdoors mcw-windows meetyourfight melody memoryleakfix Mimic minecraft-comes-alive MineTraps minibosses MmmMmmMmmMmm MOAdecor (ART, BATH, COOKERY, GARDEN, HOLIDAYS, LIGHTS, SCIENCE) MobCatcher modonomicon mods_optimizer morehitboxes mowziesmobs MutantMonsters mysticalworld naturalist NaturesAura neapolitan NekosEnchantedBooks neoncraft2 nerb nifty NightConfigFixes nightlights nocube's_villagers_sell_animals NoSeeNoTick notenoughanimations obscure_api oculus oresabovediamonds otyacraftengine Paraglider Patchouli physics-mod Pillagers Gun PizzaCraft placeableitems Placebo player-animation-lib pneumaticcraft-repressurized polymorph PrettyPipes Prism projectbrazier Psychadelic-Chemistry PuzzlesLib realmrpg_imps_and_demons RecipesLibrary reeves-furniture RegionsUnexplored restrictedportals revive-me Scary_Mobs_And_Bosses selene shetiphiancore ShoulderSurfing smoothboot
    • Hi everyone, I'm currently developing a Forge 1.21 mod for Minecraft and I want to display a custom HUD overlay for a minigame. My goal: When the game starts, all players should see an item/block icon (from the base game, not a custom texture) plus its name/text in the HUD – similar to how the bossbar overlay works. The HUD should appear centered above the hotbar (or at a similar prominent spot), and update dynamically (icon and name change as the target item changes). What I've tried: I looked at many online tutorials and several GitHub repos (e.g. SeasonHUD, MiniHUD), but most of them use NeoForge or Forge versions <1.20 that provide the IGuiOverlay API (e.g. implements IGuiOverlay, RegisterGuiOverlaysEvent). In Forge 1.21, it seems that neither IGuiOverlay nor RegisterGuiOverlaysEvent exist anymore – at least, I can't import them and they are missing from the docs and code completion. I tried using RenderLevelStageEvent as a workaround but it is probably not intended for custom HUDs. I am not using NeoForge, and switching the project to NeoForge is currently not an option for me. I tried to look at the original minecraft source code to see how elements like hearts, hotbar etc are drawn on the screen but I am too new to Minecraft modding to understand. What I'm looking for: What is the correct way to add a custom HUD element (icon + text) in Forge 1.21, given that the previous overlay API is missing? Is there a new recommended event, callback, or method in Forge 1.21 for custom HUD overlays, or is everyone just using a workaround? Is there a minimal open-source example repo for Forge 1.21 that demonstrates a working HUD overlay without relying on NeoForge or deprecated Forge APIs? My ideal solution: Centered HUD element with an in-game item/block icon (from the base game's assets, e.g. a diamond or any ItemStack / Item) and its name as text, with a transparent background rectangle. It should be visible to the players when the mini game is running. Easy to update the item (e.g. static variable or other method), so it can change dynamically during the game. Any help, code snippets, or up-to-date references would be really appreciated! If this is simply not possible right now in Forge 1.21, it would also help to know that for sure. Thank you very much in advance!
    • The simple answer is there is not an easy way. You would need to know how to program in Java, as well as at least some familiarity with how Forge works so you could port the differences. You would also need the sourcecode for the original mod, and permission from the author to modify it, if they did not use some sort of open source license. So it's not impossible, but it would take some effort, but doing so would open up a whole new world of possibilities for you!
    • Does it still crash if you remove holdmyitems? Looks like that mod doesn't work on a server as far as I can tell from the error.  
  • Topics

×
×
  • Create New...

Important Information

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