Player Intro

The player can also be referred to as a client since it connects to the Quake server / engine. The player has two "heart beats". One is the server frame, which occurs every 100ms. The other is the client frame, which occurs according to client frame rate. The call graphs of these are depicted above.

In each server frame the DLL calls ClientBeginServerFrame for all clients in the world and G_RunEntity for each entity in the world. After that it calls ClientEndServerFrame for each client in the world. This order is important because this is the life cycle for each player in the world.

In ClientThink, which is called more frequently, the player has a chance to move and his weapon gets a chance to animate. The touch functions for entities touched by the player are called from ClientThink.

The files involved in player movement and action are: