On Wednesday, I released Condado onto the Android market. Condado is my implementation of the San Juan card game. It’s not done, not even close; but I have been able to get the game engine and associated UI working (and relatively bug free). I also put in a simple AI – it’s not challenging but it knows how to play by the rules. I’ve implemented most of the cards, but there are still a few that need some special UI treatment and I haven’t gotten around to grinding those out.

Once I’m done all the nitty gritty stuff, and fixing the hard-to-debug problems, and polishing the UI to my satisfaction; I can get to the fun part, which is programming (and playing against) a challenging AI. One problem I have is that I haven’t actually played San Juan (although I’ve played Puerto Rico a fair bit so I know some general strategy). Another challenge I have is how to architect the AI so I don’t end up writing a 2000 line if-elseif construct. As I’m thinking about this, I’ve already realized some things which make it easier (for example, is there any reason why you would not want to trade your most valuable good?)