Jump to content

bradleyshrader

Members
  • Posts

    11
  • Joined

  • Last visited

Everything posted by bradleyshrader

  1. I found the problem, so for future reference I accidentally put the spawning code inside of the server code. I moved it to client side, and everything works now.
  2. Any ideas, school's kept me from looking too much deeper, but if it helps this time the error was reported with chickens instead of my item. net.minecraft.util.ReportedException: Ticking entity 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:672) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:585) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:482) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) 2013-09-06 23:47:22 [iNFO] [sTDERR] Caused by: java.lang.NullPointerException 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.Entity.moveEntity(Entity.java:740) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.EntityLivingBase.moveEntityWithHeading(EntityLivingBase.java:1682) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.EntityLivingBase.onLivingUpdate(EntityLivingBase.java:2024) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.EntityLiving.onLivingUpdate(EntityLiving.java:437) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.EntityAgeable.onLivingUpdate(EntityAgeable.java:133) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.passive.EntityAnimal.onLivingUpdate(EntityAnimal.java:53) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.passive.EntityChicken.onLivingUpdate(EntityChicken.java:66) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:1817) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.entity.EntityLiving.onUpdate(EntityLiving.java:253) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.world.World.updateEntityWithOptionalForce(World.java:2345) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.world.WorldServer.updateEntityWithOptionalForce(WorldServer.java:717) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.world.World.updateEntity(World.java:2306) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.world.World.updateEntities(World.java:2152) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:548) 2013-09-06 23:47:22 [iNFO] [sTDERR] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:666) 2013-09-06 23:47:22 [iNFO] [sTDERR] ... 4 more 2013-09-06 23:47:22 [sEVERE] [Minecraft-Server] Encountered an unexpected exception ReportedException net.minecraft.util.ReportedException: Ticking entity at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:672) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:585) at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:482) at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) Caused by: java.lang.NullPointerException at net.minecraft.entity.Entity.moveEntity(Entity.java:740) at net.minecraft.entity.EntityLivingBase.moveEntityWithHeading(EntityLivingBase.java:1682) at net.minecraft.entity.EntityLivingBase.onLivingUpdate(EntityLivingBase.java:2024) at net.minecraft.entity.EntityLiving.onLivingUpdate(EntityLiving.java:437) at net.minecraft.entity.EntityAgeable.onLivingUpdate(EntityAgeable.java:133) at net.minecraft.entity.passive.EntityAnimal.onLivingUpdate(EntityAnimal.java:53) at net.minecraft.entity.passive.EntityChicken.onLivingUpdate(EntityChicken.java:66) at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:1817) at net.minecraft.entity.EntityLiving.onUpdate(EntityLiving.java:253) at net.minecraft.world.World.updateEntityWithOptionalForce(World.java:2345) at net.minecraft.world.WorldServer.updateEntityWithOptionalForce(WorldServer.java:717) at net.minecraft.world.World.updateEntity(World.java:2306) at net.minecraft.world.World.updateEntities(World.java:2152) at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:548) at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:666) ... 4 more 2013-09-06 23:47:22 [iNFO] [sTDOUT] Unloading Player: Player930 2013-09-06 23:47:22 [iNFO] [sTDOUT] ---- Minecraft Crash Report ---- 2013-09-06 23:47:22 [iNFO] [sTDOUT] // Don't be sad, have a hug! <3 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] Time: 9/6/13 11:47 PM 2013-09-06 23:47:22 [iNFO] [sTDOUT] Description: Ticking entity 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] java.lang.NullPointerException 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.Entity.moveEntity(Entity.java:740) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLivingBase.moveEntityWithHeading(EntityLivingBase.java:1682) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLivingBase.onLivingUpdate(EntityLivingBase.java:2024) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLiving.onLivingUpdate(EntityLiving.java:437) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityAgeable.onLivingUpdate(EntityAgeable.java:133) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.passive.EntityAnimal.onLivingUpdate(EntityAnimal.java:53) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.passive.EntityChicken.onLivingUpdate(EntityChicken.java:66) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:1817) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLiving.onUpdate(EntityLiving.java:253) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.World.updateEntityWithOptionalForce(World.java:2345) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.WorldServer.updateEntityWithOptionalForce(WorldServer.java:717) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.World.updateEntity(World.java:2306) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.World.updateEntities(World.java:2152) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:548) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:666) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:585) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:482) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] A detailed walkthrough of the error, its code path and all known details is as follows: 2013-09-06 23:47:22 [iNFO] [sTDOUT] --------------------------------------------------------------------------------------- 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] -- Head -- 2013-09-06 23:47:22 [iNFO] [sTDOUT] Stacktrace: 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.Entity.moveEntity(Entity.java:740) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLivingBase.moveEntityWithHeading(EntityLivingBase.java:1682) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLivingBase.onLivingUpdate(EntityLivingBase.java:2024) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLiving.onLivingUpdate(EntityLiving.java:437) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityAgeable.onLivingUpdate(EntityAgeable.java:133) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.passive.EntityAnimal.onLivingUpdate(EntityAnimal.java:53) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.passive.EntityChicken.onLivingUpdate(EntityChicken.java:66) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLivingBase.onUpdate(EntityLivingBase.java:1817) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.entity.EntityLiving.onUpdate(EntityLiving.java:253) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.World.updateEntityWithOptionalForce(World.java:2345) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.WorldServer.updateEntityWithOptionalForce(WorldServer.java:717) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.World.updateEntity(World.java:2306) 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] -- Entity being ticked -- 2013-09-06 23:47:22 [iNFO] [sTDOUT] Details: 2013-09-06 23:47:22 [iNFO] [sTDOUT] Entity Type: Chicken (net.minecraft.entity.passive.EntityChicken) 2013-09-06 23:47:22 [iNFO] [sTDOUT] Entity ID: 97 2013-09-06 23:47:22 [iNFO] [sTDOUT] Entity Name: Chicken 2013-09-06 23:47:22 [iNFO] [sTDOUT] Entity's Exact location: -5.52, 67.00, 179.51 2013-09-06 23:47:22 [iNFO] [sTDOUT] Entity's Block location: World: (-6,67,179), Chunk: (at 10,4,3 in -1,11; contains blocks -16,0,176 to -1,255,191), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511) 2013-09-06 23:47:22 [iNFO] [sTDOUT] Entity's Momentum: 0.00, -0.08, 0.00 2013-09-06 23:47:22 [iNFO] [sTDOUT] Stacktrace: 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.World.updateEntities(World.java:2152) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:548) 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] -- Affected level -- 2013-09-06 23:47:22 [iNFO] [sTDOUT] Details: 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level name: New World 2013-09-06 23:47:22 [iNFO] [sTDOUT] All players: 1 total; [EntityPlayerMP['Player930'/335, l='New World', x=62.33, y=63.00, z=259.05]] 2013-09-06 23:47:22 [iNFO] [sTDOUT] Chunk stats: ServerChunkCache: 625 Drop: 0 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level seed: -2223772811853471129 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level generator: ID 00 - default, ver 1. Features enabled: true 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level generator options: 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level spawn location: World: (54,64,252), Chunk: (at 6,4,12 in 3,15; contains blocks 48,0,240 to 63,255,255), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level time: 1626 game time, 1626 day time 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level dimension: 0 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level storage version: 0x04ABD - Anvil 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level weather: Rain time: 73549 (now: false), thunder time: 154767 (now: false) 2013-09-06 23:47:22 [iNFO] [sTDOUT] Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: false 2013-09-06 23:47:22 [iNFO] [sTDOUT] Stacktrace: 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:666) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:585) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:482) 2013-09-06 23:47:22 [iNFO] [sTDOUT] at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) 2013-09-06 23:47:22 [iNFO] [sTDOUT] 2013-09-06 23:47:22 [iNFO] [sTDOUT] -- System Details -- 2013-09-06 23:47:22 [iNFO] [sTDOUT] Details: 2013-09-06 23:47:22 [iNFO] [sTDOUT] Minecraft Version: 1.6.2 2013-09-06 23:47:22 [iNFO] [sTDOUT] Operating System: Windows 7 (amd64) version 6.1 2013-09-06 23:47:22 [iNFO] [sTDOUT] Java Version: 1.7.0_06, Oracle Corporation 2013-09-06 23:47:22 [iNFO] [sTDOUT] Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation 2013-09-06 23:47:22 [iNFO] [sTDOUT] Memory: 701327880 bytes (668 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB) 2013-09-06 23:47:22 [iNFO] [sTDOUT] JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M 2013-09-06 23:47:22 [iNFO] [sTDOUT] AABB Pool Size: 3536 (198016 bytes; 0 MB) allocated, 972 (54432 bytes; 0 MB) used 2013-09-06 23:47:22 [iNFO] [sTDOUT] Suspicious classes: FML and Forge are installed 2013-09-06 23:47:22 [iNFO] [sTDOUT] IntCache: cache: 0, tcache: 0, allocated: 1, tallocated: 63 2013-09-06 23:47:22 [iNFO] [sTDOUT] FML: MCP v8.04 FML v6.2.35.804 Minecraft Forge 9.10.0.804 6 mods loaded, 6 mods active 2013-09-06 23:47:22 [iNFO] [sTDOUT] mcp{8.04} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2013-09-06 23:47:22 [iNFO] [sTDOUT] FML{6.2.35.804} [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2013-09-06 23:47:22 [iNFO] [sTDOUT] Forge{9.10.0.804} [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2013-09-06 23:47:22 [iNFO] [sTDOUT] CodeChickenCore{0.9.0.3} [CodeChicken Core] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2013-09-06 23:47:22 [iNFO] [sTDOUT] NotEnoughItems{1.6.0.9} [Not Enough Items] (NotEnoughItems 1.6.0.9.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2013-09-06 23:47:22 [iNFO] [sTDOUT] paintmod{1.6.2:9.10.0.804:D_1.1} [PaintGun] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2013-09-06 23:47:22 [iNFO] [sTDOUT] Profiler Position: N/A (disabled) 2013-09-06 23:47:22 [iNFO] [sTDOUT] Vec3 Pool Size: 1118 (62608 bytes; 0 MB) allocated, 138 (7728 bytes; 0 MB) used 2013-09-06 23:47:22 [iNFO] [sTDOUT] Player Count: 1 / 8; [EntityPlayerMP['Player930'/335, l='New World', x=62.33, y=63.00, z=259.05]] 2013-09-06 23:47:22 [iNFO] [sTDOUT] Type: Integrated Server (map_client.txt) 2013-09-06 23:47:22 [iNFO] [sTDOUT] Is Modded: Definitely; Client brand changed to 'fml,forge' 2013-09-06 23:47:22 [iNFO] [sTDOUT] #@!@# Game crashed!
  3. I've got a class extending EntityFX: @SideOnly(Side.CLIENT) public class EntitySprayFX extends EntityFX { protected float scale; protected double targetX; protected double targetY; protected double targetZ; protected float tolerance = 1.0f; protected int baseIndex = 0; private boolean isTolerable = false; public EntitySprayFX(World world, double lastPosX, double lastPosY, double lastPosZ, double destX, double destY, double destZ, float red, float green, float blue) { super(world, lastPosX, lastPosY + 1, lastPosZ, 0.0D, 0.0D, 0.0D); this.motionX *= 0.10000000149011612D; this.motionY *= 0.10000000149011612D; this.motionZ *= 0.10000000149011612D; this.targetX = destX; this.targetY = destY; this.targetZ = destZ; this.particleRed = red; this.particleGreen = green; this.particleBlue = blue; this.scale = 0.735f; this.setSize(this.width * this.scale, this.height * this.scale); this.particleMaxAge = (int) (0.833f + MathHelper.distance3d(lastPosX, lastPosY, lastPosZ, destX, destY, destZ) * 12); this.noClip = false; } @Override public void onUpdate(){ this.prevPosX = this.posX; this.prevPosY = this.posY; this.prevPosZ = this.posZ; isTolerable = isTolerable || ( Math.abs(this.posX - this.targetX) <= this.tolerance && Math.abs(this.posY - this.targetY) <= this.tolerance && Math.abs(this.posZ - this.targetZ) <= this.tolerance ); if (this.particleAge++ >= this.particleMaxAge || this.isCollided || isTolerable) { this.setDead(); } int a; this.setParticleTextureIndex((a = (int) Math.floor((this.baseIndex + this.rand.nextGaussian() * 3.5 + 3.5))) > 7 ? 7:a < 0 ? 0:a); this.motionX += (this.targetX - this.prevPosX) / this.particleMaxAge; this.motionY += (this.targetY - this.prevPosY) / this.particleMaxAge; this.motionZ += (this.targetZ - this.prevPosZ) / this.particleMaxAge; this.moveEntity(this.motionX, this.motionY, this.motionZ); if (this.posY == this.prevPosY) { this.motionX *= 1.1D; this.motionZ *= 1.1D; } this.motionX *= 0.9599999785423279D * 1.25D; this.motionY *= 0.9599999785423279D * 1.25D; this.motionZ *= 0.9599999785423279D * 1.25D; if (this.onGround) { this.motionX *= 0.699999988079071D; this.motionZ *= 0.699999988079071D; } } } And I am spawning them with this each time my item can be used: public void spawnParticleArray(World world, EntityPlayer player, float tX, float tY, float tZ){ for(int i = 0; i < 3 || this.itemRand.nextBoolean(); i++){ mc.effectRenderer.addEffect(new EntitySprayFX(world, player.posX, player.posY + 0.375f, player.posZ, tX + this.itemRand.nextGaussian()/4, tY + this.itemRand.nextGaussian()/4, tZ + this.itemRand.nextGaussian()/4, 0.85f, 0.0f, 0.02f)); } } That looked perfect, and it did almost exactly what I wanted it to; however, when I spam onItemUse, it throws the following exception: 2013-09-04 21:21:55 [iNFO] [sTDERR] java.lang.NullPointerException 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.entity.Entity.moveEntity(Entity.java:740) 2013-09-04 21:21:55 [iNFO] [sTDERR] at mod.paintmod.client.particle.EntitySprayFX.onUpdate(EntitySprayFX.java:63) 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.client.particle.EffectRenderer.updateEffects(EffectRenderer.java:70) 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.runTick(Minecraft.java:1947) 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:898) 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:826) 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.client.main.Main.main(Main.java:93) 2013-09-04 21:21:55 [iNFO] [sTDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2013-09-04 21:21:55 [iNFO] [sTDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2013-09-04 21:21:55 [iNFO] [sTDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2013-09-04 21:21:55 [iNFO] [sTDERR] at java.lang.reflect.Method.invoke(Unknown Source) 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.launchwrapper.Launch.launch(Launch.java:57) 2013-09-04 21:21:55 [iNFO] [sTDERR] at net.minecraft.launchwrapper.Launch.main(Launch.java:18) 2013-09-04 21:21:55 [iNFO] [sTDOUT] ---- Minecraft Crash Report ---- 2013-09-04 21:21:55 [iNFO] [sTDOUT] // Ouch. That hurt 2013-09-04 21:21:55 [iNFO] [sTDOUT] 2013-09-04 21:21:55 [iNFO] [sTDOUT] Time: 9/4/13 9:21 PM 2013-09-04 21:21:55 [iNFO] [sTDOUT] Description: Unexpected error 2013-09-04 21:21:55 [iNFO] [sTDOUT] 2013-09-04 21:21:55 [iNFO] [sTDOUT] java.lang.NullPointerException 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.entity.Entity.moveEntity(Entity.java:740) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at mod.paintmod.client.particle.EntitySprayFX.onUpdate(EntitySprayFX.java:63) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.client.particle.EffectRenderer.updateEffects(EffectRenderer.java:70) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.runTick(Minecraft.java:1947) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:898) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:826) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.client.main.Main.main(Main.java:93) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at java.lang.reflect.Method.invoke(Unknown Source) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.launch(Launch.java:57) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.main(Launch.java:18) 2013-09-04 21:21:55 [iNFO] [sTDOUT] 2013-09-04 21:21:55 [iNFO] [sTDOUT] 2013-09-04 21:21:55 [iNFO] [sTDOUT] A detailed walkthrough of the error, its code path and all known details is as follows: 2013-09-04 21:21:55 [iNFO] [sTDOUT] --------------------------------------------------------------------------------------- 2013-09-04 21:21:55 [iNFO] [sTDOUT] 2013-09-04 21:21:55 [iNFO] [sTDOUT] -- Head -- 2013-09-04 21:21:55 [iNFO] [sTDOUT] Stacktrace: 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.entity.Entity.moveEntity(Entity.java:740) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at mod.paintmod.client.particle.EntitySprayFX.onUpdate(EntitySprayFX.java:63) 2013-09-04 21:21:55 [iNFO] [sTDOUT] at net.minecraft.client.particle.EffectRenderer.updateEffects(EffectRenderer.java:70) 2013-09-04 21:21:55 [iNFO] [sTDOUT] I tried several things to get it to stop. Namely, I have a delay of one second on my item between allowed uses. I also tried surrounding the line in question (this.moveEntity(this.motionX, this.motionY, this.motionZ)) in a try/catch that called this.setDead() if it threw an exception, but that just threw an exception faster. Does anyone have an idea why this may happen?
  4. I'll see what I can find out about the fluid height. Also, the Fluid f is a local variable stored only within the load method. I made the call to FluidRegistry to check if the fluid was being properly registered (and because BuildCraft does it), then I save the registered fluid into a static global field. Also, worth noting is that forge fluids do not extend any vanilla classes (other than block of course) Edit: also, the player DOES drown when they're inside the fluid, and it IS set to water. The problem is that it has an "air pocket" between each block that lets the player breathe for a second every time their head reaches a new block.
  5. So, recently I have been trying to create a fluid. I have tracked down many of the bugs, after some serious searching I might add, and I have eliminated nearly all of them. There are only two more things that I have noticed: one bug, and one is just more of a complaint. The complaint is that the screen overlay is blue, and my liquid is yellow. Is there a way to change the overlay (fairly) easily? Now on to the bug: When swimming in my fluid, each time the player's head reaches another block, it refreshes the Oxygen meter, so it's impossible to drown in the fluid. Side Note: I also noticed that always returns true in the code below. What's happening there? Threading issue? Info on the fluid: Most of this is copied from Build Craft's GitHub. Since the block class is verbatim at the moment, I'll just provide the github link: https://github.com/BuildCraft/BuildCraft/blob/master/common/buildcraft/energy/BlockBuildcraftFluid.java Fluid f = new Fluid("LINSEED_OIL").setDensity(800).setViscosity(1500); FluidRegistry.registerFluid(f); linseedOil = FluidRegistry.getFluid("LINSEED_OIL") == null? f:FluidRegistry.getFluid("LINSEED_OIL"); if(linseedOil.getBlockID() == -1){ if(linseedOilID > 0){ linseedOilBlock = new LinseedOilBlock(linseedOilID, linseedOil, Material.water).setUnlocalizedName("linseedOilBlock"); } } else { linseedOilBlock = Block.blocksList[linseedOil.getBlockID()]; }
  6. That basically didn't help at all, but I'm going to assume that you meant I'm OK to leave the block value at 4000. Also, I think it should be known that I do in fact understand the fact that bytes are an 8-bit storage method, and that integers are 32-bit, I also understand what that means. However, saying that these have to do this, without really specifying further, is no better than every mom's favorite phrase: "Because I said so".
  7. When should you use this function? I know what the documentation says, but it means nothing to me: The only world generation I add currently/plan to add, is a single new species of flower. I ran some tests having it's ID in the 4000 range, and it IS placing it in the world; however, it is not consistent in the frequency, like it was while testing with the ID at 255 (can't tell if the two events were just a coincidence yet). Does a new variety of flower count as "low level terrain generation"?
  8. This github may be useful to you: https://github.com/jadar/DeveloperCapes I did not create any of this: full disclaimer; however, you can either package it with your mod, or you can use it to shine some light on your problem.
  9. Thank you for the response, I figured when it specifically mentioned skipping the deobfuscation that it did. I just wanted to hear it from someone with a bit more experience with the API.
  10. Hey, I just started my first mod about two weeks ago, and I think I have another three weeks of work before I'm ready for an alpha release. Anyway, I see this in the console every time I run my client: 2013-08-03 23:52:13 [iNFO] [ForgeModLoader] Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation I am aware that this isn't an error of any sort, and I am aware of what obfuscation means, so please have a little faith in me. My question is does Forge do runtime deobfuscation? It matters to my mod, because I am doing some reflection, and I really don't want to compile my mod right now to test if it throws any exceptions. http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/package-summary.html (In case anyone doesn't know what reflection is) I am aware that Access Transformers do even more than this, but they are a lot more work for me to learn about, and I would like to push the release as soon as possible since I go back to school next week. (Yes I intend to deploy Access Transformers later as part of a source clean-up) Also, in case anyone is too curious why I need reflection, I am creating a flower pot interface for my mod (eventually doing an API) to add new flowers to the flower pot renderer, and reflection is the easiest way I know to strip the final modifier from the field in Block. In summary, can I reference the non-obfuscated names in my code without worrying about major bugs and crashes?
  11. Hey, just wanted to report that I had this problem as well. Do you think this is a bug with forge, or are we just going to have to live with it? [EDIT] I should have run my tests before my OP, but oh well. The code above fixed the picking up mechanic, but I can't get my bucket to place in the world. I'll try something really quick, but it's looking to be a much bigger headache than it should be. [EDIT] I got it to work, but I had to entirely circumvent Forge's Item Containers. I find it is best to use a class extending ItemBucket, and apply the above patch note to that class. The FluidContainerRegistry doesn't appear to serve any function beyond compatibility, but I think that I'd rather live with a few complaints on it not playing nice with other mods than live with a buggy, broken item. The source that solved my problem: (names changed) package mod.yourmod.item; import net.minecraft.item.ItemBucket; import net.minecraft.item.ItemStack; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.Event.Result; import net.minecraftforge.event.ForgeSubscribe; import net.minecraftforge.event.entity.player.FillBucketEvent; public class CustomBucketItem extends ItemBucket{ public Block contains; public CustomBucketItem(int itemID, Block contains) { super(itemID, contains.blockID); this.contains = contains; MinecraftForge.EVENT_BUS.register(this); } @ForgeSubscribe public void onBucketFill(FillBucketEvent event) { ItemStack result = fillCustomBucket(event.world, event.target); if (result == null) return; event.result = result; event.setResult(Result.ALLOW); } public ItemStack fillCustomBucket(World world, MovingObjectPosition pos) { int blockID = world.getBlockId(pos.blockX, pos.blockY, pos.blockZ); if ((blockID == contains.blockID) && world.getBlockMetadata(pos.blockX, pos.blockY, pos.blockZ) == 0) { world.setBlock(pos.blockX, pos.blockY, pos.blockZ, 0); return new ItemStack(this); } else return null; } } And I would just like to say that this doesn't feel like a solution, it feels like a bandage that I'll have to redress later.
×
×
  • Create New...

Important Information

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