Game Development Reference
In-Depth Information
One game where this problem cropped up was in the original Gears of War .
What happened was that the shotgun damage was calculated with instantaneous
ray casts. So what if two players both fire the shotgun at precisely the same
time—with one player as the host, and the other player as a regular client? Well,
time and time again, the host would always win the battle of shotguns. This lead
to matches where everyone would try to get the shotgun because it was just so
powerful. This issue was patched in fairly short order,but it was one ofthe reasons
for the early dominance of the shotgun.
Another issue with the server/client model is that if the server crashes, the game
immediately ends as all clients will lose communication with the server. It very
difficult to migrate over to a new server (because all the clients will have incom-
plete information), so there is no potential for corrective action. This means that if
a player is the host and is losing, that player can simply quit the game to boot all
the other players, which isn't very fun. But the flip side is that in a server/client
model, if one client has really bad latency, it does not greatly affect the experience
of any of the other players.
In any event, in order to prevent the issues associated with a host, many server/
client games only support dedicated servers . In most cases, this means that the
servers are set up in a specific location (often in a data center), and all players
are required to connect to these servers (no one can be a host). Although it's true
that players with faster connections will still have an advantage over players with
slower connections, any real advantage can be largely mitigated by having the
servers at a third-party site. However, a downside of running dedicated servers in
this manner is the increased cost of needing to deploy said servers.
Peer-to-Peer
In a peer-to-peer model, every client is connected to every other client, as shown
in Figure 12.9 . This means that there is a symmetric performance and bandwidth
requirement for all of the clients. Because there is no single authority in peer-to-
peer, there are a few possibilities: each client is simply an authority over their own
actions, each client is an authority over another client, or each client simulates the
entire world.
Search WWH ::




Custom Search