Lead Developer, Stardock Entertainment
Published on August 18, 2006 By CariElf In GalCiv Journals
It's been awhile since I posted a dev journal. There always seems so much stuff to be done, that it's hard for me to take the time to write one. While all of us have been working on Dark Avatar, I've also been spending a lot of time on 1.3. Bug fixing can be satisfying, because it's not hard to come up with a huge list of stuff, whereas you might hours (or longer) working on a particular feature and it ends up being one or two lines in the log. However, bug fixing can also be very frustrating while you're actually tracking down the bug in question. Creating features, while it can have its own share of frustrations, is enjoyable because it is an act of creation.

In Dark Avatar, I'm currently working on the civilization code. I've already done a lot of the work to allow you to make your own custom opponents. Most of this involved moving data from following a hardcoded pattern involving the race ID to the RaceConfigXML and making the conversations/flavor text use string tags instead of the raceIDs. You'll be able to specify the AI personality, the "voice" to be used in conversations and flavor text, the Abilities Descriptions, and the robot images. I also added a tag for the leader gender, but as that will require additional work on the conversations, I don't know if it will actually be used.

Now, I have to make sure that the races are independant of the player ID so that the custom opponent using player ID 4 doesn't have to act like the Torians. I also have to make the custom star systems work for the custom opponents, and I hope to make it so that you can even create your own minor races since some of my changes will put me at least halfway there. I'll probably also have to make changes to how the starting techs are specified, since you'll need to be able to add techs for the custom opponents.

One really cool thing I worked on this week was making a special test mode where the AI takes over for the human race. It would be neat to add this as a feature so that you could test your custom opponents, but I'm worried that it may cause problems that I haven't thought of yet, so I haven't committed these changes to our code server.

Comments
on Aug 18, 2006
Thanks for the update, Cari!

So first off, what's this about custom star systems? Are you referring to designing a custom race's homeworld?

I really like the idea of being able to create our own minor races as well; that would be a sweet addition to the game. I sincerely hope you pull it off!

Overall, however, I think that AI "test mode" is probably the thing that excites me the most.    Such a feature would be very handy indeed in trying out custom oppoenents, to make sure that they're balanced. How exactly would it work? Would we simply select Test Mode from the menu, and then choose our custom race and load up the game? Or would it be more complicated than that?
on Aug 18, 2006
Great Update Cari,

As I'm working on a total conversion mod with individual races with individual techs, the more customisation, I say the better. I really like the sound of the individual voices etc. Thanks for all the great work and for continually aswering all our questions. Everything you've done has been a great help.

Really looking forward to Dark Avatar.

Thanks to all stardock and the effort they put in.
on Aug 19, 2006
I hope one of the bugs you have fixed is the one that occurs when you culturally take over a planet. It's been really bugging me recently as I keep having to restart the game as the minimap graphics get corrupted

Jason
on Aug 20, 2006
Thanks for the update, Cari! The "customized opponents" feature seems to be more complicate to do than I'd have thought. But I'm really looking forward to these new opponent and AI settings.
on Aug 21, 2006
So first off, what's this about custom star systems? Are you referring to designing a custom race's homeworld?


Yes. You know how the Terrans always start with the Sol system, with Earth, Mars, etc.? That's defined in the custom planets file. The custom planets file also allows you to choose the heightmap and texture that the planet is using. Right now, the planets and the race configs have to be in a specific order for them to work properly, but with the custom opponents, it will have to be more flexible.

Would we simply select Test Mode from the menu, and then choose our custom race and load up the game?


Currently, I have it set up with a hotkey and I don't know if we'll add a button for it to the interface, but we could. But yes, you would set up your game like a normal game, but the AI would play even for the race that would normally be played by the player.

I hope one of the bugs you have fixed is the one that occurs when you culturally take over a planet. It's been really bugging me recently as I keep having to restart the game as the minimap graphics get corrupted


I have not seen this bug. If you have a save game that can reproduce this, please zip it and send it to gc2bugs@stardock.com with instructions on how to reproduce this.



on Aug 21, 2006
Cool update. I wonder if races can be saved for future use, or if it is possible to have more than one custom race, even a whole galaxy of them as well as a custom player race.
on Aug 22, 2006
Currently, I have it set up with a hotkey and I don't know if we'll add a button for it to the interface, but we could. But yes, you would set up your game like a normal game, but the AI would play even for the race that would normally be played by the player.


This sounds like the Ctrl+Shift+Z cheat which I never was able to get to work. In v1.2, is it possible to get the AI to control all the races in the game? This would be cool! I could launch a game on a gigantic map with all the races and sit back and watch the movie! Probably more entertaining than most of the crap on TV!
on Aug 22, 2006
While your still thinking about things.

Some people on the forums have said they don't like the idea of tech stealing especially if races had their own specific techs.

As Stardock is developing the whole race tech spying espionage thing. What's the possibility of having a check button (On / Off) for espionage. This would satisfy those who don't like the idea too much and also keep those happy who love this aspect of GCII.

I just mentioned this because their has been a few posts along this line.

Chris.
on Aug 23, 2006
Thanks for the reply Cari. I'm looking forward to Dark Avatar more than ever now.   
on Aug 23, 2006
Mascrinthus,

In 1.2, CTRL+Z (and then you have to hit the turn button) will make the game behave as if someone was simply hitting the turn button without doing anything else, and it supresses popups, etc, and does not end the game when the human player dies. CTRL+X does the same thing, except that it doesn't disable autosaves. CTRL+Shift+Z (when you had a ship or planet selected) switches you to be that race. Theoretically, your race would get taken over by the AI, but it wasn't created with that intent, so it doesn't have all the advantages of an AI Player. In order to get the test mode to work, I have to create all players as if they were an AI player. Then, when you hit CTRL+Z (or CTRL+X) it backs up the PlayerID of the human player, and sets the PlayerID of the human player to an invalid value. So whenever the code tests to see if a civ is the human player, it returns false, and it treats the civ like an AI player.

As Stardock is developing the whole race tech spying espionage thing. What's the possibility of having a check button (On / Off) for espionage. This would satisfy those who don't like the idea too much and also keep those happy who love this aspect of GCII.


We could add an option to turn off tech-stealing, but I'm not really crazy about the idea. Tech stealing is a time honored tradition in sci-fi;.Go ahead, tell SG1 that it's unrealistic that one race could learn to use the highly advanced technology of another race! Also, if it's something that affects the AI, it should affect the metaverse scoring, and that's another can of worms. Race specific techs aren't a feature right now, and until they are, I really don't see the need for putting time into this option.
on Aug 24, 2006
I don't like disabling tech-stealing either but another person (can't find the thread atm) on this forum mentioned one slight problem with the current implemantation that I would like to see improved.
The problem is that the tech that you get seems to be a little to random which can give the player (or AI) a huge technological jump. One example is that a player without any missile techs at all steals the final missile technology.
It would IMO be better if a stolen weapon tech could only be 1-4 techs (or something) better and non-weapon stolen techs maybe limited only to the next 1-2 technologies in the tree.
on Aug 24, 2006
I like Ignuss's idea sometimes the jump is incedibly high. And please don't miss understand my previous post, I love tech stealing and espionage. Thanks for your reply.