Error Loading Extensions: Invalid UNID

Freeform discussion about anything related to modding Transcendence.
Post Reply
Durendal
Anarchist
Anarchist
Posts: 13
Joined: Tue Apr 08, 2014 2:47 pm
Location: Outside of the box.

Adventure Declaration:

Code: Select all

<?xml version="1.0" ?>


<!DOCTYPE TranscendenceAdventure
		[
		<!ENTITY unidStartSystem			"0xEA770002">
		<!ENTITY unidEnigma					"0xEA770001">
		]>

<TranscendenceAdventure
		UNID=					"0xEA770003"
		version=				"1.0"
		>
		
		
		
		
	<AdventureDesc
			UNID=					"@1;"
			name=					"Enigma"
			backgroundID=		""
			>
			
	</AdventureDesc>
	
	
	<SystemTopology>
	
		<Node ID="SE" rootNode="true">
			<System name="O'lignoth"			level="1">
				<System UNID="&ssEarthSpaceDesert;"/>
			</System>
			
			<StarGates>
				<StarGate Name="Outbound" DestID="EndGame"/>
			</StarGates>
		</Node>
		
		<Node ID="EndGame"
				endgame="true"
				endgameReason="escaped"
				epitaph="Finished the Enigma"
				>
		</Node>
		
	</SystemTopology>
	
	
	
</TranscendenceAdventure>

Star System:

Code: Select all

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

<TranscendenceExtension>
	
	<!--Star System Oceania	-->
	<SystemType UNID = "&unidStartSystem;">
		
		<Tables>
		</Tables>
		
		<SystemGroup>
		</SystemGroup>
		
		<Events>
		</Events>
	
	</SystemType>

</TranscendenceExtension>

The Only Error returned is, and I quote: "Error Loading Extensions: Invalid UNID"
Wondering if someone will point out what it is that I've missed.
~Durendal
User avatar
digdug
Fleet Admiral
Fleet Admiral
Posts: 2620
Joined: Mon Oct 29, 2007 9:23 pm
Location: Decoding hieroglyphics on Tan-Ru-Dorem

the UNID table must have all the UNID used in the extension, so you have to add 0xEA770003 to the table.
try that and see if it works.

I'm not sure if Transcendence will accept a system that is completely empty, I think that a "Start" position is mandatory.
Durendal
Anarchist
Anarchist
Posts: 13
Joined: Tue Apr 08, 2014 2:47 pm
Location: Outside of the box.

Thanks for the prompt reply, declaration of UNID's was an area I wasn't entirely sure about, so that clears up some stuff for me. I think the error lies in the star systems file, as I can get the Adventure to work as long as I plug in a system declared in SotP. Just a matter of studying all of those tags used for SystemGroup and such, and this will work in no time.
~Durendal
User avatar
digdug
Fleet Admiral
Fleet Admiral
Posts: 2620
Joined: Mon Oct 29, 2007 9:23 pm
Location: Decoding hieroglyphics on Tan-Ru-Dorem

all that you need is a system with this
<Marker objName="Start"/>

and possibly, not sure 100%, the system can't be completely empty, it must have at least 1 station (the sun for example)
Durendal
Anarchist
Anarchist
Posts: 13
Joined: Tue Apr 08, 2014 2:47 pm
Location: Outside of the box.

Here are the updated files:

Adventure:

Code: Select all

<?xml version="1.0" ?>


<!DOCTYPE TranscendenceAdventure
		[
		<!ENTITY unidEnigma					"0xEA770001">
		<!ENTITY unidSTAR7						"0xEA770002">
		<!ENTITY unidEnigmaAdventure		"0xEA770003">
		]>

