Jump to content

[1.10.2] My first mod


DiamondCreeper_

Recommended Posts

I am trying to make a mod in 1.10.2 so players can craft spawn eggs (e.g. Creeper spawn egg) based on the items of what that specific mob drops or what the specific mob is made of. (e.g. gunpowder, tnt) However, whenever i try to craft the spawn egg i get a spawn egg labeled "Spawn". and it's colorless. i right click and it doesn't do anything. i am using MCreator 1.7.0 to make this mod. can you please help me with this?

 

 

I call it the "Craftable Spawn Eggs Mod"

Link to comment
Share on other sites

but how do i learn java? i program...BUT I'M NOT THAT ADVANCED IN CODING!!!!!!!!!

 

http://www.learnjavaonline.org/

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

I am trying to make a mod in 1.10.2 so players can craft spawn eggs (e.g. Creeper spawn egg) based on the items of what that specific mob drops or what the specific mob is made of. (e.g. gunpowder, tnt) However, whenever i try to craft the spawn egg i get a spawn egg labeled "Spawn". and it's colorless. i right click and it doesn't do anything. i am using MCreator 1.7.0 to make this mod. can you please help me with this?

 

 

I call it the "Craftable Spawn Eggs Mod"

 

My suggestion is that you look up a video tutorial for modding minecraft and if you don't undestand something about the syntax or a specific subject you look it up at a Java tutorial. There's no point in reading only the Java tutorials and then jump to Minecraft as you may read things you don't need and skip things you really do.

Link to comment
Share on other sites

You may not be that advanced in coding, but that doesn't mean you need to resort to unreliable sources that tend to rather be poop.

 

use the full force, use forge, try to look up an Item tutorial on youtube or the interwebs, learn about metadata for minecraft items. come back whenever with questions.

 

good luck !

Link to comment
Share on other sites

how do i learn java? i program...BUT I'M NOT THAT ADVANCED IN CODING

 

Then you should write a plan. First learn structured programming in any language. Then learn object-oriented programming in any language. Then latch onto a good online Java tutorial and follow it until you can rewrite your last O-O exercise in Java. Then go to Forge's "Getting Started" tutorial. Your first mod should be dirt simple. Literally... add a new form of dirt block to the game that is somehow different from podzol, normal or coarse.

 

When you get stuck, try again to get as much info as possible and then ask for help. When asking for help, give as much info as possible. Never use the phrase "doesn't work". Instead, say what you expected and what you saw instead. If your sticking point includes a crash, always post or link to the crash log. If you don't crash, it's usually helpful to include the log file (not console output). Add as much of your code as might be relevant.

 

All large texts (logs and source files) should be encapsulated in code or spoiler tags.

 

In the case of your spawn egg mod, you should give us the complete class (in tags of course) where the recipes are defined.

The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.

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

    • They were already updated, and just to double check I even did a cleanup and fresh update from that same page. I'm quite sure drivers are not the problem here. 
    • i tried downloading the drivers but it says no AMD graphics hardware has been detected    
    • Update your AMD/ATI drivers - get the drivers from their website - do not update via system  
    • As the title says i keep on crashing on forge 1.20.1 even without any mods downloaded, i have the latest drivers (nvidia) and vanilla minecraft works perfectly fine for me logs: https://pastebin.com/5UR01yG9
    • 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;     }  
  • Topics

×
×
  • Create New...

Important Information

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