The game is turn based and each turn is either in movement or attack mode. This means that two opponents cannot move at the same time. Basically the player gives orders on what he wishes todo and the orders are implemented when the modes switch. The advantage here is that in a multiplayer game it is easy to determine the correct state. If player A moves 3 steps forward but player B attacks the unit. The attacks are determined first and if the unit survives its allowed to move, because player B cannot possibly obstruct it. The gamestate is finite and can be precomputed which is important in a shared network state.
The disadvantage about this approach is that the length of the states are not equal and you get the feeling that you are waiting in the attacking phase, since its way shorter than the movement phase. Now in a man versus machine game this is not an issue since the machine moves fast, but in a human versus human game it gets boring fast. Boring is bad in a midcore game setting.
I want to combine the states, allowing both players to move a unit at the same time and then do an attack. Now that opens up for collisions, where two players move to the same spot in the same turn. Well since this is a midcore game, and its a wargame I am not going to use a fancy algorithm. I am going to use a casual game mechanics to determine who gets the spot.. see below
The diagram should be read from left to right. players A and B want to move to the same spot. B moves first and A moves after, resulting in an automatic attack. Player A wins the attack and player B is moved back one step.Now for this to ever work, I need to make sure that the game-states are highly synchronised and that means sockets. I am going to handle all border cases by reversing one of the players moves.
Now this design moves the game from a fairly slow paced strategy game to fast paced action game, where actions happens live. I Imagine that when a player attacks or moves into another they can influence the attack and defence by a simple tap game. This feature requires that an attack is lasting at least 5 seconds so both players have a chance to influence.
Now the game is now in favour of caffeine hyped 14 year olds, so in order to counter that, every player has a limit of moved every turn. Will use them to attack or move more troops up to the front. Will I move my veteran unit to be repaired, etc..