A strategy game is a delicate thing. Humans are excellent at using heuristics to reduce complex problems to simple rules of thumb, and the formation of those heuristics (learning) is a huge part of the enjoyment. However, if a game features too much rules complexity, the player will spend their time trying to internalize the rules rather than engaging in higher level strategic thinking (more on this in Commandment #1 here). On the other hand, the less inherent (rules) complexity a game has, the easier it is for human minds to “solve” it, at which point it becomes more like a puzzle than a game. A classic example of a game that is highly solvable is tic-tac-toe.
Games do have a secret weapon to employ to help resist solvability, while maintaining some degree of elegance: Ambiguity. Interestingly, one of the most prevalent and oldest forms of ambiguity in games is simply another player! You are unable to know definitively what other players will do in a game (although some games are designed to test your ability to guess), so even in the case of a very deterministic system like Chess, your opponent contributes to a very high degree of unpredictability/unsolvability (such that we have played Chess for many many years without “solving” it).
However, in a single-player strategy game, we do not have the luxury of all this free ambiguity; designers must thoughtfully add it themselves. The most natural solution may seem to be to come up with an intelligent AI opponent to play against. This has a few drawbacks. Firstly, in a practical sense, playing against an AI opponent in a strategy game frequently has players casting about for ways to exploit the patterns in the behavior of the AI, rather than trying to form a deep understanding of the game system itself. Secondly, if we think of an AI as a set of rules, adding even the simplest AI to our game has a huge ballooning effect on the rules complexity of our game. Players may not need to know about the AI behavior, but they can learn about it, and doing so pushes against learning how the core systems of the game interact strategically.
Fortunately, there are many more techniques available to a game designer to add ambiguity to their games. Dice, cards and coins provide convenient metaphors so that the player can understand the possible outcomes and their likelihood without having a big reference table. Procedural generation is another fantastic tool for providing new non-rules information to the player while they have time to strategically react. The enemy movements in Militia are yet another example of providing new information for future turns. Each enemy chooses from ~4-8 possible moves, within simple rules, which has the effect of mixing up the board for next turn, but in a way that can be understood and planned for.
This board is a product of the board that came before it plus some simple enemy movement rules.
There are absolutely ways in which introducing too much ambiguity, or ambiguity that the player cannot react to or plan around can reduce the learning potential of your system or make it unsatisfying to play. I’ll be going into more detail about my take on the different forms ambiguity can take in later articles, but for now you can check out Keith Burgun’s excellent article on the subject.