I created a class that extends net.minecraft.server.EntityPlayer, when I spawn a zombie near a player it gets set to the fake player, but when I hit the fake player entity the server crashes and gives me this error: Code: [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.a(ServerConfigurationManagerAbstract.java:92) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.NetLoginHandler.d(NetLoginHandler.java:121) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.NetLoginHandler.c(NetLoginHandler.java:41) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServerConnectionThread.a(DedicatedServerConnectionThread.java:44) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServerConnection.b(SourceFile:29) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:581) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) 2012-08-19 22:10:39 [INFO] Skipping Entity with id Zombie 2012-08-19 22:10:39 [SEVERE] java.lang.NoSuchMethodException: me.Mew32.TestPlugin.FakePlayer.<init>(net.minecraft.server.World) 2012-08-19 22:10:39 [SEVERE] at java.lang.Class.getConstructor0(Unknown Source) 2012-08-19 22:10:39 [SEVERE] at java.lang.Class.getConstructor(Unknown Source) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.EntityTypes.a(SourceFile:108) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:283) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:66) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:55) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkProviderServer.loadChunk(ChunkProviderServer.java:146) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:90) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.PlayerInstance.<init>(PlayerInstance.java:23) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.PlayerManager.a(PlayerManager.java:66) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.PlayerManager.addPlayer(PlayerManager.java:101) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.a(ServerConfigurationManagerAbstract.java:123) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.c(ServerConfigurationManagerAbstract.java:172) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.a(ServerConfigurationManagerAbstract.java:92) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.NetLoginHandler.d(NetLoginHandler.java:121) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.NetLoginHandler.c(NetLoginHandler.java:41) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServerConnectionThread.a(DedicatedServerConnectionThread.java:44) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServerConnection.b(SourceFile:29) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:581) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) 2012-08-19 22:10:39 [INFO] Skipping Entity with id Zombie 2012-08-19 22:10:39 [SEVERE] java.lang.NoSuchMethodException: me.Mew32.TestPlugin.FakePlayer.<init>(net.minecraft.server.World) 2012-08-19 22:10:39 [SEVERE] at java.lang.Class.getConstructor0(Unknown Source) 2012-08-19 22:10:39 [SEVERE] at java.lang.Class.getConstructor(Unknown Source) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.EntityTypes.a(SourceFile:108) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:283) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:66) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:55) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkProviderServer.loadChunk(ChunkProviderServer.java:146) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:90) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.PlayerInstance.<init>(PlayerInstance.java:23) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.PlayerManager.a(PlayerManager.java:66) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.PlayerManager.addPlayer(PlayerManager.java:101) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.a(ServerConfigurationManagerAbstract.java:123) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.c(ServerConfigurationManagerAbstract.java:172) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.a(ServerConfigurationManagerAbstract.java:92) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.NetLoginHandler.d(NetLoginHandler.java:121) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.NetLoginHandler.c(NetLoginHandler.java:41) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServerConnectionThread.a(DedicatedServerConnectionThread.java:44) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServerConnection.b(SourceFile:29) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:581) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406) 2012-08-19 22:10:39 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) 2012-08-19 22:10:39 [INFO] Skipping Entity with id Zombie 2012-08-19 22:11:01 [SEVERE] java.lang.NullPointerException 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityPlayer.a(EntityPlayer.java:634) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityHuman.damageEntity(EntityHuman.java:594) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityPlayer.damageEntity(EntityPlayer.java:349) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityMonster.k(EntityMonster.java:80) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.PathfinderGoalMeleeAttack.d(PathfinderGoalMeleeAttack.java:79) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.PathfinderGoalSelector.a(SourceFile:84) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityLiving.bc(EntityLiving.java:1216) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityLiving.d(EntityLiving.java:1091) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityMonster.d(EntityMonster.java:21) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityZombie.d(EntityZombie.java:55) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityLiving.h_(EntityLiving.java:447) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.EntityMonster.h_(EntityMonster.java:25) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.World.entityJoinedWorld(World.java:1239) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.WorldServer.entityJoinedWorld(WorldServer.java:498) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.World.playerJoinedWorld(World.java:1221) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.World.tickEntities(World.java:1119) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:565) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406) 2012-08-19 22:11:01 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) 2012-08-19 22:11:01 [SEVERE] Encountered an unexpected exception NullPointerException java.lang.NullPointerException at net.minecraft.server.EntityPlayer.a(EntityPlayer.java:634) at net.minecraft.server.EntityHuman.damageEntity(EntityHuman.java:594) at net.minecraft.server.EntityPlayer.damageEntity(EntityPlayer.java:349) at net.minecraft.server.EntityMonster.k(EntityMonster.java:80) at net.minecraft.server.PathfinderGoalMeleeAttack.d(PathfinderGoalMeleeAttack.java:79) at net.minecraft.server.PathfinderGoalSelector.a(SourceFile:84) at net.minecraft.server.EntityLiving.bc(EntityLiving.java:1216) at net.minecraft.server.EntityLiving.d(EntityLiving.java:1091) at net.minecraft.server.EntityMonster.d(EntityMonster.java:21) at net.minecraft.server.EntityZombie.d(EntityZombie.java:55) at net.minecraft.server.EntityLiving.h_(EntityLiving.java:447) at net.minecraft.server.EntityMonster.h_(EntityMonster.java:25) at net.minecraft.server.World.entityJoinedWorld(World.java:1239) at net.minecraft.server.WorldServer.entityJoinedWorld(WorldServer.java:498) at net.minecraft.server.World.playerJoinedWorld(World.java:1221) at net.minecraft.server.World.tickEntities(World.java:1119) at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:565) at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212) at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406) at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) The FakePlayer class Code: package me.Mew32.TestPlugin; import org.bukkit.Location; import org.bukkit.entity.Player; import org.bukkit.event.player.PlayerMoveEvent; import net.minecraft.server.ItemInWorldManager; import net.minecraft.server.MinecraftServer; import net.minecraft.server.World; public class FakePlayer extends net.minecraft.server.EntityPlayer{ public FakePlayer(MinecraftServer craftServer, World world, String s) { super(craftServer, world, s, new ItemInWorldManager(world)); } @Override public void h_(){ Player NPCPlayer = (Player) this.getBukkitEntity(); Location from = new Location(NPCPlayer.getWorld(), this.lastX, this.lastY, this.lastZ, this.lastYaw, this.lastPitch); Location to = new Location(NPCPlayer.getWorld(), this.locX, this.locY, this.locZ, this.yaw, this.pitch); PlayerMoveEvent event = new PlayerMoveEvent(NPCPlayer, from, to); this.world.getServer().getPluginManager().callEvent(event); if (event.isCancelled() && NPCPlayer.isDead() == false){ return; } super.h_(); } } [/SPOILER What do I have to add to my FakePlayer class to prevent an error happening?
Your error: java.lang.NoSuchMethodException: me.Mew32.TestPlugin.FakePlayer.<init>(net.minecraft.server.World) In other words, you forgot the constructor that takes just a World param.
Update the version of Bukkit you are compiling against. Then the compiler will give you an error for this. The problem is with your call to super.