Game Development Reference
In-Depth Information
The session server process
These processes serve as the connection point to the player clients. Once the
connection is made to the session server, the player will remain connected to the
session server until the player logs off. All data packets sent by game clients are
received by the session server and are then routed to the appropriate game server.
In addition, the session server does all the final data broadcast to the clients. The
data broadcast is a fairly heavy duty for a large number of players and increases
exponentially with the increase in the number of players.
The rationale for splitting this functionality away from the game server is to free up
the CPU cycles on the game server for the game logic. The session server is also the
point where the players get authenticated.
There can be as many session servers as the deployment requires. If a session server
goes down, all the players connected to the session server will need
to log in again.
The balancer process
The balancer is the first point of contact for all player clients trying to log in, the
balancer simply responds to the clients with the IP address of the least loaded
session server.
There can be as many balancers as required. If a balancer process goes down, a
backup balancer could take over without affecting any players.
Server game programming
The multiplayer game programming usually involves writing code at two places,
one of them being obvious, the client, where all the action happens for a player and
where the player interacts with the game client. The other is the server, where all the
validation and synchronization of game states sent up by the clients takes place.
At the heart of game development and deployment, the game logic is what differs
from game-to-game; the rest of the functionalities discussed in the next few chapters,
such as lobby and room management, registration, friends, and so on, remain
constant.
Zero server-side programming
Although game server-side programming makes it easy to write complicated game
logic and offers greater security, for simpler and casual games, with Pulse SDK,
complete game implementation may be achieved without writing a single line of
server-side code specific to the game.
 
Search WWH ::




Custom Search