Get desktop application:
View/edit binary Protocol Buffers messages
* A possible direction of movement.
Used in: ,
* NONE is the direction of players that are not moving, in particular after the steps_left have counted down to zero.
* The full game state.
* All players on the map and their current state.
* The state of a particular player in Mover.
Used in:
* The current x coordinate.
* The current y coordinate.
* The direction of movement.
* The remaining number of movement steps left.
* The undo data for a single player.
Used in:
* Set to true if the player was not present previously, i.e. if it was first moved and created on the map for this block.
* Previous direction of the player, if it was changed explicitly.
* Previous steps left if the number was changed explicitly by a move.
* Previous direction of the player if it counted down to zero and was changed to NONE in this block. In theory, this field could be merged with previous_dir. It is possible that both are set, namely when a move with steps=1 was made. But this case could be reversed using the move data. The potential space savings here seem minor, though, so we use a separate field to simplify the logic.
* The full undo data for a block.
* Undo data for each player that needs one.