Star System Topology Basics

Freeform discussion about anything related to modding Transcendence.
Post Reply
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

Basic Topology

Star System Topology defines the connections between star systems in the game. The vanilla version of the game makes use of a simple linear model, but the game accepts much more complex and dynamic topology structures.

You will need the game xml data to view the topology, extracted from the tdb using TransData.

Star System Topology is located within the main Transcendence.xml file. Open using a basic word pad, and Find:

Code: Select all

<!-- Star System Topology ****************************************************************** ->
Which, you will see, is a comment between the <SystemTypes> and <StarSystemTopology> tags of the xml.

Some time spent looking at the structure of the code in those two tags is beneficial, but for designing topology you will mainly focus on the <StarSystemTopology> tag. Knowing the names of the systems is important, that is why you will want to look in the <SystemTypes> tag for reference. The names of the star systems come in this format:

Code: Select all

UNID="&ssEarthSpaceStandard;"/>
In the <SystemTypes> tag you will find the UNID corresponds to a random system definition. This is used to define the solar system objects and stations. This tutorial won't be getting into changing the systems, but knowing where they are and what the <StarSystemTopology> is pointing to can be helpful.

If you know the list of available systems (an easy way is to look in the entities listing at the top of the Transcendence file...) you can use them when designing a star network. ***You must define at least one system UNID to each topology node.

The <StarSystemTopology> tag contains <Node> tags. Each <Node> tag represents a system or possible system within the star network. The structure of the Node tag is very simple:

Code: Select all

	<Node ID="SE" rootNode="true">
		<System name="Eridani"				level="1">
			<System UNID="&ssStartonEridani;"/>
		</System>

		<StarGates>
			<StarGate Name="Outbound" DestID="C1" DestGate="Inbound"/>
		</StarGates>
	</Node>

( I removed the Debug gate from this example )
Node tags themselves contain an ID that must be unique for each node in the topology tag.

rootNode is a special case that allows a Node to be disconnected from the system in some ways. Only Eridani and Elysium make use of this feature in the vanilla topology.

Node tags then contain 2 tags that define information for the system. The System tag and the StarGates tag. In the above example, there is only one gate. The number of gates listed in the tag must match the number of gates placed in the system by the <SystemType> definition. The standard set of random system types uses 2 gates, Inbound and Outbound; Eridani is unique, it's system type definition only contains the one Outbound gate.

Both the System and the StarGates tags can make use of Tables to create a random array:

Code: Select all

	<Node ID="C3">
		<System								level="2"	variant="commonwealth">
			<Table>
				<Item chance="25" name="Orgos"		UNID="&ssEarthSpaceStandard;"/>
				<Item chance="25" name="Ross 248"	UNID="&ssEarthSpaceRedDwarf;"/>
				<Item chance="25" name="Cairn"		UNID="&ssEarthSpaceAsteroids;"/>
				<Item chance="25" name="Ras Alhague" UNID="&ssEarthSpaceDesert;"/>
			</Table>
		</System>

		<StarGates>
			<StarGate Name="Inbound" DestID="Prev" DestGate="Outbound"/>
			<Table>
				<StarGate chance="50" Name="Outbound" DestID="C3A" DestGate="Inbound"/>
				<StarGate chance="50" Name="Outbound" DestID="BA" DestGate="Inbound"/>
			</Table>
		</StarGates>
	</Node>
In the above example, the name and the system type are chosen from the array of 4 with even chances (25%). Standard is a Water system, RedDwarf is an Air system, Asteroids is an Earth system and Desert is a Fire system. There are about 2 systems for each of the 4 elemental types defined for the game. Elemental filters are used to select some stations and enemy types you encounter.

Also note that the Outbound StarGate gives a choice of where to go. Some games you get C3A, some you don't ever see it.

That is an important feature to make use of when designing dynamic topologies. Understanding how the tables can be used in the Node structure will open the doors to much more complex topology designs.

You can also construct a <System> tag to use a static name but select from an array of system types:

