I have a simple rocket entity that travels in a straight line until it hits something and explodes. Since the rocket travels in straight lines at a constant speed all that the client needs to know is its starting position and angles, but I'm having trouble getting the engine to only network that particular data. Nothing I've tried works:
* Standard CBaseAnimating entity o Sends m_flSimulationTime and m_vecOrigin in every update, which together create 11 bytes of useless data per rocket. If 16 players at cl_updaterate 30 each have one rocket in the air, that's 844.8Kb/s leaving the server*, none of it useful in any way. Standard entities also run into the interp problem I was talking about the other week. * CBaseAnimating with SendPropExclude on m_flSimulationTime and m_vecOrigin o Rocket never appears on the client, even though I set the AbsOrigin there with a backdoor variable. * CBaseAnimating with UpdateTransmitState() logic o Rocket disappears from client when transmission stops. Grr! * Temporary entity o Unreliable, start to be dropped if more than 32 are in a single update. Clearly a bad idea. The only method I've not tried yet is a networked dummy entity that spawns non-networked rockets at both ends (which would pretty much be a reliable temp ent). Since the client isn't supposed to spawn its own entities I don't hold much hope for this approach either. What on earth can I do here? Give up would be one option I suppose... * Okay, PVS culling would help. But still... _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders