aboutsummaryrefslogtreecommitdiff
path: root/src/body/background.tex
diff options
context:
space:
mode:
authorDarkelarious <darkelarious@333networks.com>2021-01-22 19:20:10 +0000
committerDarkelarious <darkelarious@333networks.com>2021-01-22 19:20:10 +0000
commitd39db7650b22d1ebf1d077dfc7a6ba5a36e5df0b (patch)
tree1874dd76a8424fcaf2f4662382328f3f9858838d /src/body/background.tex
parent6b7437536bbf9fa1219ed2657fe53b4767fdda1d (diff)
downloadMasterServer-Documentation-d39db7650b22d1ebf1d077dfc7a6ba5a36e5df0b.tar.gz
MasterServer-Documentation-d39db7650b22d1ebf1d077dfc7a6ba5a36e5df0b.zip
handwritten notes to Tikz, add list of issues to appendices
Diffstat (limited to 'src/body/background.tex')
-rwxr-xr-xsrc/body/background.tex6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/body/background.tex b/src/body/background.tex
index a7d0e3b..88bc72f 100755
--- a/src/body/background.tex
+++ b/src/body/background.tex
@@ -12,9 +12,9 @@ From the poker analogy, we continue to multiple games. In the local bar, several
To illustrate the more technical interactions between dealers, barkeep and player, we create three roles: {\bf gameserver}, {\bf masterserver} and {\bf client}\footnote{We refer to \emph{gameservers} and \emph{masterservers} instead of \emph{game-} and \emph{master} servers. The latter is correct English, but the former improves readability and avoids confusion about what type of server we explicitly try to describe.} in figure \ref{fig:totaloverview}. When a gameserver is initialised, it repeatedly sends a signal to the masterserver (1). We refer to these signals as \emph{heartbeats}, as the masterserver listens for these signals to determine if the gameserver is still active, similar to how we listen for heartbeats in the human body to determine if somebody is still alive. Game clients make a request to the masterserver to obtain a list of all servers that sent heartbeats and the masterserver provides this list (2). The client then inquires at all of these gameservers for their information (or \emph{status}) so that the user can make a choice which gameserver to join (3).
\begin{figure}[ht]
- \centering
- \includegraphics[width=\textwidth]{img/general-overview}
- \caption{General interactions between gameserver, masterserver and client.}\label{fig:totaloverview}
+\centering
+\input{tikz/overview}
+\caption{General interactions between gameserver, masterserver and client.}\label{fig:totaloverview}
\end{figure}
All interactions between gameserver, masterserver and client occur over the internet. To avoid a wild growth of different methods to convey the information, GameSpy created a format of communication to handle many games with the same approach. When different gameservers follow the same protocol, the same interaction can be applied for a large variety in games. In other words, one barkeep could keep a room list for poker, monopoly, bridge and other games, instead of having one barkeep for every game: the masterserver can handle different games that use the same form of communication.