Code: Select all

	<Node ID="RC4AB1DA">
		<System name="Makinupnames" level="3">
			<Table>
				<Item chance="17" UNID="&ssFrontierStandard2;"/>
				<Item chance="8" UNID="&ssFrontierNebulae2;"/>
				<Item chance="17" UNID="&ssFrontierAsteroids2;"/>
				<Item chance="8" UNID="&ssFrontierVolcanic2;"/>
				<Item chance="17" UNID="&ssHostileStandard2;"/>
				<Item chance="8" UNID="&ssHostileNebulae2;"/>
				<Item chance="17" UNID="&ssHostileAsteroids2;"/>
				<Item chance="8" UNID="&ssHostileVolcanic2;"/>
			</Table>
		</System>
		<StarGates>
			<StarGate Name="Outbound" DestID="RC4AB1D" DestGate="Inbound"/>
			<StarGate Name="Inbound" DestID="RC4AB1DB" DestGate="Inbound"/>

		</StarGates>
	</Node>
Rather than an individual name for each system type, this node uses a static name="Makinupnames", and still uses a healthy array of system types. (System types in this example do not exist in the vanilla version)

Code: Select all

	<Node ID="SE" rootNode="true">
		<System name="Eridani"				level="1">
			<System UNID="&ssStartonEridani;"/>
		</System>

		<StarGates>
			<Table>
			<StarGate chance="1" Name="Outbound" DestID="lineC1A" DestGate="Inbound"/>
			<StarGate chance="1" Name="Outbound" DestID="lineC1B" DestGate="Inbound"/>
			<StarGate chance="1" Name="Outbound" DestID="lineC1C" DestGate="Inbound"/>
			<StarGate chance="1" Name="Outbound" DestID="lineC1D" DestGate="Inbound"/>
			<StarGate chance="1" Name="Outbound" DestID="AloopC1" DestGate="Inbound"/>
			<StarGate chance="1" Name="Outbound" DestID="BloopC1" DestGate="Inbound"/>
			<StarGate chance="1" Name="Outbound" DestID="1DloopC1" DestGate="Inbound"/>
			<StarGate chance="1" Name="Outbound" DestID="2DloopC1" DestGate="Inbound"/> 
			<StarGate chance="1" Name="Outbound" DestID="NetC1" DestGate="Inbound"/>
			<StarGate chance="91" Name="Outbound" DestID="SKoneC1" DestGate="Inbound"/>
			</Table>
		</StarGates>
	</Node>
Here is an example of a very large array of options for the Outbound gate. Notice the chances are tweaked out of balance in favor of the final entry. Tweaking the chances can be used to have some very very rare links show up only once in a very rare game, perhaps linking to a unique system you have made full of magical laser beams.

In the StarGate tag, the Name is the gate you will be using (Inbound or Outbound for vanilla), the DestID is the Node you are gating to, and the DestGate is the gate you are targeting. Most nodes in the vanilla version make use of the Inbound gate for entry, and it's DestID is set to use the special "Prev" ID. Prev makes the gate that uses it target the node you entered from. In a linear system with some random nodes to choose from, this feature allows the return link to be created- otherwise you wouldn't know which node to return to. This is used for 2 way gate systems. One way gate systems can be made to work, and can be fun for maze type structures.


Because the vanilla version systems only make use of an Inbound and Outbound gate, you can't get very sophisticated networks built. To make the jump into networks and multi-linked star systems you will need to expand the placed gates in the systems. The fastest way to do this is to grab my mod, Stone Soup Transcendence, which has multi gate versions of all the systems ready to go, and a whole bunch of other features built in to help topology designing.

Multi gate and networked topologies are a little more than this tutorial was meant to go into, my intent was to present the basics for anyone to use to get familiar with the current topology system. Once you begin to understand the Node structure and the way that gates are pointed to other nodes, and how to use Prev and Tables to create some dynamic features, you will be ready for extreme topology modding!

Take a good long look at the original topology, and then try comparing it to the modded topologies. With a little time spent experimenting you can easily grasp the fundamentals of topology modding. And just in time! George will be incorporating the means to make topologies in extensions, so we can easily design and mod to our heart's content!
User avatar
digdug
Fleet Admiral
Fleet Admiral
Posts: 2620
Joined: Mon Oct 29, 2007 9:23 pm
Location: Decoding hieroglyphics on Tan-Ru-Dorem

