bits
0-2	sprite-state
3-4	type: tank, bullet, explosion, home
5-7	color:


q<str> === 16<len>, 8*<string>

JOIN	16<opcode>, 16<fps>, 16<teamid>, q<nickname>
LEAVE	16<opcode>
PAUSE	16<opcode>
SAY	16<opcode>, q<msg>
TEAMNAME 16<opcode>, 16<teamid>, q<name>
TEAMUP  16<opcode>, 16<teamid>

MGSTYLE 16<opcode>, 16<styleid>, the rest of packet is style specific
MJOIN	16<opcode>, 16<id>, 16<score>, 16<deaths>, q<name>
MLEAVE	16<opcode>, 16<id>
MSAY	16<opcode>, 16<id>, q<str>
MKILL	16<opcode>, 16<recv>, 16<send>
MTELEFRAG 16<opcode>, 16<recv>, 16<send>
MEDEATH	16<opcode>, 16<id>
MGLAMOR	16<opcode>, 16<id>, 16<level>
MPAUSE	16<opcode>, 16<id>, 16<state>
MWINNER	16<opcode>, 16<id>
MTEAMUP 16<opcode>, 16<id>, 16<teamid>
(flagwins, flagdeaths and flagstolen are undefined for non-CtF games)
MTEAMINFO 16<opcode>, 16<teamid>, 16<score>, 16<deaths>, 16<flagwins>, 16<flaglosts>, 16<flagstolen>, q<name>

MFLAGPICK 16<opcode>, 16<pickerid>, 16<flagteamid>
MFLAGDROP 16<opcode>, 16<dropperid>, 16<flagteamid>
MFLAGRETURN 16<opcode>, 16<returnerid>, 16<flagteamid>
MFLAGWIN 16<opcode>, 16<winnerid>, 16<flagteamid>
