For a time I've been tinkering with HL and Quake, trying to make something resembling Sonic Adventure-like scheme of controls and camera. On the matter of controls, the most basic test setup would be player always facing away from 0,0,0 with top-down camera. I expected player to run in a perfect circles when I press step left/step right. But in harsh reality the player is literally spiraling away. http://www.youtube.com/watch?v=zg3iHxD1uFI So apparently the reason for this is in client-server architecture of the engine where all the entities like doors, platforms, rotating things-are not on the client side where player is. They are in different dll, on the server side. Player's view direction can't be applied immediately, it is sent to the server side and applied one frame later so in the current frame it is plain incorrect. I see a bunch of Sonic engines made with UDK, but this engine is also of a client-server kind, intended for first person shooters rather than arcades. So how GDK/UDK Sonic developers handle this issue? Do they at all?