Ok, so I've found a few problems that I can't seem to handle in the past few days. At first I kept trying to use the entity that extended from EntityPlayerMP, but there were so many things to override that I decided to just have a custom net handler only (extends from NetHandlerPlayServer, I called it NetHandlerPMPlayServer). I can link it with a player just fine, but for some reason EntityPlayerMP only updates(super.onUpdate()) when its net handler recieves a packet from the client (C03PacketPlayer), which is sent every tick in EntityPlayerSP's onUpdate(). Of course, my players don't have a client (except for the EntityOtherPlayerMP, which doesn't really count), so they aren't being updated. I tried to make my net handler "send itself" the packet in it's update() method, but that wasn't being called either. Instead I tried using the event PlayerTickEvent to call NetHandlerPMPlayer.update() whenever the EntityOtherPlayerMP version of my player ticked. This worked fine, but when I created an sent the packet in NetHandlerPMPlayer.update() MC crashes with a net.minecraft.network.ThreadQuickExitException.
If you don't read ALL the above you might get confused, so just read it.
In the end I have two questions:
-Why isn't NetHandlerPMPlayServer.update() being called in vanilla code somewhere?
-How can I make my net handler "send" itself packets?
GitHub Source: https://github.com/Vitridax/PlayerMod.git
Sorry if the files are a bit messy with all the comments everywhere. If you can't find something just ask.
Edit:
Crash. Sorry I forgot about it earlier.