Jump to content

[1.12] Help with registering entity into game


Big_Bad_E

Recommended Posts

Hello, I am working on a creepypasta mod in which there is a mob, but in 1.12 I can not seem to get my entity to render into the game, I do /summon Entity303 and it returns an error.

/Summon Error

Spoiler

20:22:39] [pool-2-thread-1/WARN]: Couldn't look up profile properties for com.mojang.authlib.GameProfile@3b104d82[id=3dc62e7d-7679-3ce7-b3a5-cf513aa6eb7c,name=Player863,properties={},legacy=false]
com.mojang.authlib.exceptions.AuthenticationException: The client has sent too many requests within a certain amount of time
    at com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService.makeRequest(YggdrasilAuthenticationService.java:79) ~[YggdrasilAuthenticationService.class:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillGameProfile(YggdrasilMinecraftSessionService.java:180) [YggdrasilMinecraftSessionService.class:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService$1.load(YggdrasilMinecraftSessionService.java:60) [YggdrasilMinecraftSessionService$1.class:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService$1.load(YggdrasilMinecraftSessionService.java:57) [YggdrasilMinecraftSessionService$1.class:?]
    at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716) [guava-21.0.jar:?]
    at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424) [guava-21.0.jar:?]
    at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298) [guava-21.0.jar:?]
    at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211) [guava-21.0.jar:?]
    at com.google.common.cache.LocalCache.get(LocalCache.java:4154) [guava-21.0.jar:?]
    at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158) [guava-21.0.jar:?]
    at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147) [guava-21.0.jar:?]
    at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153) [guava-21.0.jar:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillProfileProperties(YggdrasilMinecraftSessionService.java:170) [YggdrasilMinecraftSessionService.class:?]
    at net.minecraft.client.Minecraft.getProfileProperties(Minecraft.java:3172) [Minecraft.class:?]
    at net.minecraft.client.resources.SkinManager$3.run(SkinManager.java:138) [SkinManager$3.class:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_131]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]
[20:22:49] [main/INFO]: [CHAT] minecraft:area_effect_cloud, minecraft:armor_stand, minecraft:arrow, minecraft:bat, minecraft:blaze, minecraft:boat, minecraft:cave_spider, minecraft:chest_minecart, minecraft:chicken, minecraft:commandblock_minecart, minecraft:cow, minecraft:creeper, minecraft:donkey, minecraft:dragon_fireball, minecraft:egg, minecraft:elder_guardian, minecraft:ender_crystal, minecraft:ender_dragon, minecraft:ender_pearl, minecraft:enderman, minecraft:endermite, minecraft:evocation_fangs, minecraft:evocation_illager, minecraft:eye_of_ender_signal, minecraft:falling_block, minecraft:fireball, minecraft:fireworks_rocket, minecraft:furnace_minecart, minecraft:ghast, minecraft:giant, minecraft:guardian, minecraft:hopper_minecart, minecraft:horse, minecraft:husk, minecraft:illusion_illager, minecraft:item, minecraft:item_frame, minecraft:leash_knot, minecraft:lightning_bolt, minecraft:llama, minecraft:llama_spit, minecraft:magma_cube, minecraft:minecart, minecraft:mooshroom, minecraft:mule, minecraft:ocelot, minecraft:painting, minecraft:parrot, minecraft:pig, minecraft:polar_bear, minecraft:potion, minecraft:rabbit, minecraft:sheep, minecraft:shulker, minecraft:shulker_bullet, minecraft:silverfish, minecraft:skeleton, minecraft:skeleton_horse, minecraft:slime, minecraft:small_fireball, minecraft:snowball, minecraft:snowman, minecraft:spawner_minecart, minecraft:spectral_arrow, minecraft:spider, minecraft:squid, minecraft:stray, minecraft:tnt, minecraft:tnt_minecart, minecraft:vex, minecraft:villager, minecraft:villager_golem, minecraft:vindication_illager, minecraft:witch, minecraft:wither, minecraft:wither_skeleton, minecraft:wither_skull, minecraft:wolf, minecraft:xp_bottle, minecraft:xp_orb, minecraft:zombie, minecraft:zombie_horse, minecraft:zombie_pigman, minecraft:zombie_villager
[20:22:55] [Server thread/WARN]: Skipping Entity with id minecraft:entity303

My Classes

Main

package Entity303;

import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import Entity303.Proxy.CommonProxy;

@Mod(modid = Referance.MODID, name = Referance.NAME, version = Referance.VERSION)
public class entity303 {
	@SidedProxy(clientSide = Referance.CLIENTPROXY, serverSide = Referance.COMMONPROXY)
	public static CommonProxy proxy;
	
