I’ve been making some progress on Monopoly Deal, although I’ve mostly been concentrating on the game engine itself. I’ve gotten to a stage where I’ve implemented all the different cards and rules in the game, so the game can be played.
But to test, I needed some way of playing the game (and playing against someone). To get there, I made a couple of cheats.
First, I threw together a “dumb UI”; basically it’s a command line version of the game but it serves to display the current state in the game (i.e., your hand, your and other players’ board) and will accept your actions and react to them (such as asking others to pay your rent bill). Even though it’s ugly, it actually works quite well and is of course much better for testing than having no UI at all.
I also started work on an easy AI player. The logic for them is pretty straightforward, with just a few simple rules such as bank money before playing properties, charge rent when it’s worth it etc. Basically how you would play if you were playing Monopoly Deal for the first time.
Surprisingly, the first full game I played against the AI, it beat me! It actually did a neat thing, by playing Sly Deal to steal a property and complete a set, then played Deal Breaker to steal my completed set. Although that makes the AI sound better than it is because at the time, I wasn’t playing to win the game.