After you have the start tag:
Code: Select all
<SystemType UNID="&ssStartonEridani;">
Code: Select all
<Tables>
<DanteStations>
<Table>
<Station chance="45" type="&stMiningColony;"/>
<Station chance="25" type="&stCentauriCamp;"/>
<Station chance="10" type="&stCharonPirateOutpost;"/>
<Station chance="5" type="&stCommonwealthSlums;"/>
<Station chance="5" type="&stFuelDepot;"/>
<Null chance="10" />
</Table>
</DanteStations>
</Tables>
Next, you make the actual system. Begin with a
Code: Select all
<SystemGroup>
Every system needs a central point. In all vanilla systems, this is a star.
Code: Select all
<Station type="&stG-TypeStar;" name="Epsilon Eridani"/>
To put a planet in orbit you need to have the <Orbitals> tag:
Code: Select all
<Orbitals distance="50" angle="random">
Code: Select all
distance="5" scale="lightyear"
Now you can put in groups to put in planets. <Group> is used to put an imaginary marker in the spot where you can have multiple stations. Put this in an <Orbitals> tag.
The <Group> tag can (but does not have to) have the same descriptions as <Orbitals>. This would put it a distance away from the point put there by the <Orbitals> tag.
Group tags then can have a tag <Primary> This can have a station under it. It puts the station on the point placed by the Group/Orbitals tags.
Then you have another <Orbitals> tag with the distance and angle information in it.
Under this tag you can put in the stations, or draw a list from the <Tables> section.
To but a moon in, under the second <Orbitals> tag put in a second planet. To put stations in orbit have this:
Code: Select all
<Station type="&stPlanetoid;">
<Orbitals distance="5" angle="random">
<Station type="&stStation;"/>
</Orbitals>
</Station>
To put in an asteroid belt, it helps to have a <Table> stored with several asteroids.
Code: Select all
<Group chance="50">
<Trojan>
<Lookup table="StJohnTrojans"/>
<Orbitals distance="1d8+6" angle="random">
<Station type="&stRaisuStation;" />
</Orbitals>
</Trojan>
<AntiTrojan>
<Lookup table="StJohnTrojans"/>
<Orbitals distance="1d8+6" angle="random">
<Lookup table="StJohnTrojanStations"/>
</Orbitals>
</AntiTrojan>
</Group>
Code: Select all
<Orbitals distance="5d8" angle="random" count="10d10">
<Station type="&stStation;"/>
</Orbitals>
Another type of system you can create is a random station. This is used a lot in vanilla Transcendence.
These usually have no tables inside them. It just goes right to <SystemGroup>
The example here will come from the Transcendence standard system.
Each one has a base type:
Code: Select all
<Lookup table="YellowStarSystem"/>
Then, tell the game to make the stargates:
Code: Select all
<RandomLocation locationCriteria="++OuterSystem,-asteroids,-gasgiant">
<Lookup table="StargateInbound"/>
</RandomLocation>
<RandomLocation locationCriteria="++InnerSystem,-asteroids,-gasgiant">
<Lookup table="StargateOutbound"/>
</RandomLocation>
Code: Select all
<RandomLocation locationCriteria="!Planet,--asteroids,++void">
<Station type="&stStation;"/>
</RandomLocation>
You can also use the above <RandomLocation> to put in random stations:
Code: Select all
<RandomLocation probability="90" locationCriteria="++LifeZone,*planet">
<RandomStation stationCriteria="*friendly,*primary"/>
</RandomLocation>
Another useful tag is the <FillLocations> tag.
Code: Select all
<FillLocations
percentFull= "80"
stationCriteria= "!primary,!debris,+envWater,-envAvoidsWater"
percentEnemies= "65"
separateEnemies= "true"
/>
Last, you can have a simple <Orbitals> tag to have groups orbit the star. You can put certain stations or random stations.
Just some extra information:
-All systems must have two stargates unless they are special systems, only Eridani in vanilla.
-All systems need to have a central point. Though it seems like it would work without it, it doesn't. If you want to have nothing there, make a station without an image as a background object.
-All systems should have some friendly station in them. Otherwise, fuel runs out or the player is hunted down by enemies.
-Don't put too many warring factions in the same map; it tends to lag computers with all the fighting
-Don't make the map much larger than 15 light seconds radius. Missions become too long, and it's hard for the player to go where they need to
Of course, the best way to learn this is by searching through systems in the Transcendence.xml and subsequent files.