Greetings all,
Since I had absolutely nothing to do today, I got the strange idea to write a program that could automatically generate a viewable tree graph of all the techs in OP2 based on an input techtree file from sheets.vol.
A couple of hours later I had a working techtree graph generator. For the technically inclined/interested, it's a (currently) 130 line perl script that parses a given input techtree file (for example multitek.txt) and generates a graphviz input file. (If you're not familiar, graphviz is a set of tools to auto-generate nice looking graphs from a text based definitions file. It's open-source and can be used to generate some pretty nice looking things). This input file was then processed using the 'dot' tool from graphviz to actually generate a pdf file containing a graph of the techs in OP2 and what techs depend upon what. (They are also arranged spatially by tech level).
You can download the PDF of multitek.txt (the techtree used for multiplayer and colony games) from
http://blackbox.outpost2.net/multitek.pdfTechs have a colored background to indicate if they can only be researched by one race (blue for Eden, red for Plymouth). The name of the tech will be in bold if it is researched in the Advanced Lab.
Known issues right now:
* There are two copies of "robot-assist mechanic" and possibly a couple others. This has to do with the fact that there are some "dummy" techs meant for unlocking certain structures and vehicles at certain times (since the tech level corresponds to the number of the campaign mission, for the campaign, which are actually in two different files, edentek.txt and ply_tek.txt), or sometimes there are different attributes for the same tech for different races (for example Eden can't research Heat Dissipation Systems till late in the game; Plymouth can do it almost right away). My script does not do any merging of tech names (it really couldn't in this case because the requirements for the Eden and Plymouth versions are different).
* Some of the lines are pushed together and really hard to differentiate. This is related due to the fact that the graph was generated by a computer program, it could probably be fixed by some tweaking of the parameters that control the layout of the graph within the dot program.
* Certain vehicles/etc get unlocked at certain tech levels; these are special techs in the techtree file with a cost of 0. These aren't displayed cause it clutters the layout considerably and aren't "true" techs in the sense that you would actually research them.
Let me know if you have any questions or comments! I eventually plan on releasing this script, so people can generate graphs for their custom techtree files.
-- BlackBox