	@EventHandler
	public void preInit(FMLPreInitializationEvent event) {
		proxy.preInit(event);
	}
	@EventHandler
	public void Init(FMLInitializationEvent event) {
		proxy.Init(event);
	}
	@EventHandler
	public void postInit(FMLPostInitializationEvent event) {
		proxy.postInit(event);
	}
}

Entity

package Entity303.Entity;

import net.minecraft.block.Block;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.EnumCreatureAttribute;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.EntityAIHurtByTarget;
import net.minecraft.entity.ai.EntityAILookIdle;
import net.minecraft.entity.ai.EntityAIMoveTowardsRestriction;
import net.minecraft.entity.ai.EntityAINearestAttackableTarget;
import net.minecraft.entity.ai.EntityAISwimming;
import net.minecraft.entity.ai.EntityAIWanderAvoidWater;
import net.minecraft.entity.ai.EntityAIWatchClosest;
import net.minecraft.entity.monster.EntityCreeper;
import net.minecraft.entity.monster.EntityMob;
import net.minecraft.entity.monster.EntityPigZombie;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.init.SoundEvents;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import net.minecraft.util.SoundEvent;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;

public class Entity303 extends EntityMob {
	
	 public Entity303(World worldIn)
	    {
	        super(worldIn);
	        this.setSize(0.6F, 1.95F);
	    }
	    public void registerGlobalEntityID () {
		
	}
		protected void initEntityAI()
	    {
	        this.tasks.addTask(0, new EntityAISwimming(this));
	        this.tasks.addTask(5, new EntityAIMoveTowardsRestriction(this, 1.0D));
	        this.tasks.addTask(7, new EntityAIWanderAvoidWater(this, 1.0D));
	        this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
	        this.tasks.addTask(8, new EntityAILookIdle(this));
	        this.applyEntityAI();
	    }

	    protected void applyEntityAI()
	    {
	        this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, true, new Class[] {EntityPigZombie.class}));
	        this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true));
	    }

	    protected void applyEntityAttributes()
	    {
	        super.applyEntityAttributes();
	        this.getEntityAttribute(SharedMonsterAttributes.FOLLOW_RANGE).setBaseValue(35.0D);
	        this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.23000000417232513D);
	        this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(3.0D);
	    }

	    protected void entityInit()
	    {
	        super.entityInit();
	    }
	    protected int getExperiencePoints(EntityPlayer player)
	    {
	        this.experienceValue = (int)((float)this.experienceValue * 2.5F);
	        return super.getExperiencePoints(player);
	    }
	    //Entity Update
	    public void onLivingUpdate()
	    {
	        super.onLivingUpdate();
	    }
	    //When attacked
	    public boolean attackEntityFrom(DamageSource source, float amount)
	    {
	        if (super.attackEntityFrom(source, amount))
	        {
	            EntityLivingBase entitylivingbase = this.getAttackTarget();

	            if (entitylivingbase == null && source.getTrueSource() instanceof EntityLivingBase)
	            {
	                entitylivingbase = (EntityLivingBase)source.getTrueSource();
	            }
	        }
	        else
	        {
	            return false;
	        }
			return false;
	    }
	    protected SoundEvent getAmbientSound()
	    {
	        return SoundEvents.ENTITY_ZOMBIE_AMBIENT;
	    }

	    protected SoundEvent getHurtSound(DamageSource p_184601_1_)
	    {
	        return SoundEvents.ENTITY_ZOMBIE_HURT;
	    }

	    protected SoundEvent getDeathSound()
	    {
	        return SoundEvents.ENTITY_ZOMBIE_DEATH;
	    }

	    protected SoundEvent getStepSound()
	    {
	        return SoundEvents.ENTITY_ZOMBIE_STEP;
	    }

	    protected void playStepSound(BlockPos pos, Block blockIn)
	    {
	        this.playSound(this.getStepSound(), 0.15F, 1.0F);
	    }

	    /**
	     * Get this Entity's EnumCreatureAttribute
	     */
	    public EnumCreatureAttribute getCreatureAttribute()
	    {
	        return EnumCreatureAttribute.UNDEAD;
	    }
	    public void onDeath(DamageSource cause)
	    {
	        super.onDeath(cause);

	        if (cause.getTrueSource() instanceof EntityPlayer)
	        {
	            EntityPlayer player = (EntityPlayer)cause.getTrueSource();
	            ItemStack itemstack = this.getSkullDrop();
	        }
	    }
	    protected ItemStack getSkullDrop()
	    {
	        return new ItemStack(Items.SKULL, 1, 2);
	    }
}

Entity Render

package Entity303.Entity;

import net.minecraft.client.model.ModelBase;
import net.minecraft.client.renderer.entity.RenderLiving;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.util.ResourceLocation;
import Entity303.Referance;

