Use this mod at your own risk. If you make any mistakes GalCiv3 will crash.
It works with the Beta 4 release. No guarantees for future versions of the game.
The objective is to create ship components that uses resources and boost specific ship defense.
- Durantium -> Armor
- Elerium -> Shield
- Anti Matter -> Point defense.
The game uses the ShipComponentDefs.xml file (found in the \steamapps\common\Galactic Civilizations III\data\Game directory) for the definition of ship components, and the ShipComponentDefsText.xml file (locationed in the \steamapps\common\Galactic Civilizations III\data\English\Text directory) for the localized text for the components. However there is no need to actually edit these files as GalCiv3 will process any xml file found in these directories. As long as the structure is correct we can make mod files.
Choose a name for your mod and use this name for your file names. Create the files in the appropriate directories. Eg MyModShipComponentDefs.xml and MyModShipComponentDefsText.xml.
First the component file skeleton (to be created in the \data\Game directory):
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<ShipComponentList
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../Schema/ShipComponentDefs.xsd">
<!-- Augmentation to ShipComponentDefs.xml -->
<ShipComponent>
</ShipComponent>
</ShipComponentList>
Secondly the component text file skeleton (to be created in the \data\English\Text directory):
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<StringTableList
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../Schema/Lib/StringTable.xsd">
<!-- Augmentation to ShipComponentText.xml -->
<!-- Tech Names and Descriptions -->
<StringTable>
</StringTable>
</StringTableList>
The tags:
I will only discuss the tags of interest, the rest will be copies from a standard component.
<InternalName> defines the name by which the game internally references this component. Pick something unique.
<DisplayName> and <Description> are two links to the localization text file for the name and description as the player will see them.
<ArtDefine> Name of the graphical representation of the component. Do not muck about with this value, pick one that is already used by a component in the existing ShipComponentDefs.xml.
<Category> and <Type> are use by the ship designer to determine where in the component list this component belongs, and by the auto ship designer to determine of which blueprint component group this component is a member. Unless you are going to mess with the ship designer UI and the ship categories stay away from these and keep them at the standard values.
<OnePerShip> this field is rather clear in purpose. I have set it to true, because the game does not have a concept of defense augmentation it will think that the component is a standard defense component and will try to use it as such, and that behaviour is quite undesirable. By limiting the component usage to 1 this mitigates a potential problem.
<PlacementType> where the auto designer will place the component. We are building an augmentation component, so the placement is Augment.
<Stats> defines the costs and effects of the component. For the most i have changed the flat values to multiplier values and altered their values. But i have added a stats to consume a resource.
<Prerequ> defines what tech is needed before this component becomes available in the game. I picked InterstellarMining.
To keep this post short the actual implementation of the 3 components are shown in the replies.
General description of the net effect.
When the Durantium coating component is used in a ship design then: Armor manufacturing cost are increased by 400%, the combined mass of all armor components is increased by 5%, the total armor rating of the ship is increased by 50%, maintenance of the ship is increased by 75%, it costs 1 durantium to build the ship.
The other defenses are the same, except they use Elerium for shield augmentation and Anti matter for the point defense.
Equipping a ship with all three components makes the ship massively expensive. Resulting in a very strong ship, but you will be bleeding credits (not really a problem in the Beta).