Modding, making new home systems for user races.

Can anyone send me or point me to an example user created home world system?  I have 20 user created races right now and would love to add custom homeworlds for each one. I am new to this and would like to see a sample that someone has created already so I could "copy" into my own. 

13,408 views 5 replies
Reply #1 Top

It is not as easy as editing 1 file. You need to edit the following files:

StarSystemText.xml and PlanetText.xml placing them in the Mods/text directory

PlanetDefs.xml and StarSystemDefs.xml placing them in the Mods/Gameplay directory

Look for these files in the Epic Games\Games\GCIV\Data folder under the text and gameplay folders, copy those to your mod directory. Use the entries for the sol system as your template and modify them to your liking, careful with "earth" as it uses a custom art that will override your settings so delete that entry. Make sure you customize your entries in all the files named above, it will take some work but you will get what you are looking for.

This uses the replace method which just tells the game to use the files you modded instead of the originals so make sure you do not modify any other entries than the ones you want to use. I tried the append method and it kept giving me errors.

 

here is a part of my StarSystemText.xml to edit the homeworld, as you see all I did was copy and paste the sol system entry and then modify it as my Terra system entry indicating it was now a class 30 paradise world

<?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">

<!-- Created with the GC4 editor -->

<!-- StarSystemText.xml -->

 <!-- Tech Names and Descriptions -->

   <StringTable>

    <Label>SolSystem_Name</Label>

    <String>Sol</String>

  </StringTable>

 

  <StringTable>

    <Label>SolSystem_Dec</Label>

    <String>The Terran solar system containing a class 28 [HS=HS_TerrestrialWorld]Terrestrial[/HS] world and two small worlds.</String>

  </StringTable>

  

    <StringTable>

    <Label>TerraSystem_Name</Label>

    <String>Terra</String>

  </StringTable>

 

  <StringTable>

    <Label>TerraSystem_Dec</Label>

    <String>The Terran solar system containing a class 30 [HS=HS_ParadiseWorld]Paradise[/HS] world.</String>

  </StringTable>

 

Reply #2 Top

Here is the PlanetDefs.xml showing the copied earth entry and pasted/changed to my Terra entry again to edit the homeworld, I just posted the relevant entries all others were truncated but they are unmodified. The tricky part are the star system entries, it is not hard just tedious if you want several planets in your system on top of the homeworld, each entry needs to be coordinated between the defs and the text files. As I mentioned I just used the sol system files and renamed them, Mars became a class 18 terrestrial world named Ares for example.

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

<PlanetList

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:noNamespaceSchemaLocation="../Schema/PlanetDefs.xsd">

<!-- Homeworlds -->

<Planet>

<InternalName>PlanetEarth</InternalName>

<DisplayName>EarthName</DisplayName>

<PlanetType>Habitable</PlanetType>

<PlanetClass>29</PlanetClass>

<PlanetTrait>TerrestrialWorld</PlanetTrait>

<ArtDefine>EarthArt</ArtDefine>

<LayoutAtlas>EARTH_ATLAS</LayoutAtlas>

<LayoutAtlasIndex>0</LayoutAtlasIndex>

<PlanetClassDistribution>

<Minerals>5</Minerals>

<Technology>4</Technology>

<Wealth>5</Wealth>

<Fertility>12</Fertility>

<PlanetInfluence>9</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

<Planet>

<InternalName>PlanetTerra</InternalName>

<DisplayName>TerraName</DisplayName>

<PlanetType>Habitable</PlanetType>

<PlanetClass>30</PlanetClass>

<PlanetTrait>ParadiseWorld</PlanetTrait>

<PlanetClassDistribution>

<Minerals>6</Minerals>

<Technology>4</Technology>

<Wealth>5</Wealth>

<Fertility>12</Fertility>

<PlanetInfluence>9</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

 

Reply #3 Top

My entries into the PlanetText.xml, again I just used the Sol system as a template which is why the labels are are not consistent

    <!--Terra System-->

  <StringTable>

<Label>HADES_NAME</Label>

<String>Hades</String>

  </StringTable>

  <StringTable>

    <Label>PLANET_APHRODITE_NAME</Label>

    <String>Aphrodite</String>

  </StringTable>

  <StringTable>

<Label>TerraName</Label>

<String>Terra</String>

  </StringTable>

  <StringTable>

<Label>AresName</Label>

<String>Ares</String>

  </StringTable>

  <StringTable>

<Label>ZeusName</Label>

<String>Zeus</String>

  </StringTable>

  <StringTable>

<Label>DemeterName</Label>

<String>Demeter</String>

  </StringTable>

  <StringTable>

    <Label>PLANET_Poseidon_NAME</Label>

    <String>Poseidon</String>

  </StringTable>

    <StringTable>

    <Label>DianaName</Label>

    <String>Diana</String>

  </StringTable>

  <StringTable>

    <Label>PLANET_APOLLO_NAME</Label>

    <String>Apollo</String>

  </StringTable>

Reply #4 Top

The planet entries in PlanetDefs.xml, I just put thesefollowing the "Artemis" entry

<Planet>

<InternalName>PlanetPoseidon</InternalName>

<DisplayName>PLANET_Poseidon_NAME</DisplayName>

<PlanetType>Dead</PlanetType>

<PlanetClass>0</PlanetClass>

<ArtDefine>NeptuneArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>0</Minerals>

<Technology>0</Technology>

<Wealth>0</Wealth>

<Fertility>0</Fertility>

            <PlanetInfluence>0</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

<Planet>

<InternalName>PlanetApollo</InternalName>

<DisplayName>PLANET_APOLLO_NAME</DisplayName>

<PlanetType>Dead</PlanetType>