public class RenderEntity303 extends RenderLiving
{
    protected ResourceLocation Entity303Texture;

    public RenderEntity303(RenderManager renderManager, ModelBase par1ModelBase, float parShadowSize)
    {
        super(renderManager, par1ModelBase, parShadowSize);
        setEntityTexture();        
    }
 
    @Override
    protected void preRenderCallback(EntityLivingBase entity, float f)
    {
        preRenderCallbackEntity303((Entity303) entity, f);
    }
  
    protected void preRenderCallbackEntity303(Entity303 entity, float f)
    {
        // some people do some G11 transformations or blends here, like you can do
        // GL11.glScalef(2F, 2F, 2F); to scale up the entity
        // which is used for Slime entities.  I suggest having the entity cast to
        // your custom type to make it easier to access fields from your 
        // custom entity, eg. GL11.glScalef(entity.scaleFactor, entity.scaleFactor, 
        // entity.scaleFactor); 
    }

    protected void setEntityTexture()
    {
        Entity303Texture = new ResourceLocation(Referance.MODID+":textures/entity/Entity303.png");
    }

    /**
    * Returns the location of an entity's texture. Doesn't seem to be called 
    * unless you call Render.bindEntityTexture.
    */
    @Override
    protected ResourceLocation getEntityTexture(Entity par1Entity)
    {
        return Entity303Texture;
    }
}

Entity Model

package Entity303.Entity;

import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
import net.minecraft.entity.monster.EntityZombie;
import net.minecraft.util.math.MathHelper;

public class ModelEntity303 extends ModelBiped {
	 public ModelEntity303()
	    {
	        this(0.0F, false);
	    }

	    public ModelEntity303(float modelSize, boolean p_i1168_2_)
	    {
	        super(modelSize, 0.0F, 64, p_i1168_2_ ? 32 : 64);
	    }

	    /**
	     * Sets the model's various rotation angles. For bipeds, par1 and par2 are used for animating the movement of arms
	     * and legs, where par1 represents the time(so that arms and legs swing back and forth) and par2 represents how
	     * "far" arms and legs can swing at most.
	     */
	    public void setRotationAngles(float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch, float scaleFactor, Entity entityIn)
	    {
	        super.setRotationAngles(limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scaleFactor, entityIn);
	        boolean flag = entityIn instanceof EntityZombie && ((EntityZombie)entityIn).isArmsRaised();
	        float f = MathHelper.sin(this.swingProgress * (float)Math.PI);
	        float f1 = MathHelper.sin((1.0F - (1.0F - this.swingProgress) * (1.0F - this.swingProgress)) * (float)Math.PI);
	        this.bipedRightArm.rotateAngleZ = 0.0F;
	        this.bipedLeftArm.rotateAngleZ = 0.0F;
	        this.bipedRightArm.rotateAngleY = -(0.1F - f * 0.6F);
	        this.bipedLeftArm.rotateAngleY = 0.1F - f * 0.6F;
	        float f2 = -(float)Math.PI / (flag ? 1.5F : 2.25F);
	        this.bipedRightArm.rotateAngleX = f2;
	        this.bipedLeftArm.rotateAngleX = f2;
	        this.bipedRightArm.rotateAngleX += f * 1.2F - f1 * 0.4F;
	        this.bipedLeftArm.rotateAngleX += f * 1.2F - f1 * 0.4F;
	        this.bipedRightArm.rotateAngleZ += MathHelper.cos(ageInTicks * 0.09F) * 0.05F + 0.05F;
	        this.bipedLeftArm.rotateAngleZ -= MathHelper.cos(ageInTicks * 0.09F) * 0.05F + 0.05F;
	        this.bipedRightArm.rotateAngleX += MathHelper.sin(ageInTicks * 0.067F) * 0.05F;
	        this.bipedLeftArm.rotateAngleX -= MathHelper.sin(ageInTicks * 0.067F) * 0.05F;
	    }
}

I have looked at Entity tutorials and couldn't find what is wrong. I believe there is multiple errors, so tell me all the ones you find. I may of messed up on giving the entity an ID, and I tried putting

RenderingRegistry.registerEntityRenderingHandler(EntitySerpent.class, 
      new RenderSerpent(new ModelSerpent(), 0.5F));

into my client proxy preInit but registerEntityRenderingHandler was crossed out and the new Render said it needed another argument. (I copied this out of a tutorial)

Thank you for reading this!

Link to comment
Share on other sites

Well, your main class is useless, nothing of any worth is there (oh, you need it, it just doesn't help solve your problem what so ever because it forwards everything to the proxy classes which you didn't include).

 

You have a registerGlobalEntityID() method in your entity class, which is both useless (it does nothing) and implies you're doing things Wrong. You should not be using global IDs.

 

