This project is my Java implementation of the fantastic 2-player card game called "Lost Cities", invented by the prolific German game designer Reiner Knizia. At the moment, you can only play against
... [More]
the computer (and a pretty weak game it plays too). Future enhancements may include human-human games, a player ladder, and a high score table.
I wrote this game in early 2001 in order to learn Java, with a view to becoming a professional software developer. Although it succeeded at that, looking back at the code with the benefit of seven years' commercial Java experience makes me shudder and cringe. There are a lot of things I'd like to refactor, such as:
converting the reference data from int constants to Java 5 enums abstracting the AI out of the rest of the code to make it pluggable properly separating the domain logic (e.g. game rules) from the GUI code
The program deliberately uses some of the newer features of Java (e.g. Swing). So in order to run it as an applet, you may need to download an appropriate Java Runtime Environment (JRE) from Sun's web site. This will be a one-off process. If a new enough JRE is already installed, the game will start up straight away.
The game has a Help menu that explains both the rules of the game and how the program works.
If you discover any bugs or have any suggestions on how the program or the computer's play could be improved, please email me at andrew dot i dot swan at gmail dot com.
Lost Cities is a game of very simple rules but fascinating depth - enjoy! [Less]