For a mod I am developing, I would like to be able to create the tile entity for the block pushed by a piston. Is this possible with Bukkit - I have a feeling I may need to use the CraftBukkit extension to the API - if so, how should I compile my mod?
Another question - is it possible to convert from org.bukkit.entity.Player to net.minecraft.server.EntityPlayer?
Both questions: You have to build against CraftBukkit instead of only Bukkit. To do this, simply add the jar that you download to run your server to your build path (as you did with bukkit.jar, you can remove that one by the way). First one: Creating the TileEntity is then simple, you just need to think about how to introduce it to the server. When/Where exactly do you want to inject it? Keep in mind that you can't directly modify native classes with a plugin - unless you want your users to manually copy a class file into bukkit like it is done with mods. Note that the "block being pushed by a piston" tile entity doesn't serve much purpose on the server. I don't know what you are trying to do, but the client-side rendering of the block being pushed doesn't happen like that. The server only sends a packet telling the client that block at position X,Y,Z extends/retracts, the client does the rest (rendering & creating its local TileEntities). Second question: Yes, and it works similarly for most API classes that have a net.minecraft.server class associated with them: Code: EntityPlayer nativePlayer = ((CraftPlayer) bukkitPlayer).getHandle(); (you might additionaly have to cast the result from an NMS Entity to NMS EntityPlayer, can't remember exactly).