Third, /summon Entity303 isn't correct. This implies the default domain, minecraft, which your mod is not a part of. You would need /summon MODID:Entity303 using whatever your MODID actually is.

 

Fourth, this is a forum, not a chat room. 37 minutes is hardly people ignoring your thread. Jesus, wait a bit.

Edited by Draco18s
  • Like 1

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

9 hours ago, Draco18s said:

Well, your main class is useless, nothing of any worth is there (oh, you need it, it just doesn't help solve your problem what so ever because it forwards everything to the proxy classes which you didn't include).

 

You have a registerGlobalEntityID() method in your entity class, which is both useless (it does nothing) and implies you're doing things Wrong. You should not be using global IDs.

 

Third, /summon Entity303 isn't correct. This implies the default domain, minecraft, which your mod is not a part of. You would need /summon MODID:Entity303 using whatever your MODID actually is.

 

Fourth, this is a forum, not a chat room. 37 minutes is hardly people ignoring your thread. Jesus, wait a bit.

First of all, I included the main class just in case anyone needed it, but I didn't include the proxys because there was nothing there relevant, and the main class is, well the main class

 

Second, I was trying to do that because I was out of ideas

 

Third, I tried that and /summon Entity303, they are the same thing. You can do /summon without the mod id unless the names overlap.

 

Fourth, it was a joke, my thread was already at the top, I posted this at like 9:30, there wasn't any need to bump it.

 

Also, I am not looking to be told this thread is not a chat room, I came here looking for help and not how to post a tread xD

Link to comment
Share on other sites

4 hours ago, Big_Bad_E said:

but I didn't include the proxys because there was nothing there relevant, and the main class is, well the main class

The main class does nothing but pass the FML lifecycle events to the proxy. If the proxy is likewise useless, then you aren't registering your entity at all.

  • Like 1

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

On 8/27/2017 at 0:30 PM, diesieben07 said:

You also already have a thread about this topic. In the future please do not open duplicate threads.

Sorry, It got so long and annoying to post on, I just started a new one, didn't mean to be rude. I won't do this agian.

On 8/27/2017 at 11:45 AM, Draco18s said:

The main class does nothing but pass the FML lifecycle events to the proxy. If the proxy is likewise useless, then you aren't registering your entity at all.

package Entity303.Proxy;

import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import Entity303.RegistryHandler;
import Entity303.Entity.Entity303;
import Entity303.Entity.RenderEntity303;

public class ClientProxy extends CommonProxy {
	
	public void registerRender(RenderManager rendermanager) {
	}
	public void preInit(FMLPreInitializationEvent event) {
		super.preInit(event);
	}
	public void Init(FMLInitializationEvent event) {
		super.Init(event);
		RegistryHandler.Client();
	}
	public void postInit(FMLPostInitializationEvent event) {
		super.postInit(event);
	}
}
package Entity303.Proxy;

import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import Entity303.RegistryHandler;

public class CommonProxy {
	public void preInit(FMLPreInitializationEvent event) {
		RegistryHandler.Common();
	}
	public void Init(FMLInitializationEvent event) {
		
	}
	public void postInit(FMLPostInitializationEvent event) {
		
	}
}

There, you happy? I don't have anything in there, because like I said I haven't registered it in the proxy because the method that I know isn't for 1.12, as I stated in the post above. if you know the method, please tell me it.

Link to comment
Share on other sites

1 hour ago, Big_Bad_E said:

There, you happy?

No, because now I need your RegistryHandler class.

#ShouldHaveSeenThisComing

  • Like 1

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

41 minutes ago, Big_Bad_E said:

#EntityRegisterClassIsAbove

None of the classes you have posted are the RegistryHandler class. Feel free to ctrl-F that yourself.

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

10 minutes ago, Big_Bad_E said:

I named it Entity303Registry not RegistryHandler, if I need a class called RegistryHandler, I didn't realize, but that is every class I have.

 

Both of the proxy classes you posted reference a class called RegistryHandler. Neither of them reference Entity303Registry.

 

You haven't posted a class called Entity303Registry.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

So Now I need to use the LoadEntityRenders method, but I don't know what the different arguments are. I have my renderManager working, and everything else is dandy, except for it. (I got a different method to work, but it crashed my game.)

Client Proxy

package Entity303.Proxy;

import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import Entity303.RegistryHandler;
import Entity303.Entity.Entity303;
import Entity303.Entity.ModelEntity303;
import Entity303.Entity.RenderEntity303;

public class ClientProxy extends CommonProxy {
	
	public void preInit(FMLPreInitializationEvent event) {
		super.preInit(event);
	}
	public void Init(FMLInitializationEvent event) {
		super.Init(event);
		RegistryHandler.Client();
	}
	public void postInit(FMLPostInitializationEvent event) {
		super.postInit(event);
	}
}