<PlanetClass>0</PlanetClass>

<ArtDefine>UranusArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>0</Minerals>

<Technology>0</Technology>

<Wealth>0</Wealth>

<Fertility>0</Fertility>

            <PlanetInfluence>0</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

<Planet>

<InternalName>PlanetAphrodite</InternalName>

<DisplayName>PLANET_APHRODITE_NAME</DisplayName>

<PlanetType>Habitable</PlanetType>

<PlanetClass>18</PlanetClass>

<PlanetTrait>JungleWorld</PlanetTrait>

<ArtDefine>VenusArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>5</Minerals>

<Technology>2</Technology>

<Wealth>2</Wealth>

<Fertility>9</Fertility>

            <PlanetInfluence>9</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

<Planet>

<InternalName>PlanetHades</InternalName>

<DisplayName>HADES_NAME</DisplayName>

<PlanetType>Dead</PlanetType>

<PlanetClass>0</PlanetClass>

<ArtDefine>MercuryArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>0</Minerals>

<Technology>0</Technology>

<Wealth>0</Wealth>

<Fertility>0</Fertility>

            <PlanetInfluence>0</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

<Planet>

<InternalName>PlanetAres</InternalName>

<DisplayName>AresName</DisplayName>

<PlanetType>Habitable</PlanetType>

<PlanetClass>18</PlanetClass>

<PlanetTrait>TerrestrialWorld</PlanetTrait>

<ColonizationEventOverride>Event_ColonizeMars</ColonizationEventOverride>

<ArtDefine>MarsArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>4</Minerals>

<Technology>9</Technology>

<Wealth>2</Wealth>

<Fertility>9</Fertility>

<PlanetInfluence>9</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

<Planet>

<InternalName>PlanetZeus</InternalName>

<DisplayName>ZeusName</DisplayName>

<PlanetType>GasGiant</PlanetType>

<PlanetClass>0</PlanetClass>

<ArtDefine>JupiterArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>0</Minerals>

<Technology>0</Technology>

<Wealth>0</Wealth>

<Fertility>0</Fertility>

            <PlanetInfluence>0</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

  <Planet>

<InternalName>PlanetDemeter</InternalName>

<DisplayName>DemeterName</DisplayName>

<PlanetType>GasGiant</PlanetType>

<PlanetClass>0</PlanetClass>

<ArtDefine>SaturnArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>0</Minerals>

<Technology>0</Technology>

<Wealth>0</Wealth>

<Fertility>0</Fertility>

            <PlanetInfluence>0</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

 

<Planet>

<InternalName>PlanetDiana</InternalName>

<DisplayName>DianaName</DisplayName>

<PlanetType>Habitable</PlanetType>

<PlanetClass>20</PlanetClass>

<PlanetTrait>PrecursorTreasury</PlanetTrait>

<ColonizationEventOverride>Event_ColonizeArtemis</ColonizationEventOverride>

<ArtDefine>ArtemisArt</ArtDefine>

<PlanetClassDistribution>

<Minerals>3</Minerals>

<Technology>2</Technology>

<Wealth>9</Wealth>

<Fertility>9</Fertility>

<PlanetInfluence>9</PlanetInfluence>

</PlanetClassDistribution>

</Planet>

Reply #5 Top

And finally the entries in StarSystemDefs.xml, again just under the entry for "Artemis" and before the entries for Drengi

 <StarSystem>

      <InternalName>TerraSystem</InternalName>

      <DisplayName>TerraSystem_Name</DisplayName>

      <Description>TerraSystem_Dec</Description>

      <OrbitLane>

        <LaneType>Star</LaneType>

        <Body>

          <BodyType>UnaryStar</BodyType>

          <BodyDef>SolStar</BodyDef>

        </Body>

      </OrbitLane>

      <OrbitLane>

        <LaneType>DeadZone</LaneType>

      </OrbitLane>

      <OrbitLane>

        <LaneType>DeadZone</LaneType>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetHades</BodyDef>

          <Position>3</Position>

        </Body>

      </OrbitLane>

      <OrbitLane>

        <LaneType>HabitableZone</LaneType>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetAphrodite</BodyDef>

          <Position>12</Position>

        </Body>

      </OrbitLane>

      <OrbitLane>

        <LaneType>HabitableZone</LaneType>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetTerra</BodyDef>

          <IsHomeworld>true</IsHomeworld>

          <Position>6</Position>

        </Body>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetAres</BodyDef>

          <Position>21</Position>

        </Body>

      </OrbitLane>

      <OrbitLane>

        <LaneType>DeadZone</LaneType>

        <Body>

          <BodyType>Asteroid</BodyType>

          <BodyDef>NormalAsteroid</BodyDef>

          <Position>0</Position>

        </Body>

        <Body>

          <BodyType>Asteroid</BodyType>

          <BodyDef>NormalAsteroid</BodyDef>

          <Position>22</Position>

        </Body>

      </OrbitLane>

      <OrbitLane>

        <LaneType>DeadZone</LaneType>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetZeus</BodyDef>

          <Position>21</Position>

        </Body>

      </OrbitLane>

      <OrbitLane>

        <LaneType>NoRandom</LaneType>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetApollo</BodyDef>

          <Position>5</Position>

        </Body>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetPoseidon</BodyDef>

          <Position>32</Position>

        </Body>

      </OrbitLane>

      <OrbitLane>

        <LaneType>HabitableZone</LaneType>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetDemeter</BodyDef>

          <Position>33</Position>

        </Body>

        <Body>

          <BodyType>Planet</BodyType>

          <BodyDef>PlanetDiana</BodyDef>

          <Position>34</Position>

        </Body>

      </OrbitLane>

    </StarSystem>