Periculi Posted: Mon Dec 31, 2007 8:15 pm
To make the jump into networks and multi-linked star systems you will need to expand the placed gates in the systems. The fastest way to do this is to grab my mod, Stone Soup Transcendence, which has multi gate versions of all the systems ready to go, and a whole bunch of other features built in to help topology designing.
So I was reading the stone soup v3, is your mod already prepared for up to 5 stargates per system ? (head scratching... :?: )
<StargateInbound>
<Group>
<Station type="&stStargate;" stargate="Inbound"/>
<Station type="&stStargateBeacon;" xOffset="130" yOffset="0" />
<Station type="&stStargateBeacon;" xOffset="0" yOffset="-130" />
</Group>
</StargateInbound>

<StargateOutbound>
<Group>
<Station type="&stStargate;" stargate="Outbound"/>
<Station type="&stStargateBeacon;" xOffset="0" yOffset="130" />
<Station type="&stStargateBeacon;" xOffset="0" yOffset="-130" />
</Group>
</StargateOutbound>

<StargateThird>
<Group>
<Station type="&stStargate;" stargate="Third"/>
<Station type="&stStargateBeacon;" xOffset="0" yOffset="130" />
<Station type="&stStargateBeacon;" xOffset="0" yOffset="-130" />
</Group>
</StargateThird>

<StargateFourth>
<Group>
<Station type="&stStargate;" stargate="Fourth"/>
<Station type="&stStargateBeacon;" xOffset="0" yOffset="130" />
<Station type="&stStargateBeacon;" xOffset="0" yOffset="-130" />
</Group>
</StargateFourth>

<StargateFifth>
<Group>
<Station type="&stStargate;" stargate="Fifth"/>
<Station type="&stStargateBeacon;" xOffset="0" yOffset="130" />
<Station type="&stStargateBeacon;" xOffset="0" yOffset="-130" />
</Group>
</StargateFifth>
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

Precisely.

There are the extra tables for the Stargates (which mostly serve to include the beacons), as well as a full set of basic random systems to make use of:

Code: Select all

	<!ENTITY ssEarthSpaceStandard1		"0xDDDD0601">
	<!ENTITY ssEarthSpaceRedDwarf1		"0xDDDD0602">
	<!ENTITY ssEarthSpaceAsteroids1		"0xDDDD0603">
	<!ENTITY ssEarthSpaceDesert1			"0xDDDD0693">
	<!ENTITY ssEarthSpaceNebulae1		"0xDDDD0604">
	<!ENTITY ssEarthSpaceVolcanic1		"0xDDDD0605">
	<!ENTITY ssEarthSpaceIceRing1		"0xDDDD0606">
	<!ENTITY ssEarthSpaceBinary1			"0xDDDD0607">

	<!ENTITY ssHostileStandard1		"0xDDDD0640">
	<!ENTITY ssHostileRedDwarf1		"0xDDDD0641">
	<!ENTITY ssHostileAsteroids1		"0xDDDD0642">
	<!ENTITY ssHostileDesert1			"0xDDDD0643">
	<!ENTITY ssHostileNebulae1		"0xDDDD0644">
	<!ENTITY ssHostileVolcanic1		"0xDDDD0645">
	<!ENTITY ssHostileIceRing1		"0xDDDD0646">
	<!ENTITY ssHostileBinary1			"0xDDDD0647">

	<!ENTITY ssFrontierStandard1		"0xDDDD0668">
	<!ENTITY ssFrontierRedDwarf1		"0xDDDD0669">
	<!ENTITY ssFrontierAsteroids1		"0xDDDD066A">
	<!ENTITY ssFrontierDesert1			"0xDDDD066B">
	<!ENTITY ssFrontierNebulae1		"0xDDDD066C">
	<!ENTITY ssFrontierVolcanic1		"0xDDDD066D">
	<!ENTITY ssFrontierIceRing1		"0xDDDD066E">
	<!ENTITY ssFrontierBinary1			"0xDDDD066F">


	<!ENTITY ssEarthSpaceStandard2		"0x00000001">
	<!ENTITY ssEarthSpaceRedDwarf2		"0x00000002">
	<!ENTITY ssEarthSpaceAsteroids2		"0x00000003">
	<!ENTITY ssEarthSpaceDesert2			"0x00000004">
	<!ENTITY ssEarthSpaceNebulae2		"0x00000005">
	<!ENTITY ssEarthSpaceVolcanic2		"0x00000006">
	<!ENTITY ssEarthSpaceIceRing2		"0x00000007">
	<!ENTITY ssEarthSpaceBinary2			"0x00000008">
	<!ENTITY ssEarthSpaceAsteroids22		"0x00000009">
	<!ENTITY ssEarthSpaceDesert22		"0x0000000A">

	<!ENTITY ssHostileStandard2		"0xDDDD0648">
	<!ENTITY ssHostileRedDwarf2		"0xDDDD0649">
	<!ENTITY ssHostileAsteroids2		"0xDDDD064A">
	<!ENTITY ssHostileDesert2			"0xDDDD064B">
	<!ENTITY ssHostileNebulae2		"0xDDDD064C">
	<!ENTITY ssHostileVolcanic2		"0xDDDD064D">
	<!ENTITY ssHostileIceRing2		"0xDDDD064E">
	<!ENTITY ssHostileBinary2			"0xDDDD064F">

	<!ENTITY ssFrontierStandard2		"0xDDDD0670">
	<!ENTITY ssFrontierRedDwarf2		"0xDDDD0671">
	<!ENTITY ssFrontierAsteroids2		"0xDDDD0672">
	<!ENTITY ssFrontierDesert2			"0xDDDD0673">
	<!ENTITY ssFrontierNebulae2		"0xDDDD0674">
	<!ENTITY ssFrontierVolcanic2		"0xDDDD0675">
	<!ENTITY ssFrontierIceRing2		"0xDDDD0676">
	<!ENTITY ssFrontierBinary2			"0xDDDD0677">

	<!ENTITY ssEarthSpaceStandard3		"0xDDDD0608">
	<!ENTITY ssEarthSpaceRedDwarf3		"0xDDDD0609">
	<!ENTITY ssEarthSpaceAsteroids3		"0xDDDD060A">
	<!ENTITY ssEarthSpaceDesert3			"0xDDDD060B">
	<!ENTITY ssEarthSpaceNebulae3		"0xDDDD060C">
	<!ENTITY ssEarthSpaceVolcanic3		"0xDDDD060D">
	<!ENTITY ssEarthSpaceIceRing3		"0xDDDD060E">
	<!ENTITY ssEarthSpaceBinary3			"0xDDDD060F">

	<!ENTITY ssHostileStandard3		"0xDDDD0650">
	<!ENTITY ssHostileRedDwarf3		"0xDDDD0651">
	<!ENTITY ssHostileAsteroids3		"0xDDDD0652">
	<!ENTITY ssHostileDesert3			"0xDDDD0653">
	<!ENTITY ssHostileNebulae3		"0xDDDD0654">
	<!ENTITY ssHostileVolcanic3		"0xDDDD0655">
	<!ENTITY ssHostileIceRing3		"0xDDDD0656">
	<!ENTITY ssHostileBinary3			"0xDDDD0657">

	<!ENTITY ssFrontierStandard3		"0xDDDD0678">
	<!ENTITY ssFrontierRedDwarf3		"0xDDDD0679">
	<!ENTITY ssFrontierAsteroids3		"0xDDDD067A">
	<!ENTITY ssFrontierDesert3			"0xDDDD067B">
	<!ENTITY ssFrontierNebulae3		"0xDDDD067C">
	<!ENTITY ssFrontierVolcanic3		"0xDDDD067D">
	<!ENTITY ssFrontierIceRing3		"0xDDDD067E">
	<!ENTITY ssFrontierBinary3			"0xDDDD067F">

	<!ENTITY ssEarthSpaceStandard4		"0xDDDD0610">
	<!ENTITY ssEarthSpaceRedDwarf4		"0xDDDD0611">
	<!ENTITY ssEarthSpaceAsteroids4		"0xDDDD0612">
	<!ENTITY ssEarthSpaceDesert4			"0xDDDD0613">
	<!ENTITY ssEarthSpaceNebulae4		"0xDDDD0614">
	<!ENTITY ssEarthSpaceVolcanic4		"0xDDDD0615">
	<!ENTITY ssEarthSpaceIceRing4		"0xDDDD0616">
	<!ENTITY ssEarthSpaceBinary4			"0xDDDD0617">

	<!ENTITY ssHostileStandard4		"0xDDDD0658">
	<!ENTITY ssHostileRedDwarf4		"0xDDDD0659">
	<!ENTITY ssHostileAsteroids4		"0xDDDD065A">
	<!ENTITY ssHostileDesert4			"0xDDDD065B">
	<!ENTITY ssHostileNebulae4		"0xDDDD065C">
	<!ENTITY ssHostileVolcanic4		"0xDDDD065D">
	<!ENTITY ssHostileIceRing4		"0xDDDD065E">
	<!ENTITY ssHostileBinary4			"0xDDDD065F">

	<!ENTITY ssFrontierStandard4		"0xDDDD0680">
	<!ENTITY ssFrontierRedDwarf4		"0xDDDD0681">
	<!ENTITY ssFrontierAsteroids4		"0xDDDD0682">
	<!ENTITY ssFrontierDesert4			"0xDDDD0683">
	<!ENTITY ssFrontierNebulae4		"0xDDDD0684">
	<!ENTITY ssFrontierVolcanic4		"0xDDDD0685">
	<!ENTITY ssFrontierIceRing4		"0xDDDD0686">
	<!ENTITY ssFrontierBinary4			"0xDDDD0687">

	<!ENTITY ssEarthSpaceStandard5		"0xDDDD061B">
	<!ENTITY ssEarthSpaceRedDwarf5		"0xDDDD061C">
	<!ENTITY ssEarthSpaceAsteroids5		"0xDDDD061D">
	<!ENTITY ssEarthSpaceDesert5			"0xDDDD061E">
	<!ENTITY ssEarthSpaceNebulae5		"0xDDDD061F">
	<!ENTITY ssEarthSpaceVolcanic5		"0xDDDD0620">
	<!ENTITY ssEarthSpaceIceRing5		"0xDDDD0621">
	<!ENTITY ssEarthSpaceBinary5			"0xDDDD0622">

	<!ENTITY ssHostileStandard5		"0xDDDD0660">
	<!ENTITY ssHostileRedDwarf5		"0xDDDD0661">
	<!ENTITY ssHostileAsteroids5		"0xDDDD0662">
	<!ENTITY ssHostileDesert5			"0xDDDD0663">
	<!ENTITY ssHostileNebulae5		"0xDDDD0664">
	<!ENTITY ssHostileVolcanic5		"0xDDDD0665">
	<!ENTITY ssHostileIceRing5		"0xDDDD0666">
	<!ENTITY ssHostileBinary5			"0xDDDD0667">

	<!ENTITY ssFrontierStandard5		"0xDDDD0688">
	<!ENTITY ssFrontierRedDwarf5		"0xDDDD0689">
	<!ENTITY ssFrontierAsteroids5		"0xDDDD068A">
	<!ENTITY ssFrontierDesert5			"0xDDDD068B">
	<!ENTITY ssFrontierNebulae5		"0xDDDD068C">
	<!ENTITY ssFrontierVolcanic5		"0xDDDD068D">
	<!ENTITY ssFrontierIceRing5		"0xDDDD068E">
	<!ENTITY ssFrontierBinary5			"0xDDDD068F">

	<!ENTITY ssStKatharine3		"0xDDDD0618"/>
	<!ENTITY ssStKatharine4		"0xDDDD0619"/>
	<!ENTITY ssStKatharine5		"0xDDDD061A"/>

	<!ENTITY ssBattleArena3		"0xDDDD0623"/>
	<!ENTITY ssCharonPirateFortress4	"0xDDDD0624"/>