Renderer Class

package Entity303;

import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraftforge.fml.client.registry.RenderingRegistry;
import Entity303.Entity.Entity303;
import Entity303.Entity.ModelEntity303;
import Entity303.Entity.RenderEntity303;

public class RegistryHandler {
	public static void Client() {
		RenderManager renderManager = Minecraft.getMinecraft().getRenderManager();
        renderManager.entityRenderMap.put(Entity303.class, new RenderEntity303(renderManager, new ModelEntity303(), 0));
	}
	public static void Common() {
		
	}
}

Still won't summon :/

Link to comment
Share on other sites

you aren't registering the entity itself, only a renderer for it. 

  • Like 1

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

Let me put it this way:

 

Where are you calling EntityRegistry.registerModEntity?

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

Yes, I don't know how to call upon EntityRegistry.registerModEntity! Thanks for the response, but my question is how to use it. I tried

EntityRegistry.registerModEntity(null, Entity303.class,null, 200, renderManager, 0, 0, false);

Into my RegistryHandler and it crashes

Console Crash Log

Spoiler

[16:31:54] [main/INFO] [FML]: -- System Details --
Details:
    Minecraft Version: 1.12
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_131, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 751031520 bytes (716 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
    JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: 
    Loaded coremods (and transformers): 
    GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 20.19.15.4463' Renderer: 'Intel(R) HD Graphics 5500'
[16:31:54] [main/INFO] [FML]: MinecraftForge v14.21.1.2443 Initialized
[16:31:54] [main/INFO] [FML]: Replaced 921 ore ingredients
[16:31:55] [main/INFO] [FML]: Found 0 mods from the command line. Injecting into mod discoverer
[16:31:55] [main/INFO] [FML]: Searching C:\Users\ethan\Desktop\Modding\run\mods for mods
[16:31:56] [Thread-3/INFO] [FML]: Using sync timing. 200 frames of Display.update took 255326864 nanos
[16:31:59] [main/INFO] [FML]: Forge Mod Loader has identified 5 mods to load
[16:32:00] [main/INFO] [FML]: Attempting connection with missing mods [minecraft, mcp, FML, forge, ent] at CLIENT
[16:32:00] [main/INFO] [FML]: Attempting connection with missing mods [minecraft, mcp, FML, forge, ent] at SERVER
[16:32:02] [main/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Entity303
[16:32:02] [main/INFO] [FML]: Processing ObjectHolder annotations
[16:32:02] [main/INFO] [FML]: Found 1168 ObjectHolder annotations
[16:32:02] [main/INFO] [FML]: Identifying ItemStackHolder annotations
[16:32:02] [main/INFO] [FML]: Found 0 ItemStackHolder annotations
[16:32:03] [main/INFO] [FML]: Configured a dormant chunk cache size of 0
[16:32:03] [Forge Version Check/INFO] [ForgeVersionCheck]: [forge] Starting version check at http://files.minecraftforge.net/maven/net/minecraftforge/forge/promotions_slim.json
[16:32:03] [main/INFO] [FML]: Applying holder lookups
[16:32:03] [main/INFO] [FML]: Holder lookups applied
[16:32:03] [main/INFO] [FML]: Applying holder lookups
[16:32:03] [main/INFO] [FML]: Holder lookups applied
[16:32:03] [main/INFO] [FML]: Applying holder lookups
[16:32:03] [main/INFO] [FML]: Holder lookups applied
[16:32:03] [main/INFO] [FML]: Applying holder lookups
[16:32:03] [main/INFO] [FML]: Holder lookups applied
[16:32:03] [main/INFO] [FML]: Injecting itemstacks
[16:32:03] [main/INFO] [FML]: Itemstack injection complete
[16:32:04] [Forge Version Check/INFO] [ForgeVersionCheck]: [forge] Found status: AHEAD Target: null
[16:32:27] [Sound Library Loader/INFO]: Starting up SoundSystem...
[16:32:28] [Thread-5/INFO]: Initializing LWJGL OpenAL
[16:32:28] [Thread-5/INFO]: (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
[16:32:28] [Thread-5/INFO]: OpenAL initialized.
[16:32:28] [Sound Library Loader/INFO]: Sound engine started
[16:32:38] [main/INFO] [FML]: Max texture size: 8192
[16:32:39] [main/INFO]: Created: 512x512 textures-atlas
[16:32:43] [main/INFO] [FML]: Applying holder lookups
[16:32:43] [main/INFO] [FML]: Holder lookups applied
[16:32:43] [main/FATAL] [FML]: Fatal errors were detected during the transition from INITIALIZATION to POSTINITIALIZATION. Loading cannot continue
[16:32:43] [main/FATAL] [FML]: 
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    UCHI    minecraft{1.12} [Minecraft] (minecraft.jar) 
    UCHI    mcp{9.19} [Minecraft Coder Pack] (minecraft.jar) 
    UCHI    FML{8.0.99.99} [Forge Mod Loader] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCHI    forge{14.21.1.2443} [Minecraft Forge] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCHE    ent{666} [Entity303] (bin) 
[16:32:43] [main/FATAL] [FML]: The following problems were captured during this phase
[16:32:43] [main/ERROR] [FML]: Caught exception from ent (java.lang.NullPointerException)
[16:32:43] [main/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:630]: ---- Minecraft Crash Report ----
// Everything's going to plan. No, really, that was supposed to happen.

Time: 8/31/17 4:32 PM
Description: There was a severe problem during mod loading that has caused the game to fail

net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Entity303 (ent)
Caused by: java.lang.NullPointerException
    at net.minecraftforge.registries.IForgeRegistryEntry$Impl.setRegistryName(IForgeRegistryEntry.java:94)
    at net.minecraftforge.fml.common.registry.EntityRegistry.doModEntityRegistration(EntityRegistry.java:183)
    at net.minecraftforge.fml.common.registry.EntityRegistry.registerModEntity(EntityRegistry.java:151)
    at Entity303.RegistryHandler.Client(RegistryHandler.java:16)
    at Entity303.Proxy.ClientProxy.Init(ClientProxy.java:20)
    at Entity303.entity303.Init(entity303.java:22)
    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.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:616)
    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.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
    at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
    at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
    at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
    at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
    at com.google.common.eventbus.EventBus.post(EventBus.java:217)
    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252)
    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230)
    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.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
    at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
    at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
    at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
    at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
    at com.google.common.eventbus.EventBus.post(EventBus.java:217)
    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147)
    at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:781)
    at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:343)
    at net.minecraft.client.Minecraft.init(Minecraft.java:576)
    at net.minecraft.client.Minecraft.run(Minecraft.java:416)
    at net.minecraft.client.main.Main.main(Main.java:118)
    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)
    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.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
    at GradleStart.main(GradleStart.java:26)


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

