Lead Developer, Stardock Entertainment
Published on December 11, 2004 By CariElf In GalCiv Journals
We made a lot of tweaks this week, a lot of little changes that add up to be a lot of work.

For our milestone that was last week, we had to have the most basic stuff of GC working: in other words, we had to be able to play a game of GC and win (or lose) by military means. A cultural victory might have been possible, too, but without starbases it's kind of impractical to test. We also don't have an interface for managing research yet because we need to mock up how the new streamlined tech tree is going to work.

So this week we spent some time adding in more of the missing stuff. The area in the middle of the console of GC2's main gamescreen interface is context sensitve. Whenever you left click on something, it displays data on that object. Last week we only had it working for planets and ships (and the ships only showed the name and owner) and everything else was still using a popup like in GC1. So I finished the ship context area and added context areas for stars, anomalies and resources. I also made sure that it was updating when you hit the turn button. The ship context area needs to be updated more often as it doesn't update when a ship moves, but that should be trivial to fix. We also added the text labels to the map so that now we can see the names of the colonized planets and stars, and if a ship is autopilot or not.

I also spent time working on the default options from GC1. I added the code that would generate a prefs.ini file if it didn't exist, and code to read in the options. Next, I'll have to add in new options like anti-aliasing. I started work on the actual options menu today, but I didn't get a chance to test it before I left. You'll notice I also didn't write this blog before I left! I have a gig tomorrow and I had to practice with my fellow musicians. It's easier to write blogs when I'm tired than play music.

I probably spent the most time on getting the ship movement, auto pilot, and auto turn code working smoothly. In GC1, the ship movement code was really complicated, moreso after I re-wrote it trying to get it to be faster than the original code was. Brad still makes fun of that code. I've gotten a lot better at not over-complicating code, though. So far, I think that this code works a lot better than the GC1 code. I had kind of bludgeoned the GC1 code into working (most of the time) but this code is a lot smarter. It's certainly a lot more readable. It'll be faster once we fix the function that determines whether a ship is on screen or not. It currently just returns true because we have to make it check the new 3D camera to see if it's on screen (in GC1 we kind of had a fake camera that was part of the tilemap system).

I also took the time to start logging stuff in our bug tracking database. We hadn't been using it for GC2 up until this point because of the sheer volume involved in adapting or replacing GC1 code to make it 3D, and developing the 3D engine. I kept a master list of what needed to be done, so we were checking stuff off that. We had gotten it down to a reasonable size last week, so I put the rest of it in the bug database and started adding to it. So we'll be using that now to track what needs to be done.

Next week I'll probably start out by adding the new options and maybe try to get more of the interface hooked up. That way, when Paul Boyer goes to redo the "dirty" screens, he can test them in game.

Comments
on Dec 11, 2004
Sounds very promising. The fact that you can actually 'play' a game now is very very encouraging.

Keep up the great work. look forward to helping test it in another few weeks.

Paul.
on Dec 14, 2004
Quite a few weeks. IIRC they're talking about a beta in March.