Tags Request for Modders
Some ideas...
from
GalCiv2 Forums
GalCiv2 is an awesome game, added to this is the ability to create mods and you have me hooked. Now that I'm getting less and less satisfaction out of slaughtering the AI, I've started to really mess with the game, trying to see how I can make the experience fresh and new. So I've been messing around with the xml files modding to my heart's content, and while doing basic changes and tweaks are fine and great, I've ran into some serious problems when trying to do any more than what the game gives me.
So I thought I'd put up a post in the forum to request some extra features for modders. I apologize if it has already been done, but frankly it's just impossible to find anything in this forum. Let's hope that this post actually show up even. With that said, it is my hope that this will become somewhat of an 'official' list, something that the devs might visit and go, "hey, let's toss that in," if they should ever find the time. That's why I've limited this particular topic to just extra xml tag support. This is because while adding them will make all our (modding) life easier, it does not affect the current game balance. So please, if you would like to request a certain tag or feature added, make sure that it will not throw off the balance in the current game before doing so. This thread only exist to make modding the existing game easier, not change some fundamental game design (like adding tactical combat).
With that said, I'll start off with some of my own requests, starting with the easiest:
1. Support for a {S_UpgradeTarget} in all the types of "GC2Types.xml" like it is done in "PlanetImprovements.xml"
- Basically, this would be used to make Laser III replace Laser II in the ship design module list instead of leave them both there. Now, I understand that sometimes you might not want this, but since you are not 'enforcing' the use of this tag, it will be up to the modders to make sure that whatever they replace will be better. Normally, this serves to keep down the number of modules in the weapon and defense list, however it could be used creatively to make a whole branch of the tech tree dealing with improving lasers, and another branch improving plasma weapons, etc. So that in the end, you have multiple choices for your beam weapon instead of all rushing for Doom Rays. Again, it doesn't affect the core game, but can lead to many creative options like a technology line that upgrades your hull types (IE: research a "Improved fighter construction" to get three improved tiny hulls, that would replace the old ones instead of making the 'ship' tree a gigantic list - thank god for hull filtering). By doing this, you also enforce the AI to use the 'best' that they have available (so you don't end up with the AI using old hulls when they have an improved one).
- Since the tag is already in used in "PlanetImprovements.xml", I don't think this will be hard to implement at all. For those who still haven't figured it out, yes, you can take out this tags in "PlanetImprovements.xml" and be able to build earlier buildings, it would just kill the "auto-upgrade" option by the governor, and the list of buildings will be very long (perhaps adding filtering tags to all the facilities in "PlanetImprovements.xml" might also be a good idea, although after lowering the cost of high-end building, I have found this to be a non-issue). I just think that sensors, life support, weapons, defenses, and engines should have the option to be replaced or not so as to cut down the number of possible modules when you start to add more.
2. Support for {NoTrade}, and {NoSteal} tags in "TechTree.xml".
- This can be used to mod the existing game to stop a certain technology from being traded/stolen. Mainly I would apply this to the good and evil technologies from xeno ethics as a fix, because it will stop the exploit where you can trade good technologies to evil/neutral empires repeatedly. Further more, it will allow the creation of 'unique' technologies for each race by creating a starting race technology with a ridiculous research cost and give it to that race and branching a tree off of it. Needless to say, there are many creative things that you can do with this. Combine it with the suggestion in #1, and you can make more powerful Drengin Lasers, and specialized Yor Missiles in no time without any worry about it being traded to or stolen by the Altarians.
- Since there is a 'no tech trade' option in 1.1, I don't think it would be very hard (of course I may be wrong) to make a certain tech behave this way. Of course, the {NoSteal} tag might need some work. However, this also lets modders determines an intermediate between massive tech trading and no tech trading at all that is in the current system.
3. Better support for multiple {Class} tags in all modules in "GC2Types.xml".
- Basically this lets people make modules that can shoot, ships with default weapons, and weapons that can defend against missiles, etc... From what I can gather from my experiments, the way it is done now, the {Class} tag is only read in if the module is a weapon or a defense, and it only reads it once, so no multiple class weapons, or multiple class defenses either. I can understand from the game's perspective that it is used for balancing reasons, but it wouldn't hurt to give modders the options to change these and be creative. The balancing would have to be the modder's responsibility.
- This might be the most difficult of the suggestions, but it, like the previous suggestions leads to many interesting changes like Point Defense Lasers, or tiny defender drones (hulls with zero space and movement, but some defenses and weapon for planetary defense).
I'm sure there are a lot more suggestions that would make modding the game that much more satisfying, but for now, these three are at the top of my list, and seems to be "do-able". Perhaps others will add their requests as well, and hopefully a dev will have some time to look through the possibilities.
*cross fingers and pray that the message actually shows up, and in the right place*
So I thought I'd put up a post in the forum to request some extra features for modders. I apologize if it has already been done, but frankly it's just impossible to find anything in this forum. Let's hope that this post actually show up even. With that said, it is my hope that this will become somewhat of an 'official' list, something that the devs might visit and go, "hey, let's toss that in," if they should ever find the time. That's why I've limited this particular topic to just extra xml tag support. This is because while adding them will make all our (modding) life easier, it does not affect the current game balance. So please, if you would like to request a certain tag or feature added, make sure that it will not throw off the balance in the current game before doing so. This thread only exist to make modding the existing game easier, not change some fundamental game design (like adding tactical combat).
With that said, I'll start off with some of my own requests, starting with the easiest:
1. Support for a {S_UpgradeTarget} in all the types of "GC2Types.xml" like it is done in "PlanetImprovements.xml"
- Basically, this would be used to make Laser III replace Laser II in the ship design module list instead of leave them both there. Now, I understand that sometimes you might not want this, but since you are not 'enforcing' the use of this tag, it will be up to the modders to make sure that whatever they replace will be better. Normally, this serves to keep down the number of modules in the weapon and defense list, however it could be used creatively to make a whole branch of the tech tree dealing with improving lasers, and another branch improving plasma weapons, etc. So that in the end, you have multiple choices for your beam weapon instead of all rushing for Doom Rays. Again, it doesn't affect the core game, but can lead to many creative options like a technology line that upgrades your hull types (IE: research a "Improved fighter construction" to get three improved tiny hulls, that would replace the old ones instead of making the 'ship' tree a gigantic list - thank god for hull filtering). By doing this, you also enforce the AI to use the 'best' that they have available (so you don't end up with the AI using old hulls when they have an improved one).
- Since the tag is already in used in "PlanetImprovements.xml", I don't think this will be hard to implement at all. For those who still haven't figured it out, yes, you can take out this tags in "PlanetImprovements.xml" and be able to build earlier buildings, it would just kill the "auto-upgrade" option by the governor, and the list of buildings will be very long (perhaps adding filtering tags to all the facilities in "PlanetImprovements.xml" might also be a good idea, although after lowering the cost of high-end building, I have found this to be a non-issue). I just think that sensors, life support, weapons, defenses, and engines should have the option to be replaced or not so as to cut down the number of possible modules when you start to add more.
2. Support for {NoTrade}, and {NoSteal} tags in "TechTree.xml".
- This can be used to mod the existing game to stop a certain technology from being traded/stolen. Mainly I would apply this to the good and evil technologies from xeno ethics as a fix, because it will stop the exploit where you can trade good technologies to evil/neutral empires repeatedly. Further more, it will allow the creation of 'unique' technologies for each race by creating a starting race technology with a ridiculous research cost and give it to that race and branching a tree off of it. Needless to say, there are many creative things that you can do with this. Combine it with the suggestion in #1, and you can make more powerful Drengin Lasers, and specialized Yor Missiles in no time without any worry about it being traded to or stolen by the Altarians.
- Since there is a 'no tech trade' option in 1.1, I don't think it would be very hard (of course I may be wrong) to make a certain tech behave this way. Of course, the {NoSteal} tag might need some work. However, this also lets modders determines an intermediate between massive tech trading and no tech trading at all that is in the current system.
3. Better support for multiple {Class} tags in all modules in "GC2Types.xml".
- Basically this lets people make modules that can shoot, ships with default weapons, and weapons that can defend against missiles, etc... From what I can gather from my experiments, the way it is done now, the {Class} tag is only read in if the module is a weapon or a defense, and it only reads it once, so no multiple class weapons, or multiple class defenses either. I can understand from the game's perspective that it is used for balancing reasons, but it wouldn't hurt to give modders the options to change these and be creative. The balancing would have to be the modder's responsibility.
- This might be the most difficult of the suggestions, but it, like the previous suggestions leads to many interesting changes like Point Defense Lasers, or tiny defender drones (hulls with zero space and movement, but some defenses and weapon for planetary defense).
I'm sure there are a lot more suggestions that would make modding the game that much more satisfying, but for now, these three are at the top of my list, and seems to be "do-able". Perhaps others will add their requests as well, and hopefully a dev will have some time to look through the possibilities.
*cross fingers and pray that the message actually shows up, and in the right place*
. Really makes it difficult to do too much more than simply tweaking numbers or names a bit.