-- System Details --
Details:
    Minecraft Version: 1.12
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_131, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 655625408 bytes (625 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
    JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: MCP 9.40 Powered by Forge 14.21.1.2443 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
    UCHI    minecraft{1.12} [Minecraft] (minecraft.jar) 
    UCHI    mcp{9.19} [Minecraft Coder Pack] (minecraft.jar) 
    UCHI    FML{8.0.99.99} [Forge Mod Loader] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCHI    forge{14.21.1.2443} [Minecraft Forge] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCHE    ent{666} [Entity303] (bin) 
    Loaded coremods (and transformers): 
    GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 20.19.15.4463' Renderer: 'Intel(R) HD Graphics 5500'
[16:32:43] [main/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:630]: #@!@# Game crashed! Crash report saved to: #@!@# C:\Users\ethan\Desktop\Modding\run\.\crash-reports\crash-2017-08-31_16.32.43-client.txt

 

Link to comment
Share on other sites

Passing null as an argument that isn't explicitly documented or annotated as nullable is a bad idea. You need to pass actual values for the registryName and entityName arguments.

 

The registryName argument of EntityRegistry.registerModEntity is the registry name of the entity, which must be a unique name with your mod ID as the domain of the ResourceLocation and the entity's name as the path. The registry name is used as your entity's ID when it's being read from/written to NBT.

 

The entityName argument of EntityRegistry.registerModEntity is a separate name for the entity, which should also be unique (i.e. you should include your mod ID in it). This is sometimes called the "old" name and is mainly used for translation/display purposes. I recommend using the registry name for this name, but it's not required to do so.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

20 minutes ago, Choonster said:

Passing null as an argument that isn't explicitly documented or annotated as nullable is a bad idea. You need to pass actual values for the registryName and entityName arguments.

 

The registryName argument of EntityRegistry.registerModEntity is the registry name of the entity, which must be a unique name with your mod ID as the domain of the ResourceLocation and the entity's name as the path. The registry name is used as your entity's ID when it's being read from/written to NBT.

 

The entityName argument of EntityRegistry.registerModEntity is a separate name for the entity, which should also be unique (i.e. you should include your mod ID in it). This is sometimes called the "old" name and is mainly used for translation/display purposes. I recommend using the registry name for this name, but it's not required to do so.

Ok,I get what your saying, but I get an error on my entityName and registryName, For now my code is like this:

package Entity303;

import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.entity.Entity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.registry.EntityRegistry;
import Entity303.Entity.Entity303;
import Entity303.Entity.ModelEntity303;
import Entity303.Entity.RenderEntity303;

public class RegistryHandler {
	public static void Client() {
		RenderManager renderManager = Minecraft.getMinecraft().getRenderManager();
        renderManager.entityRenderMap.put(Entity303.class, new RenderEntity303(renderManager, new ModelEntity303(), 0));
		EntityRegistry.registerModEntity(entEntity303, Entity303.class, Entity303, 200, renderManager, 0, 0, false);
	}
	public static void Common() {
		
	}
}

I think I am supposed to put the EntityRegistry in a Public Static or something like that, or do I just put the arguments in the public static void Client()?

Edited by Big_Bad_E
Link to comment
Share on other sites

Do you actually know Java? You can't just type an arbitrary name like that, you need to pass the method a ResourceLocation and a String.

 

The ResourceLocation must have your mod ID as the domain. If you don't specify a domain, it defaults to minecraft.

 

Entity registration must happen on both physical sides, so it should be done in your @Mod class or a class called from it.

 

Render registration must be done by calling RenderingRegistry.registerEntityRenderingHandler(Class<T>, IRenderFactory<? super T>) in preInit. This must happen only on the physical client, so it should be done in your client proxy or a client-only class called from it.

  • Like 1

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

12 minutes ago, Choonster said:

Do you actually know Java? You can't just type an arbitrary name like that, you need to pass the method a ResourceLocation and a String.

 

The ResourceLocation must have your mod ID as the domain. If you don't specify a domain, it defaults to minecraft.

 

Entity registration must happen on both physical sides, so it should be done in your @Mod class or a class called from it.

 

Render registration must be done by calling RenderingRegistry.registerEntityRenderingHandler(Class<T>, IRenderFactory<? super T>) in preInit. This must happen only on the physical client, so it should be done in your client proxy or a client-only class called from it.

I am trying to learn it, but no I have no prior java experience, I know it really makes it harder on everyone else, and I am sorry, and I also tried to specify it as a string but because I was in the wrong class it returned an error.

I got all the variables seemingly working, but I get a crash

Spoiler

[19:20:02] [main/INFO] [FML]: -- System Details --
Details:
    Minecraft Version: 1.12
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_131, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 768742096 bytes (733 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
    JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: 
    Loaded coremods (and transformers): 
    GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 20.19.15.4463' Renderer: 'Intel(R) HD Graphics 5500'
[19:20:02] [main/INFO] [FML]: MinecraftForge v14.21.1.2443 Initialized
[19:20:02] [main/INFO] [FML]: Replaced 921 ore ingredients
[19:20:03] [main/INFO] [FML]: Found 0 mods from the command line. Injecting into mod discoverer
[19:20:03] [main/INFO] [FML]: Searching C:\Users\ethan\Desktop\Modding\run\mods for mods
[19:20:04] [Thread-3/INFO] [FML]: Using sync timing. 200 frames of Display.update took 237083862 nanos
[19:20:06] [main/INFO] [FML]: Forge Mod Loader has identified 5 mods to load
[19:20:07] [main/INFO] [FML]: Attempting connection with missing mods [minecraft, mcp, FML, forge, ent] at CLIENT
[19:20:07] [main/INFO] [FML]: Attempting connection with missing mods [minecraft, mcp, FML, forge, ent] at SERVER
[19:20:08] [main/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Entity303
[19:20:08] [main/INFO] [FML]: Processing ObjectHolder annotations
[19:20:08] [main/INFO] [FML]: Found 1168 ObjectHolder annotations
[19:20:08] [main/INFO] [FML]: Identifying ItemStackHolder annotations
[19:20:08] [main/INFO] [FML]: Found 0 ItemStackHolder annotations
[19:20:09] [main/INFO] [FML]: Configured a dormant chunk cache size of 0
[19:20:09] [Forge Version Check/INFO] [ForgeVersionCheck]: [forge] Starting version check at http://files.minecraftforge.net/maven/net/minecraftforge/forge/promotions_slim.json
[19:20:09] [main/INFO] [FML]: Applying holder lookups
[19:20:09] [main/INFO] [FML]: Holder lookups applied
[19:20:09] [main/INFO] [FML]: Applying holder lookups
[19:20:09] [main/INFO] [FML]: Holder lookups applied
[19:20:09] [main/INFO] [FML]: Applying holder lookups
[19:20:09] [main/INFO] [FML]: Holder lookups applied
[19:20:09] [main/INFO] [FML]: Applying holder lookups
[19:20:09] [main/INFO] [FML]: Holder lookups applied
[19:20:09] [main/INFO] [FML]: Injecting itemstacks
[19:20:09] [main/INFO] [FML]: Itemstack injection complete
[19:20:09] [main/FATAL] [FML]: Fatal errors were detected during the transition from PREINITIALIZATION to INITIALIZATION. Loading cannot continue
[19:20:09] [main/FATAL] [FML]: 
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    UCH    minecraft{1.12} [Minecraft] (minecraft.jar) 
    UCH    mcp{9.19} [Minecraft Coder Pack] (minecraft.jar) 
    UCH    FML{8.0.99.99} [Forge Mod Loader] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCH    forge{14.21.1.2443} [Minecraft Forge] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCE    ent{666} [Entity303] (bin) 
[19:20:09] [main/FATAL] [FML]: The following problems were captured during this phase
[19:20:09] [main/ERROR] [FML]: Caught exception from ent (java.lang.NullPointerException)
[19:20:09] [main/INFO] [STDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:630]: ---- Minecraft Crash Report ----
// Oops.

Time: 8/31/17 7:20 PM
Description: There was a severe problem during mod loading that has caused the game to fail

net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Entity303 (ent)
Caused by: java.lang.NullPointerException
    at net.minecraftforge.fml.common.registry.EntityRegistry.doModEntityRegistration(EntityRegistry.java:185)
    at net.minecraftforge.fml.common.registry.EntityRegistry.registerModEntity(EntityRegistry.java:151)
    at Entity303.Proxy.ClientProxy.preInit(ClientProxy.java:24)
    at Entity303.entity303.preInit(entity303.java:18)
    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.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:616)
    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.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
    at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
    at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
    at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
    at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
    at com.google.common.eventbus.EventBus.post(EventBus.java:217)
    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252)
    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230)
    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.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
    at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
    at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
    at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
    at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
    at com.google.common.eventbus.EventBus.post(EventBus.java:217)
    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147)
    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:604)
    at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:266)
    at net.minecraft.client.Minecraft.init(Minecraft.java:508)
    at net.minecraft.client.Minecraft.run(Minecraft.java:416)
    at net.minecraft.client.main.Main.main(Main.java:118)
    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)
    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.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
    at GradleStart.main(GradleStart.java:26)


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

