From d39db7650b22d1ebf1d077dfc7a6ba5a36e5df0b Mon Sep 17 00:00:00 2001
From: Darkelarious <darkelarious@333networks.com>
Date: Fri, 22 Jan 2021 19:20:10 +0000
Subject: handwritten notes to Tikz, add list of issues to appendices

---
 src/tikz/client-exchange.tex | 54 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100755 src/tikz/client-exchange.tex

(limited to 'src/tikz/client-exchange.tex')

diff --git a/src/tikz/client-exchange.tex b/src/tikz/client-exchange.tex
new file mode 100755
index 0000000..470edc7
--- /dev/null
+++ b/src/tikz/client-exchange.tex
@@ -0,0 +1,54 @@
+\begin{tikzpicture}
+
+% figure title
+\node[rectangle] at (5, 10.5) (title) {\underline{\bf TCP serverlist communication}};
+
+% ms and gc, top
+\node[draw, rectangle, minimum height=0.6cm, minimum width=2.7cm] at (0,  10.0) (mstop) {\bf masterserver};
+\node[draw, rectangle, minimum height=0.6cm, minimum width=2.7cm] at (10, 10.0) (gctop) {\bf game client};
+
+% open connection
+\node at (10,  9.5) (gcoc) {};
+\node at ( 0,  8.5) (msoc) {};
+\node at (-1,  9.0) (mslisten) [text width=2cm, text centered]{listening for\\connections};
+\draw[->] (gcoc) -- (msoc) node[midway, above, sloped] {open TCP connection};
+
+% secure
+\node at ( 0,  8.0) (msse) {};
+\node at (10,  7.0) (gcse) {};
+\node at (11,  7.0) (gcsecure) [text width=2cm,text centered]{calculate unique\\ response};
+\draw[->] (msse) -- (gcse) node[midway, above, sloped] {request basic game info, send ``secure'' string};
+
+% validate        
+\node at (10,  6.5) (gcva) {};
+\node at ( 0,  5.5) (msva) {};
+\node at (-1,  5.5) (msvalidate) [text width=2cm,text centered]{verify\\ response};
+\draw[->] (gcva) -- (msva) node[midway, above, sloped] {send unique response, basic game info (gamename)};
+
+% list request
+\node at (10,  5.0) (gcli) {};
+\node at ( 0,  4.0) (msli) {};
+\node at (-1,  4.0) (mslist) [text width=2cm, text centered]{if verified, compile list};
+\draw[->] (gcli) -- (msli) node[midway, above, sloped] {request list and format (plain/compressed)};
+
+\node at ( 0,  3.5) (msl1) {};
+\node at (10,  2.5) (gcl1) {};
+\draw[->] (msl1) -- (gcl1) node[midway, above, sloped] {list of addresses (ip:port)};
+
+\node at ( 0,  3.2) (msl2) {};
+\node at (10,  2.2) (gcl2) {};
+\node at (11,  2.0) (gcparse) [text width=2cm, text centered]{parse\\address\\list};
+\draw[->] (msl2) -- (gcl2) node[midway, below, sloped] {(in multiple packets)};
+
+% close connection
+\node at ( 0,  1.7) (mscc) {};    
+\node at (10,  0.7) (gccc) {};    
+\draw[->] (mscc) -- (gccc) node[midway, above, sloped] {close connection};
+
+% ms and gc, bottom, vertical lines
+\node at ( 0, 0) (msbot) {};
+\node at (10,  0.0) (gcbot) {};
+\draw[->] (mstop.270) -- (msbot.90) node[at end, xshift=-0.2cm, yshift=0.5cm, rotate=90] {time};
+\draw (gctop.270) -- (gcbot.90) {};
+
+\end{tikzpicture}
-- 
cgit v1.2.3

