September 2012

From “Phase 1” to “Phase 2”

From time to time I sit down and play through a game of “Phase 2” after doing some coding on it, just to get a feeling on the game’s progress and user interface.  And sometimes I also fire up “Phase 1” to see how much has changed and how much new content has made it’s way into the game.

And recently I was curious on what has actually changed behind the scenes, i.e. in terms of coding and content creation. So I made a little comparison between the last released version of “Phase 1” and my current internal “Phase 2” version, and thought you could be interested in this, as it’s often hard to tell a game’s progress just by reading about it and looking at screenshots.

Source code (Not including basecode) :

  • “Phase 1” – 58,570 lines of code (in 34 units)
  • “Phase 2” – 120,527 lines of code (in 55 units)

Game assets (distributed in the game’s data file) :

  • “Phase 1” – 65 MBytes (733 files)
  • “Phase 2” – 191 MBytes (1,402 files)

Drafts (game documents, images, textures, 3D models, GUI mockups)

  • “Phase 1” – 298 MBytes (428 files)
  • “Phase 2” – 765 MBytes (776 files)

Project directory (including sources, game assets, drafts, documents, etc.) :

  • “Phase 1” – 412 MBytes (1,491 files)
  • “Phase 2” – 1,103 MBytes (2,796 files)

As you can see the game has grown a lot over the last years. And these numbers don’t include countless lines of code, images and 3D models that I threw away and will never see the day of light (i.e. the numerous GUI-redesigns, some of which you may have seen in my postings).

The game itself is progressing nicely (though time is limited and I often don’t feel like coding after getting home from my job as a software developer), and over the last few weeks I spent a lot of work on stuff in the background, gearing up for a smooth first beta release. So for example I reworked a part of the code for the main menu and fixed some small quirks to make it look and feel finished. So hopefully I’ll have a beta ready soon so I can start on adding the missing content to the game. Right now there are only a few global projects and not all of them actually do anything once finished, but making the game run stable and getting the features right is currently more important than adding content.

Weekend posting

It’s weekend and my last posting was almost a month ago, but don’t worry, I’m not idle at all. As for “Phase 2” of Projekt “W”, I finally got around writing the manual to it, and while doing so I noticed that it’s actually pretty hard to write a manual for such a complex game. And even worse if it’s your own game, as it’s extremly hard to write a manual that can be used to learn the game by someone that has never played it. So this is a pretty tiresome process that takes a lot of time and patience. But I won’t get around this and I think it doesn’t make any sense to release a beta to the public without a manual on how to play it. Though this time it won’t be a single PDF as it was for “Phase 1”, but instead it’ll be an HTML manual that I’ll also upload to this page so people can take a look at it online, since it’ll also include the technology tree, unit types, building types etc.

In addition to that I also finally found a good foundation fo the whole datanet espionage (and sabotage) part of the game. I’v been dodging this for months (or even years), as it’s almost a completely new game inside Projekt “W” with a lot of stuff to implement. The first parts of this are already in the game and it’s looks like this could become a valuable addition to the game’s other new features that people will use often. You’ll be able to get a lot of data from your enemy nations, but not without a risk and you can even sabotage stuff like their research or global projects.

And as you may have heard, Embarcadero have released a new Version of Delphi, XE3. And once again they decided not to include our up-to-date OpenGL headers and instead went again with their old outdated one. So if you want to see our headers included in Delphi and own an EDN account, you may want to vote on this report. As for XE3, it’s pretty much what I expected (tested the trial in a virtual machine). If you do OpenGL-related stuff or are into game development, you can easily skip and stick with your old version or move (if you haven’t) to Free Pascal and Lazarus, which would be my choise anyway if I’d were to start a new game. And yes, I’ve been thinking about porting Projekt “W” to Free Pascal so I could port it to at least Linux (and maybe MacOS), but that’ll be a lot of work, so that’ll have to wait until after the beta.