Jump to content

Any tutorials for custom armor models in 1.14.4?


Babelincoln1809

Recommended Posts

I'm looking for custom armor model tutorials for 1.14.4, but none are showing up besides for ones that are for 1.12.2. I saw comment on one of them that the process as to implementing custom armor hasn't change, but as following the video things aren't super the same. i'm just looking for a guide on how to do this.

Link to comment
Share on other sites

Create a Model (and texture for it) that extends BipedModel<T extends LivingEntity> for your armor piece.

Override getArmorModel and getArmorTexture in your armor item class.

 

Once you've started, if you have issues, come back here and make sure you post code, logs, what you are trying to achieve (looks/effect/etc), and what is actually happening. :)

  • Thanks 1
Link to comment
Share on other sites

12 hours ago, Ugdhar said:

Once you've started, if you have issues, come back here and make sure you post code, logs, what you are trying to achieve (looks/effect/etc), and what is actually happening. :)

I'm running into this issue in the armor Item class. I'm following a 1.12 video, cause I would be completely lost without reference, but anyways here it is. 

 

https://paste.dimdev.org/ededipubok.java

 

I have no clue what baked Model does, and I'm just a lil lost

 

And I dunno where to put my armor model as well, do I make a new package in models and name it armor?

 

 

 

 

Edited by Babelincoln1809
Link to comment
Share on other sites

12 minutes ago, Ugdhar said:

When I was tinkering, the model I had just extended BipedModel<LivingEntity>.

In the armor item class, used that model in the getArmorModel method.

Yeah, my custom armor class is still giving me issues. The actual model for my armor extends BipedModel<LivingEntity>, but still no clue on what's wrong with the armor class

Link to comment
Share on other sites

7 minutes ago, Babelincoln1809 said:

Yeah, my custom armor class is still giving me issues.

What kind of issues? Logs help, screenshots also if it's something visual.

If you have your code on github that makes it easier to share/debug with other people too. :)

Link to comment
Share on other sites

7 minutes ago, Ugdhar said:

What kind of issues? Logs help, screenshots also if it's something visual.

If you have your code on github that makes it easier to share/debug with other people too. :)

Here is the log. I do have incomplete code though cause I'm still stumped with the custom armor class.

https://paste.dimdev.org/gobubuhuka.sql

 

Here is my armor class, still stumped on the errors

https://paste.dimdev.org/kuyuyutama.java

 

Here is the model

https://paste.dimdev.org/ejavifujug.java

 

I'll look into setting up an account for github, but I think my only issue is the armor class, and possibly where to put the model.java

Link to comment
Share on other sites

Quote

public class ArcherArmor extends ArmorItem BipedModel{

I don't think you want BipedModel there

 

Your IDE should have given you an error about that, my workspace is 1.15.2, but I don't think they'd be that different. Also it is saying it has compile errors (which your IDE should have warned you about) because the super constructor you call doesn't exist.

Quote

The constructor ArcherArmor(ArmorMaterialList, EquipmentSlotType, Item.Properties) is undefined

and this error happens in code that you didn't share:

Quote

[09Apr2020 18:37:32.058] [Client thread/ERROR] [net.minecraftforge.fml.javafmlmod.FMLModContainer/LOADING]: Caught exception during event RegistryEvent.Register<minecraft:item> dispatch for modid projectdawn

that's why a github is helpful :) Shows the big picture!

Link to comment
Share on other sites

1 hour ago, Babelincoln1809 said:

Anywhere on GitHub I can reference code for this?

Possibly, but I don't know for sure, I haven't looked for or seen anything

I meant more that if your code was on github, it would be easier to see where the errors are.

Also, what IDE are you using? I find it concerning that it didn't warn you about compile errors before attempting to run it anyway.

Link to comment
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.
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

    • Hello everyone, I'm making this post to seek help for my modded block, It's a special block called FrozenBlock supposed to take the place of an old block, then after a set amount of ticks, it's supposed to revert its Block State, Entity, data... to the old block like this :  The problem I have is that the system breaks when handling multi blocks (I tried some fix but none of them worked) :  The bug I have identified is that the function "setOldBlockFields" in the item's "setFrozenBlock" function gets called once for the 1st block of multiblock getting frozen (as it should), but gets called a second time BEFORE creating the first FrozenBlock with the data of the 1st block, hence giving the same data to the two FrozenBlock :   Old Block Fields set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=head] BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@73681674 BlockEntityData : id:"minecraft:bed",x:3,y:-60,z:-6} Old Block Fields set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} Frozen Block Entity set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockPos{x=3, y=-60, z=-6} BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} Frozen Block Entity set BlockState : Block{minecraft:black_bed}[facing=east,occupied=false,part=foot] BlockPos{x=2, y=-60, z=-6} BlockEntity : net.minecraft.world.level.block.entity.BedBlockEntity@6d1aa3da BlockEntityData : {id:"minecraft:bed",x:2,y:-60,z:-6} here is the code inside my custom "freeze" item :    @Override     public @NotNull InteractionResult useOn(@NotNull UseOnContext pContext) {         if (!pContext.getLevel().isClientSide() && pContext.getHand() == InteractionHand.MAIN_HAND) {             BlockPos blockPos = pContext.getClickedPos();             BlockPos secondBlockPos = getMultiblockPos(blockPos, pContext.getLevel().getBlockState(blockPos));             if (secondBlockPos != null) {                 createFrozenBlock(pContext, secondBlockPos);             }             createFrozenBlock(pContext, blockPos);             return InteractionResult.SUCCESS;         }         return super.useOn(pContext);     }     public static void createFrozenBlock(UseOnContext pContext, BlockPos blockPos) {         BlockState oldState = pContext.getLevel().getBlockState(blockPos);         BlockEntity oldBlockEntity = oldState.hasBlockEntity() ? pContext.getLevel().getBlockEntity(blockPos) : null;         CompoundTag oldBlockEntityData = oldState.hasBlockEntity() ? oldBlockEntity.serializeNBT() : null;         if (oldBlockEntity != null) {             pContext.getLevel().removeBlockEntity(blockPos);         }         BlockState FrozenBlock = setFrozenBlock(oldState, oldBlockEntity, oldBlockEntityData);         pContext.getLevel().setBlockAndUpdate(blockPos, FrozenBlock);     }     public static BlockState setFrozenBlock(BlockState blockState, @Nullable BlockEntity blockEntity, @Nullable CompoundTag blockEntityData) {         BlockState FrozenBlock = BlockRegister.FROZEN_BLOCK.get().defaultBlockState();         ((FrozenBlock) FrozenBlock.getBlock()).setOldBlockFields(blockState, blockEntity, blockEntityData);         return FrozenBlock;     }  
    • It is an issue with quark - update it to this build: https://www.curseforge.com/minecraft/mc-mods/quark/files/3642325
    • Remove Instant Massive Structures Mod from your server     Add new crash-reports with sites like https://paste.ee/  
    • Update your drivers: https://www.amd.com/en/support/graphics/amd-radeon-r9-series/amd-radeon-r9-200-series/amd-radeon-r9-280x
  • Topics

×
×
  • Create New...

Important Information

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