Frogboy Frogboy

Galactic Civilizations II: The Post Mortem

Galactic Civilizations II: The Post Mortem

Over at Gamasutra!

http://www.gamasutra.com/features/20060405/wardell_01.shtml

Every wanted to know about the near disasters that occurred during the development of Galactic Civilizations II?  How about the things that went just totally wrong? What were the goals for the game? How did things come together?

Gamasutra, the web version of Game Developer Magazine, has put up our postmortem, a lengthy analysis of what went right and wrong with the development of Galactic Civilizations II.  If you've ever wanted a peak at the sausage factory that is game development, check this out. !FROGCARE!

24,710 views 43 replies
Reply #26 Top
The days of the eccentric god like programmers who dig this deeply in to this sort of debate are long gone.

Today what is needed more than ever are professionals who can deliver the product in a timely and professional manner. Honestly, i think stardock did very well with what ever toolset they choose to use.

This game was in development long before the C# language was widely used. Though you might be right that C# will be used for games in the very near future at the time that Stardock had to choose their toolset C# had not yet matured.

Sort of like bitching that 200 years from now that they apollo astronauts should have used Faster Than Light drives to go to the moon.

I love C# myself but i don't think that it is right to criticize stardocks choices considering the results. Besides, from what i read in the article things did not go that badly. They got a bit rough in places but that always happens in these sorts of projects. Further, stardock got through them and with a good result.

In the end i think stardock had done a risk analysis of the very things you propose, that is based upon Draginol's response, and decided that the risk outweighed the benefits.
Reply #27 Top
If the basic act of programming doesn't excite you, then you're probably not as effective at it as someone who is excited by it. Just like if running a buisness isn't something that interests you, you shouldn't become a buisness owner. Or if politicking and exchanging power chits doesn't excite you, you probably shouldn't run for office.


Allow me to speak as a part-time writer. I don't find writing exciting, it's often a chore, but then it's the ideas behind the writing and the correct implementation of an exciting dialogue that you enjoy. You're a writer because you want to create fascinating worlds and exciting situations. You want characters who do this and that and say it in such and such a way. The writing is a chore, but it's a means to an end, and I'd say that's exactly how Brad feels.

A lot of writers say they find it a chore, and I'm heard many programmers say the same thing. Solving the problem is exciting, writing down your workings is not.
Reply #28 Top

Then maybe you shouldn't be a programmer. That may come off as trite or some kind of attack, but I'm being perfectly serious.

If the basic act of programming doesn't excite you, then you're probably not as effective at it as someone who is excited by it. Just like if running a buisness isn't something that interests you, you shouldn't become a buisness owner. Or if politicking and exchanging power chits doesn't excite you, you probably shouldn't run for office.

Programmers program; they write code. That's what we do. Oh, we do other things to (code design, etc), but you have to be able to write code first because that's at the core of what we do. And while lots of people certainly can program, it is those to whom programming is an art form, who would program just for fun at home if it wasn't their jobs, that are the best programmers.

I'm not saying that only programmers who embrace every new technology like an empassioned lover (and oh God have I seen some deep and long-lasting pain created by them) are the best programmers. But if you truly don't get energized by the act of programming, perhaps you should focus on the areas of game development that do energize you. Game design, production, etc.

AlFonse, I noticed you ignored my question about what your background is. You speak as if you are somehow in a position to tell others how to manage games.

I've been producing PC games for over a decade.  Why exactly do you feel that you're in a position to dictate to me on what I should and shouldn't be doing?

With regards to the Ogre libraries, simply put, I'm not going to mess with LGPL licenses.  Yes, Lib3D is PART of our 3D engine but you may also notice that the date of the DLL changes in every build because we make changes to it.  I don't want to mess around with having to document changes, release source code on changes, etc.  I'd rather license a commercial engine from someone like RadTools where we can make all the changes we want to it once we license it and not futz with releasing source code, documenting to the public what changed, etc.

And with regards to programming -- I'm not a programmer. I'm a Project Manager.  And so I set the guidelines and policies and schedule and assignments that the programmers follow.  I happened to program quite a bit on Galactic Civilizations II because of necessity. 

I like making stuff, I don't get off on using some new boost API or playing with WTL features. Libraries are tools. Nothing more. If they allow me to produce better code at a lower cost of ownership then I'm likely to consider them.

But I'm not going to make use of some technique or library simply because someone "l33t" coder basically makes the argument that it's stupid not to.  If a developer makes a strong case for using something, I'm apt to use it. But arrogance is not an argument.

Reply #29 Top

