|
|
This page details how the game loop currently works.
|
|
|
|
|
|
1. Start of turn is processed
|
|
|
2. current player is asked for its move (controller.doTurn called).
|
|
|
1. Player updates it's state to a current copy of the game state
|
|
|
2. Player decides their orders
|
|
|
3. Player returns their orders, passing them as a Map (LinkedHashMap is best to maintain ordering) back to the game
|
|
|
3. game executes orders in the sequence from the map
|
|
|
|
|
|
## Important Points
|
|
|
* Orders are sequential (move a then b != move b then a as the first move may block the second one).
|
|
|
* Orders are non-stochastic |