Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[1.8.9] Items'n'Blocks - How to use the messed up api?

Recommended Posts

Hi again.

Does anyone know how exactly the Block/item registering in 1.8.9 works?

The Problem I have with this, is that addVariantName is depreceated (doesn't work anymore) and replaced by registerItemVariants, like in 1.9. But most of 1.9's API like manual Registration (setRegistryName etc.) isn't implemented yet.


At the moment I have:

the actual block registration on server and client side in the pre-init phase:

GameRegistry.registerBlock(block, ModWoodItem.class, name, block, subblockNames.toArray(new String[subblockNames.size()]));
//name = Blockstatename


...the Item Variant Model Registration on the client side in the pre-init phase:

ModelBakery.registerItemVariants(Item.getItemFromBlock(block), new ResourceLocation(iconName));
//iconName = modid:unwrappedandunlocalizedname_variant


and the "Block-To-Model" Registration on the Client side in the pre-init phase:

for (DefinesWood type:subBlocks())
            final String subName = type.speciesName();
            final int dMD=((ModWoodBlock.EnumType)type.woodSubBlockVariant()).getId();
            final String iconName = getUnlocalizedName().substring(getUnlocalizedName().indexOf('.')+1)+"_"+subName;
            // iconName = modid:unwrappedandunlocalizedname_variant
            ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this),dMD,new ModelResourceLocation(iconName,"inventory"));


The Blocks are registered, but the Models are not and forge says

Model definition for location dendrology:planks0#variant=acemus not found
Model definition for location dendrology:planks_acemus#inventory not found

I know it must be something simple I overlooked (like the last time), but I just don't get it  :(


So I post it here.

"Driven by hope that there is hope again" - random guy in an RPG Maker Trashgame


The fact that there isn't ANYTHING about 1.8.8 and 1.8.9 on the web except finished mods bothers me for some reason...



Link to post
Share on other sites

Every knowledge can be useful, even how to mod outdated MC versions


Uh, no. The stuff that hasn't changed may be useful, but you can learn it just as well on a newer version. The stuff that has changed is useless to learn precisely because it has changed.

Don't make mods if you don't know Java.

Check out my website: http://shadowfacts.net

Developer of many mods

Link to post
Share on other sites

Yes it does. I'm talking about research, man. If I selled the mod, I would just need to know how to work with the newest version, since there are more people using it, but as a gamedev I want to learn how the different versions of forge/minecraft work. Not by looking at the deobfuscated code, the practical way.


Alright, since this version is not supported anymore, I will ask the question in an unofficial forum, no problem.

Thank you nevertheless.



Link to post
Share on other sites

You are right.

I'd still rather make a mod for every MC release having a stable Forge version.

Since I plan to "resurrect" more mods and there are people, who can't or don't want to play the newer versions (e.g. because of modpack compatibility), I need to know how mod in 1.8 as well




Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

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.

  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • Post your stacktrace. Also how do you register your event?
    • after the 2nd click it places blocks should that be on the server also?
    • We only send vanilla packets. Any of your random translator projects is on them to support these vanilla packets. There is nothing we need to do on our end, and there is nothing we can do to support hacky setups like this.
    • Whenever i try to run the installer it says This application requires a java runtime environment 1.6.0 im runing windows 10
    • So I thought that I had gotten pretty far on my own but now apparently my code crashes the game. I am new to using the forge API and modding in general and some help on why this crashes the game and how to fix it would be greatly appreciated:   public class SpecialItem extends ShootableItem {      public SpecialItem(Properties properties){ super(properties); }      @Override      public Predicate<ItemStack> getInventoryAmmoPredicate() { return null; }      @Override      public int func_230305_d_() { return 15; }      public int tcount=0;      @SubscribeEvent public void ontick(TickEvent.ClientTickEvent event){            tcount++;      }      @Override      public ActionResult<ItemStack> onItemRightClick(World worldIn, PlayerEntity playerIn, Hand handIn) {      if (!playerIn.getCooldownTracker().hasCooldown(this)) {           playerIn.getCooldownTracker().setCooldown(this, 40);           Vector3d v3 = playerIn.getLook(1);           for (tcount = 0; tcount <= 40;) {                if (tcount%10 == 0 && tcount!= 40) {                     final SmallFireballEntity entitysmallfireball = new SmallFireballEntity(playerIn.getEntityWorld(), playerIn.getPosX(), playerIn.getPosY() + playerIn.getEyeHeight() - 0.4, playerIn.getPosZ(), v3.x + playerIn.getRNG().nextGaussian() * 0.05, v3.y, v3.z);                     entitysmallfireball./* shoot */func_234612_a_(playerIn, playerIn.rotationPitch, playerIn.rotationYaw, 0.0f, 1.5f, 1.0f); worldIn.addEntity(entitysmallfireball); } } tcount = 0;                     return ActionResult.resultSuccess(playerIn.getHeldItem(handIn));            } return ActionResult.resultFail(playerIn.getHeldItem(handIn));      } }
  • Topics

  • Who's Online (See full list)

  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.