Colossus XML network / savegame event format $Id: XMLprotocol.txt 2187 2003-03-12 01:33:27Z dripton $ Conventions ----------- Everything is case sensitive, unless stated otherwise. [name]: A string of up to 30 characters. [player]: The name of a player currently in the game [colorName]: One of "Black", "Brown", ... [legion]: A marker id like "Bk01". [creature]: A complete creature name like "Behemoth". [creatures]: One or more of [creature]. [land]: A number of a masterboard hex, like "127". [number]: A number like "3". [battleHex]: A battle hex identifier like "C1" [entrySide]: "right", "left", or "bottom" [bool]: "true" or "false" Requests (client to server) -------- Join the game and pick a name. Note that if multiple players pick the same name, the server may change it. If no name is chosen, the server will pick one. Join as an observer. Choose a color. Starts the game. No more players can connect. Split off [creatures] from [legion1] to a new legion with marker [legion2]. Merge all creatures from child legion back into parent legion. Used to cancel a split before movement is rolled, or just before donewithmoves if neither legion can move. Finish splitting and wait for the movement roll. Re-roll movement. Move [legion] to masterboard hex [land] entering on side [entryside]. If [entryside] is omitted, the server picks. If the legion can both teleport and move without teleporting and teleport is omitted, the server picks. Move [legion] back to its previous location. [legion] undoes its last recruit. Resolve the engagement in [land]. [legion] flees. [legion] does not flee. [legion] concedes the battle. [legion] does not concede the battle. Offer a negotiated settlement to the engagement in [land] where survivor wins, and is left with creatures. If survivor or creatures is missing or empty, offer mutual destruction. Accept a settlement proposed by the other player. Cease negotiations in [land] and fight a battle. Move creature from offboard to hex. Move creature in startHex to endHex. Move creature in hex back to its previous location. All battle moves are finished. Move on to strike phase, or the opponent's battle turn, as appropriate. Creature in strikerhex strikes creature in targethex, rolling dice against the given strike number. The server will assign dice and strike if missing. Carry hits to the creature in targetHex. All battle strikes are finished. Move on to the opponent's phase. Summoner summons a creature from donor. Legion acquires a creature. Finish this player's entire game turn. This player withdraws from the entire game. Resend the stream of all significant events so far in this game to this client. Messages (server to one or more clients) -------- Form a new game with the listed options. Last request from this client was denied. A player with name [name] has connected. Player has chosen color and first marker. Player has been assigned tower. A player splits off [number] creatures from [legion1] to a new legion with marker [legion2]. (The splitoff creatures will only be identified if this client is allowed to see the contents of this stack.) child was merged back into parent. The active player rolled for movement. The active player took a mulligan. [legion] moved to masterboard hex [land] entering on side [entryside]. If teleport is "true" then this move was a teleport. [legion] moved back to its previous location. Active player chose to resolve the engagement in [land]. The opposing legion's creatures are revealed. [legion] fled, losing creatures. [legion] did not flee. [legion] conceded the battle, losing creatures. [legion] did not concede the battle. An offer was made, with survivor (if any) winning and keeping the listed creatures. An offer was accepted. Each legion's losses are shown. A battle will be fought. creature moved from offboard to hex. creature moved from startHex to endHex. creature in hex moved back to its previous location. All battle moves are finished. Move on to strike phase, or the opponent's battle turn, as appropriate. creature in [battlehex] took one point of drift damage. [number1] [numberN] [battlehex1] [battlehexN] Creature in strikerhex struck creature in targethex, rolling dice against the given strike number. Exact rolls, hits, carries, and carry targets are given. [battlehex1] [battlehexN] Hits were carried to the creature in targetHex. If there are still carries and carry targets remaining, they are shown. All battle strikes are finished for this phase. Summoner summoned creature from donor. Legion acquired a creature. [player] receives [number] full points for a battle. # TODO Half points Not all go to slayer, if some legions engaged. loser has been eliminated from the game by slayer (may be null). The game is over. If no winner is given, the game is a draw. Muster a recruit using the right number of recruiter. Also used for reinforcements. [legion] undoes its last recruit. Start of a new turn.