client - server message notes ;- Message Format and codes ;Important ALL MESSAGES MUST START WITH Check ;Commands 65=A ;A - 65 request to log in userxxxxpasswogamexxxx ;B - request new account userxxxxpasswogamexxxxemailxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;C - valid login occured ;D - invalid login F user/password/game 1/2/3 ;E - request new add banner or supply one ;F - 70 request master game list ;G - PING time from last ping test ;H - PONG ;I - request to enter room roomnamepasswo ;J - request to enter OK roomnamepasswoMaF if sent to server, request to host game ;K - request server test ispinformat... (from server indicates begin test.. see flags) ;L - here is room list ispinformatgamexxxxversionxxMPCPpasswoFispinformatgamexxxxversionxxMPCPpasswoF F= room restrictions ;M - here is player list userxxxxFuserxxxxFuserxxxxF F= User watching status ;N - new room restriction passwoMaF ;O - new player status F use this flag to change watch/play status ;P - 80 profile change passwoemailxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;Q - system broadcast chat message to all users (creates bell sound in client) ;R - chat message to all users in chat room ;S - private message to userxxxxchatmessagexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;T - 84 account status ;U - server test complete F ;V - No changes made F (see invalid login) ;W - 87 ;X - boot user from room userxxxx ;Y - disconnect user userxxxx ;Z - raw game data to relay among all users in game room ----------------------------------------------------------------------------- Y - use this to command a user to disconnect. No other data required Q - use this to send a chat message from the server F - use this from client to request full account data E - this provides full account data to server/client from client/server V - from server indicates unacceptable changes see flag for reason ----------------------------------------------------------------------------- J - from server, flags identify errors 0 - no errors, request ok 1 - no watchers 2 - invalid room password 3 - invalid room name 4 - room locked J - from client indicates request to create room (see I) with restriction flag ----------------------------------------------------------------------------- gamexxxx is the actual game room name. Versionxx is the actual unique gameversion ID F for room restictions 0 - none 1 - game started 2 - room locked 4 - password restricted ----------------------------------------------------------------------------- userxxxx user flag status 0 - login in progress 1 - logged in 2 - observerving/player (0/1) 4 - Host note: setting bits 4 indicates game host and is always a player too players that are watching a game, do not send data to other players, except for chat, but still receive all game data the decision on wheather a player or observer is up to the actual game program. if the game has already started, the server will assume the next player is an observer. ----------------------------------------------------------------------------- flags for server test (K,U) Client creates TCP server with default port#. then sends K Server will then try to connect to ISP,Port. If test passes, will send K - 2 or send K - 1 on a failure to connect either way, server will remember ISP,Port and status Client sends U - 1 to repeate test with same ISP (this assumes a failed connection) Client sends U - 2 to halt server test Client sends U - 4 to add server as a room host client sends U - 8 to identify ISP as directplay game in progress available for others when others attempt to enter this room, the game will auto-launch without warnings.