i know it's a mess, because there's usually a player associated to a controllable entity which manages both controller and the entity. but in this case there's no player, so we need some workarounds

i don't know why the rocket isn't visible. maybe it gets destroyed right after it spawns? add some debug output to the constructor and the destructor of simplerocket, so you can see when it gets created and destroyed.