Ages of War
My first complete game
Learning by doing
Ages of War version 2.0 (C++) In my second semester of Computer Science while at the University of New Mexico, a spark had been lit in me. The previous term I rediscovered my love of programming, and I wanted to see what I could do with the skills I had learned. I set about making a game in C++ where two kingdoms would be at war. The result was Ages of War.
In the game you're dealt a hand of cards comprised of 4 types, offensive, defensive, number, and special. There are two mustering slots on the table for each player, one for an offensive card and one for defense. Each turn a player may play one card. They may play to the offensive muster, the defensive muster, a number if offense is already mustering, or one of the special cards that each had unique abilities. It was a fairly simple game and by the end of the school year I used some newly learned skills to upgrade the game to version 2.0.
Over the next summer I taught myself some Java, and as a test of my skill, I rewrote Ages of War as an applet. While I would go on to write many more versions, this one was the only one to ever have unique units for each of the different kingdoms. I ended up making a website on Geocities so I could host it as well as other information about myself.
In my Design of Large Projects class, a group project required us to make a game with networking in it. I convinced my team to use Ages of War as a base. We used OpenGL as well and it became the only version to have multiplayer. Our game was easily the showcase of the project. I was then able to leverage this into a solo project in an OpenGL class a couple semesters later.
Ages of War version 8.0 (Android) I built Hawkflight Studios in the year after leaving college as I had lost my school page. I wanted to create a version of the game that would be available for more people so I built it again, this time with HTML and JavaScript so it could be played in a browser. This was the most robust version with leaderboards and a forum. Completed in July of 2004, this version would be the longest used version and would survive until 2011 when a host error would wipe out my files.
I continued to use Ages of War as a skill test when learning in a new coding environment. I have since made versions for Android and Unity, though neither were completed. I have also attempted making a version for Tabletop Simulator, though without a random number generator the results were a little wonky. While I don't expect anything to come of the game, it has been my favorite pet project and I wouldn't be surprised if I make another version sometime down the line.
Version History
Version | Language | Platform | Description |
---|---|---|---|
1.0 | C++ | UNIX | Initial version with 3 special cards. |
2.0 | C++ | Windows | More modular code. 6 special cards. |
3.0 | Java | Applet | First GUI. Only version to have unique units per country. |
4.0 | C++ | UNIX | Class project. First to have graphics (OpenGL). Only multiplayer version. |
5.0 | Visual Basic | Windows | Drew my own cards in MSPaint. Some of this art still survives. |
6.0 | C++ | UNIX | Another class project repurposed 4.0 with modifications. |
7.0 | HTML/JavaScript | Web | First web version with leaderboards, longest running version. |
8.0 | Java | Android | Looked like 5.0 but on a mobile platform. |
9.0 | C# | Unity | First use of gaming engine. |
10.0 | LUA | TableTop Simulator | A version that used dice instead of RNG. |