I've started work on adding technology data to the game, in the process of doing so, I realized that the way I set it up, I could easily implement racial technologies (technologies that are specific to races). Each empire have its own instance of "Technology Manager", and on game creation, those "Technology Manager" calls Load function that fills their own instance with data from a data file.
I originally planned to have all technologies be available to all races, but I thought, some people would love to set up racial technologies, even if I don't like it. So I'm going ahead and implement the ability of having racial technologies, even though the game won't have any by default. This will be how it works:
Technology Manager will first load in "Default Technologies" that all races will have. When it is done loading, it will call the load function again, but pointing to the race's technology file. It will not overwrite any existing technologies (it will give an error if two technologies have the same name), but rather, it will add to the list of technologies.
Each row of technology data will contain tags (techType, canSteal, canTrade, baseCost, levelsCanResearch, technology specific tags like amount of damage, etc) so you can add, modify, or remove technologies to either the defaults or race's data. If a row is invalid (missing some critical tags or invalid data like letters where numbers should be), it will display a list of invalid data rows after it've loaded, so you can make corrections.
I don't know how flexible this will be in terms of handling special technologies, like stargates, sub space teleporters, and other specials you can put on your ship, since each usually have their own effect. I'll try my best however, but most of the important technologies are in specific categories. So you can easily add a weapon (be it a torpedo, missile, beam, or particle), armor, shield, engine, etc.
My goal for this game is to make it moddable in terms of adding/removing races, technologies, and artwork. The gameplay mechanics will not be able to be modded however, since I'm not good with scripting. The AI will be hardcoded. Maybe in the sequel if this game prove popular enough, I'll research on how to do scripts so you can modify how the game works.