To make it easy to remember, I put the number of gates in the system definition in the name: StKatharine3 = St K's with 3 Gates, StKatharine5 = St K's with 5 gates.

You can remove the existing topology (everything from <StarSystemTopology> to </StarSystemTopology> ) and write your own using the systems provided to create complex networks. You can also make your own topology connect to the SS topology in various points- for example, if you keep Eridani the way it is as a starting point and create a whole network, you can graft your network into the SS topology by adding it to the list of possible outbound gates.

Yay!
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

this really points out the need for variable amounts of star gates. Plus even when you do this you have to know how many star gates a system will need ahead of time (so no random amounts of star gates in a system).
Crying is not a proper retort!
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

I so knew you were going to say that!
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

you should have read this huge post I wrote when you first made this thread but I didn't want to confuse people in a basics thread so I didn't post it.
Crying is not a proper retort!
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

:lol:

Since we don't have a fancy and efficient method for declaring gates and links in the Node structures better, I wrote the systems out 'blunt' style.

It works, and it takes very little extra time or space, really- it's less than 250kb still even with all the repeating code.

Also it's not an entirely bad method- now that the systems are structured around the gates like they are, some features of the systems could be changed to reflect the differences between a dead end system and a 5 gate hub with major trade lanes running through it.
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

my problem with the "blunt" method is that you have to know how many gates a system has before hand so you can't do this