<TranscendenceAdventure
		UNID=					"&unidEnigmaAdventure;"
		version=				"1.0"
		>
		
		
		
		
	<AdventureDesc
			UNID=					"@1;"
			name=					"Enigma"
			backgroundID=		""
			>
			
	</AdventureDesc>
	
	
	<SystemTopology>
	
		<Node ID="SE" rootNode="true">
			<System name="Eridani"			level="1">
				<System UNID="&ssStartonEridani;"/>
			</System>
			
			<StarGates>
				<StarGate Name="Outbound" DestID="EndGame"/>
			</StarGates>
		</Node>
		
		<Node ID="EndGame"
				endgame="true"
				endgameReason="escaped"
				epitaph="Finished the Enigma"
				>
		</Node>
		
	</SystemTopology>
	
	
	
</TranscendenceAdventure>
Star System:

Code: Select all

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

<TranscendenceExtension>
	
	<!--Star System Oceania	-->
	<SystemType UNID = "&unidSTAR7;">
		
		<Tables>
		</Tables>
		
		<SystemGroup>
			
				<Station type="&stG-TypeStar;" name="STAR-7"/>
					
				<Group>
					<Station type="&stSistesOfDomina;"/>
					<Orbitals distance="24" angle="random">
						<Marker objName="Start"/>
							
					</Orbitals>
				</Group>

		</SystemGroup>
		
		<Events>
		</Events>
	
	</SystemType>

</TranscendenceExtension>
All Manner of tweaks, adjustments, alterations, and sundry modifications have yielded no results. The Error message is still exactly the same, too. I feel like I should know what's wrong here, but it's just out of reach, on the tip of my cerebral cortex...

Edit:
I've found that If I change the <?xml version ?> to 1.1, A different error is generated:

Code: Select all

"Extensions\Enigma\Enigma.xml: Expected <TranscendenceAdventure>, <TranscendenceExtension>, <TranscendenceLibrary> or <TranscendenceModule> instead of <> "
I thought that this meant the original "Invalid UNID" error wasn't a problem for 1.1, and it's something about the new version that I don't understand; Though Maybe They're both still errors, and the second one is just flagged first?
~Durendal
User avatar
digdug
Fleet Admiral
Fleet Admiral
Posts: 2620
Joined: Mon Oct 29, 2007 9:23 pm
Location: Decoding hieroglyphics on Tan-Ru-Dorem

<AdventureDesc
UNID= "@1;"
name= "Enigma"
backgroundID= ""
>

Where did you find that @1 UNID ?
That's not a valid UNID :)

As soon as I'm home I will write some example
Durendal
Anarchist
Anarchist
Posts: 13
Joined: Tue Apr 08, 2014 2:47 pm
Location: Outside of the box.

It works now; I declared the Star System in the same file as the Adventure, and presto, all of my troubles floated away...
~Durendal
Shaman
Commonwealth Pilot
Commonwealth Pilot
Posts: 95
Joined: Fri Sep 20, 2013 2:03 pm

You made the first file into an adventure-mod, the other into a extension-mod.
If you want to put something in a different file you have to use <TranscendenceModule> instead of Extension, also you need a link in the mainfile: <Module filename="newfile.xml"/>

I was bored and tinkered a bit:
https://www.dropbox.com/s/fwzmu42k9s250vu/Enigma.zip
This works, it lets you start in Eridani and the stargate ends the game.
Durendal
Anarchist
Anarchist
Posts: 13
Joined: Tue Apr 08, 2014 2:47 pm
Location: Outside of the box.

So Modules can be written for any adventure, as long as they are linked to the proper adventure? ( and Vanilla modules are linked to all extensions, then ) I thought for some reason that modules were for Vanilla only. :/
~Durendal
Shaman
Commonwealth Pilot
Commonwealth Pilot
Posts: 95
Joined: Fri Sep 20, 2013 2:03 pm

No no, modules can be used anywhere. Their only purpose is to contain code in a new file. Just link them somewhere and everything will be nicely sorted.
You don't really need them. You could write any code in just one file. It may be easier to split them, though. Your choice.
Post Reply