Overview of TripleA
TripleA is a game engine used to run the classic board game Axis and Allies using Java which I decided to test. Axis and Allies is a board game that was very dynamic, based on the conditions of World War II and the major nations involved with that war: Russia, Germany, United Kingdom, Japan, and the United States. The program can be loaded to run different maps, some that are based of different themes other than WWII.
The TripleA program was downloaded from here: http://sourceforge.net/projects/triplea/files/
Prime Directive #1: The system successfully accomplishes a useful task
According to the creators, TripleA is to "The goal of the game engine is to provide a framework to build turn based strategy games. The engine provides networking and data model support." which is taken from the documentation that is included with the installation of the TripleA game files under code documentation.
By downloading the most recent stable version, the TripleA program does runs and provides the user a chance to play Axis and Allies in several ways: single player, hot-seat multiplayer, play by e-mail, or over the net. Through the GUI interface, the user can quickly access turn history, stats on the different nations according to their PU, territory production, number of units, total unit value, and how many Victory Cities that nation controls.
The game engine also allows the user to downloading different maps that are similar turn based strategy games from different creators from a central repository.
Prime Objective #2: An external user can successfully install and use the system
The game itself was meant to run on several systems: notably Windows, Mac, and Linux. The site, http://sourceforge.net/projects/triplea/files/ contains the packages need to download and install the game. The packages are either zipped or an executable, depending on what platform the user is installing the game on. I have Windows, so I downloaded the most recent stable version and ran the downloaded executable. The executable runs under InstallShield, so installation was quick.
The site, http://triplea.sourceforge.net/mywiki/Installing has clear instructions on how to install the game on the different platforms if the user gets stuck. The game has some short documentation on how the game runs and how the user takes turns in the game.
The game has many merits, but there are some improvements that developers could improve. One is the use of memory in the game.
As you can see, the game runs in a Java window, which is already taking up 320K of memory just after starting up. After playing the game for awhile, the memory usage can end up over 1.5G. When that happens, the game starts to move slower when scrolling across the map and showing the windows during combat and purchasing units. I am not sure whether this has to deal with the way that the game engine deals with Java's garbage cleanup or the fact that the game auto saves after each turn and the turn history is also recorded. Either way, the program has some memory issues that should be addressed on future updates.
Prime Directive #3: An external developer can successfully understand and enhance the system
The TripleA project has a Sourceforge page here, http://sourceforge.net/projects/triplea/ The site has several documentations on the game engine as well as how to generate custom maps and a developer's page. When the program is installed, there are developer documentations that are also installed with the game that are the same as on the website. On the developer's page of the main site, http://sourceforge.net/projects/triplea/develop there is information on what needs to be done and what recent contributions has been made to the project.
The project uses the Source-Forge Subversion server (svn), so developers need to download svn as well as ant from Apache. The developer page also provides guidelines for external developers on how to submit code as well as the coding standard that the project uses.
The main problem for external developers is that the documentation for the game engine needs to be updated, but the source code is well document within the actual Java files.




No comments:
Post a Comment