Code: Select all

<Table>
	<StarGate chance="25" Name="E" DestID="C6A" DestGate="Inbound"/>
	<StarGate chance="25" Name="E" DestID="CD" DestGate="Inbound"/>
	<StarGate chance="25" Name="E" DestID="CDA" DestGate="Inbound"/>
	Nil
</Table>
You can still guarantee a good network even with these kinds of things.
Crying is not a proper retort!
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

However, I can still get around the limit on that in some ways. For what it is doing, the topology can be dynamic enough.

Ultimately how much different would the game feel is the main question to ask, don't you think?

I feel that the topo system as it is is capable of a very dynamic feeling game, but the dynamic networks have yet to be really expanded on and developed- so there is a lot that can be done without changing the way things are handled now.
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

well it would still feel the same just with optional gates 8)
You always know that there are x amount of gates in any system you give me in the current system.
True you can make a gate go to different places randomly but all in all that isn't very interesting due to the amount of information you already have (you know the amount of gates and level in a given system). Transcendence is all about not knowing and having to explore. If you couldn't ever know if you have found all the gates in a given system (a secret bonus system that rarely shows up) that would help the exploring.

At best in the current system you would have to make a new set of nodes for every variation you would want.
Crying is not a proper retort!
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

played with some numbers just how large the set would get to emulate a optional gates with the current system

simple case (no system linked to this has optional gates): n+2^n where n is the number of optional gates
it grows very fast in the case where optional gates link to systems with optional gates (a system with three optional gates optionally to a different system with three optional gates would need 46 extra nodes)
Crying is not a proper retort!
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

Yes, it does grow fast. I used a few interwoven systems to reduce the node counts. But, as a side bonus, I think I found out that the topology doesn't limit the nodes to any 2 or 3 digit finite amount. :P

If anyone would like some basic topology explained further, just ask. :)

For further reading on topology tricks, coming soon.
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

Transcendence is all about not knowing and having to explore. If you couldn't ever know if you have found all the gates in a given system (a secret bonus system that rarely shows up) that would help the exploring.
This is entirely possible right now, and implemented.

Look at it like this- if you are in Eridani and the outbound gate leads to the next system, but rather than a system is a set of nodes for C1, all lovely titled Groombridge, Lalande, Indi 5, and each node in the set represents a different 'state' of your desired random gate system, what is the difference other than lines of code?

Also, it is possible to have alternate gate type space objects, like a station or a station that looked like a stargate, appear randomly, or even at a later time due to a mission trigger.

So, really, it is all about not knowing what is going to be presented, which we can already be doing very easily.

Besides, never forget that whatever the Topology may or may not be doing the systems and items and enemies and everything are also very random, so no lack of exploration seems to be happening.
User avatar
Betelgeuse
Fleet Officer
Fleet Officer
Posts: 1920
Joined: Sun Mar 05, 2006 6:31 am

Code: Select all

 what is the difference other than lines of code? 
Each line of code means more to change if you need to change later and introduces that must more chance of things messing up. How would you be sure if you have all the links in 46 nodes working correctly? How would you know if one of your copy paste systems was accidentally edited wrong? Its not that these are impossible just so impractical that few if any would ever want to mod it.
Also, it is possible to have alternate gate type space objects, like a station or a station that looked like a stargate, appear randomly, or even at a later time due to a mission trigger.
This would work perfectly well if we could bind keys.
Crying is not a proper retort!
Post Reply