Your point on support for it is well taken (and I certainly have not investigated Ogre for any real length of time, so I can't speak to any supposed cleanliness of the code), but consider the possibility of said support having been less time overall than the development of your own 3D rendering system. Overall, the headaches of support could have been less time consuming than having to build the system from scratch.

Though little more can be said about Ogre having hit 1.0 long after you needed to have a rendering system in place.

On the plus side, however, I'm pretty sure it would have saved you that whole "overheating GPUs" fiasco

(slaps forehead) Alfonse, I don't know why you think you have some sort of inside track on our software development process.  The overheating issue had nothing to do with our libraries incidentally. Moreover, you have no knowledge of whether Ogre would have caused other problems. 

We license technologies where we think it makes sense and create our own system when we think it makes sense.  You seem to be an advocate of "using cool stuff" purely for the sake of "using cool stuff". 

I'm interested in making a game.  I am not married to any particular technology or technique. I simply want to use the tools that make it easiest and cheapest to create the game I want.  Sometimes that means licensing something. Other times it means using freely available libraries (we use Boost in GalCiv II btw).  But we don't just use "new" things for their own sake.

The game industry is littered with the corpses of companies who picked the underlying technologies they wanted to use first and actually making a game was a secondary priority.

One other comment about Ogre -- As was in the post mortem, most of the 3D engine was written for The Political Machine in Spring of 2004. 

Reply #30 Top
I would love to hear the above debate on the Poweruser TV Podcast (even if its just one side of it) its an interesting fiery subject and should be heard as such. Even if it just ends up being a barely audible knowledgable rant.
Reply #31 Top
that was a fun read It's great to see companies that actually have a human side once in a while.

seems the jump to dx9 has caused ur support issues, turn based gamers are not the first group you would think of for up to date drivers and spiify gfx cards
Reply #32 Top
I loved this insight into the game-making process, thanks for taking the time to show the effort that goes into making the games that I enjoy so much. I'm loving your game, and have been ever since I pre-ordered it after seeing your stance on copy-protection.

However your comments regarding the latest drivers was an interesting one, but one that is easily solved.

In a number of games that I have played, the installation offers you the option of installing the latest version of DirectX, and others go one step further, adding the latest drivers for your video card as part of the install process.

Now this can be disabled for people whose machines won't allow the latest drivers to be used, but for people without broadband access (which in the wide, brown land of Australia makes up a sizable percentage) free drivers can be a god-send.
Reply #33 Top

In a number of games that I have played, the installation offers you the option of installing the latest version of DirectX, and others go one step further, adding the latest drivers for your video card as part of the install process.

That's a very interesting idea.  Do you know which games did this? It woudl be interesting to check out how they implemented that. 

Reply #34 Top
wow such audacity on the forums nowadays. Who is this Alfonse guy? Sounds like he's selling OGRE

Reply #35 Top
That's a very interesting idea. Do you know which games did this? It woudl be interesting to check out how they implemented that.


Well, DirectX would be pretty much any and every 3D game, mainly RTS and FPS. I don't recall encountering the later, but I'd bet money it's a new FPS.
Reply #36 Top
Frogboy,

The DirectX at install is implemented after the game itself is installed. Usually a dialog appears, "DirectX9 is required for optimum performance, etc. etc. Would you like to install Directx9 now?"

Or some variation of that.

The other way is to make it an option in your splash screen if the user clicked "no" at install and the detected version is lower than recommended.

Peace
Reply #37 Top
Great read and very insightful, keep the good job, any disclaimers for the sequel Dark Avatar???
Reply #38 Top

The DirectX at install is implemented after the game itself is installed. Usually a dialog appears, "DirectX9 is required for optimum performance, etc. etc. Would you like to install Directx9 now?"

Or some variation of that.

The other way is to make it an option in your splash screen if the user clicked "no" at install and the detected version is lower than recommended.

We do that with DirectX but not with video drivers.  DirectX 9c comes on the GalCiv II CD and is part of the install process.

Reply #39 Top
When the game crashes and the drivers are out of date, next time they start the game can't you just have a pop up box that repeats the message that their drivers are out of date and may have been responsible for their last crash?
Reply #40 Top
ah... I missed the second part of #33 that you were responding to. I don't see how you could offer video drivers either... however, since the video card world is split between ATI and nVidia, perhaps links to both companies or just one depending on the card detected. BladeVenom's idea sounds decent. It's not practical for Stardock to provide drivers because they update almost as quickly as Galactic Civilizations 2.
Reply #41 Top
ah... I missed the second part of #33 that you were responding to. I don't see how you could offer video drivers either... however, since the video card world is split between ATI and nVidia, perhaps links to both companies or just one depending on the card detected. BladeVenom's idea sounds decent. It's not practical for Stardock to provide drivers because they update almost as quickly as Galactic Civilizations 2.
Reply #42 Top
Warning immaturity to follow: And its frog boy from the top rope as he nails alfonse to the mat.
Reply #43 Top


Well, DirectX would be pretty much any and every 3D game, mainly RTS and FPS. I don't recall encountering the later, but I'd bet money it's a new FPS.


I believe Battlefield 2 did this (but only for the Nvidia Cards not ATi it seems), when first starting up the game it asks '**Driver Version Here** is recommended for optimum performance in Battlefield 2' with a button to cancel the dialogue and another that leads to the installation package for the driver.

Certainly an interesting way to deal with the problem.
Also i would like to suggest upgrading your forum software to allow items with "<" and ">" around them