This post is the 2nd volume of a two volume series (Volume 1 is here) written for our blog by VPJ Arponen who has done work for various games in creating their solitaire “bots”. I have followed him on Twitter for a while now and am always intrigued by his posts about his gaming, his design efforts and other interesting topics. I am glad that he was willing to write this series of posts for us. Enjoy! – Grant
My most recent “bot” design project was the Axis “bot” for the upcoming Mark McLaughlin and GMT Games release Hitler’s Reich. You can visit the game’s P500 preorder page by following this link: http://www.gmtgames.com/p-511-hitlers-reich.aspx
I had done a couple of COIN “bots” already and was looking for a different kind of a challenge. I wanted to try designing a “bot”, or just a solo system, for a game with a very different engine, just to see how that kind of a thing could be approached. Also, I fancied the challenge of designing a solo system for a game in which each side has a hidden hand of cards.
Hitler’s Reich filled the bill and I had already been eye-ing the game on GMT’s P500 list anyway. So I went and wrote an email to the designer/producer duo Mark McLaughlin and Fred Schachter. These two have a long history of working together on a growing set of games, most recently Civilizations of the Inner Sea, also on GMT’s P500 list, that Mark co-designed with Christopher Vorder Bruegge.
Mark and Fred got back to me very quickly. They were just really nice guys – isn’t everyone in board gaming just really nice people?! They were also really receptive to my ideas, and soon I was hooked up with the game materials drawing up the first drafts of what the solo system could look like.
Due to a couple of factors, I opted to design an Axis “bot” to drive the actions of the “bad guys” trying to take over the world and establish Hitler’s Reich. The player is charged with controlling the Allies trying to stem and then turn the tide.
Hitler’s Reich is a quick playing 2-player game replaying some of the major political and military aspects of World War II in two hours or less. An array of InsideGMT articles are in existence further illustrating how the game plays, so I’m not going to dwell on that here.
From the solo design perspective, the biggest challenges were 1) how to maintain the base game’s quick and simple nature of game play in the solo system, 2) how to deal with the hidden hand of cards, and 3) how to make the “bot” competent in a face-off against human intelligence.
Keeping the Flow and the Chart
As to 1) above, I did opt for a “bot” approach, that is, I went on to design an opponent who is somewhat intelligent (as opposed to random). Accordingly, in my system there is a flowchart that monitors the board state by asking simple questions like “can the Axis attack a capital city right now?”, or “could the Allied player do so?”, and so on. Once the chosen action has been determined, an instructions box determines where exactly the attack occurs.
The action selection, however, is just the first step. The second major challenge regarding preserving the straighforward nature of the base game design was how to deal with 2) above, namely, how was the “bot” going to make decisions regarding which cards it plays in the course of executing a chosen action. In the base game, each side has a hidden hand of Conflict Cards, the size of which varies, among others, according to how many Production Centers of theirs they still control. Essentially, the Conflict Cards work like regular suits of cards: they are one to 13 in value or strength, and are played (together with some dice) to beat the opponent’s score and to win actions. So how was I going to have the “bot” make all the decisions here and keep the decision process smooth?
Need to Keep the Hand Secret? Abolish It!
I began by abolishing the Conflict Card hand altogether, for there was no way I could both, have the “bot” have a hand of cards and keep it hidden from the player. To preserve the secrecy, I stipulated that, potentially, any not-yet-played Axis card could be in the “bot” hand. Next, I devised a simple die roll mechanic (mostly 3d6, sometimes 2d6, depending on the importance of the task at hand) to determine the value of the card that the “bot” plays from this virtual hand. Thus, you roll 3d6 to determine the card value (say a 3+5+4=12) and another 1d6 to decide whether a German or Italian card gets played (in Hitler’s Reich, the German cards win ties, while the Italians lose them).
Looked at it from a different angle, what the just described selection system does is it simulates the “bot” having a virtual hand from which it deploys cards with some consistency. On average, the 3d6 are likely to produce a fairly high card value. Yet, occasional “unlucky” rolls produce weak values which, however, can be taken to simulate a poor hand or “bluffing”. Sometimes in the base game of Hitler’s Reich, you’ll be launching fake attacks and playing a low value card of yours hoping that your opponent wastes a high value card that then won’t be available for them to do damage elsewhere. Similarly, sometimes you just don’t have the cards in your hand to produce anything but a mediocre punch.
In game play practice, this simple mechanic turned out to be just what I was looking for, which takes me to 3) above. The 3d6 produces a steady stream of high value cards, and once the higher value cards run out, the “bot” gets a free reshuffle of its hand. On average, the “bot” will thus be outpacing the player, who’ll have to rely on another bag of tricks to keep afloat – tricks like a superior grasp of the finer details of what exactly is happening on the board and the like. In Hitler’s Reich, strategic thinking about where and when you attack can be used to garner bonus dice in the attack.
From my own, admittedly biased, perspective, soloing Hitler’s Reich against the Axis “bot” has been a very nice, quick and light experience.
In the future, I would be interested in working out whether a similar principle could be used to devise solo systems for other games with a hidden card hand. The principle is, first, to use a flowchart or similar means to arrive at an action, and/or an action location, in which it would be intelligent to make something happen in a given board state. Then, second, there would be a random-ish mechanic for determining which card the bot “happens to have” in its virtual hand for making that action happen. But that’s a project and a topic to be talked about more at another time.
We at The Players’ Aid Blog are very grateful to Vez for his hard work on writing this series of articles for posting on our blog. These articles will also appear on InsideGMT over the next week.
Vesa “Vez” Arponen is a Finn currently residing and working in academic research in Germany. Whenever he is not playing a historical consim with his group, he is an avid solo gamer and has contributed a few solitaire system designs to the hobby, most recently to Hitler’s Reich and the COIN Series Vol. VII Colonial Twilight.