-- System Details --
Details:
    Minecraft Version: 1.12
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_131, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 783687032 bytes (747 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
    JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: MCP 9.40 Powered by Forge 14.21.1.2443 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
    UCH    minecraft{1.12} [Minecraft] (minecraft.jar) 
    UCH    mcp{9.19} [Minecraft Coder Pack] (minecraft.jar) 
    UCH    FML{8.0.99.99} [Forge Mod Loader] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCH    forge{14.21.1.2443} [Minecraft Forge] (forgeSrc-1.12-14.21.1.2443.jar) 
    UCE    ent{666} [Entity303] (bin) 
    Loaded coremods (and transformers): 
    GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 20.19.15.4463' Renderer: 'Intel(R) HD Graphics 5500'

My ClientProxy Class

package Entity303.Proxy;

import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.registry.EntityRegistry;
import Entity303.Referance;
import Entity303.RegistryHandler;
import Entity303.Entity.Entity303;
import Entity303.Entity.ModelEntity303;
import Entity303.Entity.RenderEntity303;

public class ClientProxy extends CommonProxy {
	
	public void preInit(FMLPreInitializationEvent event) {
		super.preInit(event);
		ResourceLocation entity303Texture;
		RenderManager renderManager = Minecraft.getMinecraft().getRenderManager();
		entity303Texture = new ResourceLocation(Referance.MODID+":textures/entity/entity303.png");
		String Entity303 = "Entity303";
		EntityRegistry.registerModEntity(entity303Texture, Entity303.class, Entity303, 200, renderManager, 0, 0, false);
	}
	public void Init(FMLInitializationEvent event) {
		super.Init(event);
		RegistryHandler.Client();
	}
	public void postInit(FMLPostInitializationEvent event) {
		super.postInit(event);
	}
}

 

Link to comment
Share on other sites

EntityRegistry.registerModEntity has nothing to do with rendering/textures. It belongs in common code, not client-only code.

 

The registryName argument is a registry name, not a texture path.

 

The entityName argument should include your mod ID.

 

The mod argument is the instance of your @Mod class, but you're passing the RenderManager instance (which is still null in preInit) instead. This isn't a mod instance, so the game crashes with a NullPointerException when Forge tries to get the mod ID to write to the log.

  • Like 1

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

Ok I am so sorry I am so confused, but I have no idea what to do, Can you give me an example of, like if a mod had a mod ID of Hi and the entity is called Smiley, the main class is called HI, and the Entity class is smiley. What would that be? Again, I'm sorry but I am have no idea, and I feel like i'm so close!

Link to comment
Share on other sites

EntityRegistry.registerModEntity(new ResourceLocation("hi","smile"), Entity303.class, "smile", 200, renderManager, 0, 0, false);

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

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



×
×
  • Create New...

Important Information

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