Tech Tree Design - An Example and Proposal

Posted on Saturday, December 21, 2013

                I've played a lot of Galactic Civilizations II.  At this point, I can launch a game on Suicidal difficulty, and before the year is out, have the AI's all eating out of the palm of my hand from the three planets I haven't swindled them out of.  Now that we're looking at a sequel, there are several areas where the game could use a boost, and one of them, as has been said before, is the tech tree.

                This is quite the interesting topic for me, and there's a lot to demonstrate.  Since a picture is worth a thousand words, I decided to go one step beyond that and make a full on example program (written in Java) demonstrating the concepts I feel are important (I have a lot of free time).  You can download it here.
The remainder of this post will be dedicated to explaining the principles that went into my little example.

How requirements work

Features: An Overview

There's something in the example that might be worth explaining off the bat.  First, you might notice how some techs are connected with straight lines and others with dashed lines.  This is because my example employs both standard tech prerequisites (shown with straight lines) and "optional prerequisites" (shown with dashed lines).  The idea is, that to research a tech, you must have all of the standard prerequisites, but only need one of the optional prerequisites.  As a result, a player has much more flexibility in how the progress through the tech tree.  There are several reasons for this, which I'll elaborate on below.

One option for better engines

Better Engines

When thinking about how the technology system could be improved, I kept in mind a principle once stated by Sid Meier: a game should be about making interesting choices.  So, if you think your ships are going too slow, you should have many interesting alternatives.  In GalCiv2, if you wanted faster ships, you could either redesign your ships to make sacrifices for more speed, then pay to upgrade them (usually not an efficient option), or you could research the next tech on the "Engines" tech path and keep researching down that path until you're satisfied with your speed.  In other words, the GalCiv2 tree generally left you with only one viable option when you wanted faster engines.  It would be nice for GalCiv3 to give you a better selection - and my example aims to demonstrate how.

So, let's look at the tech tree with the eye of someone who's wanting faster ships.  You've got a whole host of techs across the tree that provide engine speed bonuses.  Some techs provide larger bonuses than others, and some might be more accessible than others depending on what has already been researched.  There are also techs offering engine modules - you've got the Organic Engine, which combines a regular speed boost with a repair functionality, the Subspace Drive which boosts warp speed but not combat speed, and the Warp Bubble, which is similar to the GalCiv2 version.  In short, a person wanting better engines has a multitude of options, and when deciding, they can consider the other bonuses that they would get for choosing different paths.

One side-bonus of getting Antimatter Synthesis

Improving Replayability

That is another benefit of my approach to tech tree design - in the course of trying to advance their current goal, the player must weigh a host of other bonuses which aren't directly related to their goal, but which they might obtain depending on which path they chose.  Hence, if a player chose to get Antimatter Missiles to arm their ships, they would then have the option of building Linked Resonance Observatories on a dense cluster of planets to boost their research.  Thus, the decision of which weapon they want now involves a detailed value judgment, which in my opinion is more interesting than just comparing weapon stats like DPS and range.  Furthermore, after picking a path, the player might wonder where the other path would have led - and play another game to find out.

This should be interesting to try...

Making Techs "Cool"

One last thing I hoped to show was some ways to make a player want a tech.  Admittedly, many of the techs in my examples are mostly flat bonuses, but I always tried to have at least one thing in each that was more interesting than +10% research or an upgrade from "Missile Mk II" to "Missile Mk III".  Hence, there are things like a building that can damage nearby enemy fleets, an organic factory that boosts production of similar factories, and a reduction in ship cost - all things that can significantly alter how you play the game, if you choose to go for them.  Perhaps that indicates a question to ask yourself, whenever you're designing a tech: "How would I play the game differently, if I had this tech?"  Hopefully, the answer will be interesting.


Well, that's about it for what I have to say.  Hope you liked the example and the writeup.  Be sure to post your thoughts in the comments!  Thanks for reading!