"Only hard in your mind..." Yoda to Luke about lifting his x-wing from the swamp. 8)
Problem with creting a ship
- Darth Saber
- Militia Commander
- Posts: 290
- Joined: Mon Aug 04, 2008 4:53 pm
- Location: Korriban
I am trying to create a new ship. I used Blender to created the ship, and Paintbrush to create the masks. Then I created the xml just the way the rest of the mod ships have been done. I keep getting this error: UNID= unid Extention invalid. I have researched the mode code info from Transcendence.xml; I have looked at the way the modders have created ships, but still the same message. What more can I do?
- Aury
- Fleet Admiral
- Posts: 5421
- Joined: Tue Feb 05, 2008 1:10 am
- Location: Somewhere in the Frontier on a Hycrotan station, working on new ships.
what is the unid that you assigned to it? check for typos too. the unid may have an extra digit- that happened to me before.
(shpOrder gPlayership 'barrelRoll)
(plySetGenome gPlayer (list 'Varalyn 'nonBinary))
Homelab Servers: Xeon Silver 4110, 16GB | Via Quadcore C4650, 16GB | Athlon 200GE, 8GB | i7 7800X, 32GB | Threadripper 1950X, 32GB | Atom x5 8350, 4GB | Opteron 8174, 16GB | Xeon E5 2620 v3, 8GB | 2x Xeon Silver 4116, 96GB, 2x 1080ti | i7 8700, 32GB, 6500XT
Workstations & Render machines: Threadripper 3990X, 128GB, 6900XT | Threadripper 2990WX, 32GB, 1080ti | Xeon Platinum 8173M, 48GB, 1070ti | R9 3900X, 16GB, Vega64 | 2x E5 2430L v2, 24GB, 970 | R7 3700X, 32GB, A6000
Gaming Systems: R9 5950X, 32GB, 6700XT
Office Systems: Xeon 5318Y, 256GB, A4000
Misc Systems: R5 3500U, 20GB | R5 2400G, 16GB | i5 7640X, 16GB, Vega56 | E5 2620, 8GB, R5 260 | P4 1.8ghz, 0.75GB, Voodoo 5 5500 | Athlon 64 x2 4400+, 1.5GB, FX 5800 Ultra | Pentium D 3.2ghz, 4GB, 7600gt | Celeron g460, 8GB, 730gt | 2x Athlon FX 74, 8GB, 8800gts 512 | FX 9590, 16GB, R9 295x2 | E350, 8GB | Phenom X4 2.6ghz, 16GB, 8800gt | random core2 duo/atom/i5/i7 laptops
(plySetGenome gPlayer (list 'Varalyn 'nonBinary))
Homelab Servers: Xeon Silver 4110, 16GB | Via Quadcore C4650, 16GB | Athlon 200GE, 8GB | i7 7800X, 32GB | Threadripper 1950X, 32GB | Atom x5 8350, 4GB | Opteron 8174, 16GB | Xeon E5 2620 v3, 8GB | 2x Xeon Silver 4116, 96GB, 2x 1080ti | i7 8700, 32GB, 6500XT
Workstations & Render machines: Threadripper 3990X, 128GB, 6900XT | Threadripper 2990WX, 32GB, 1080ti | Xeon Platinum 8173M, 48GB, 1070ti | R9 3900X, 16GB, Vega64 | 2x E5 2430L v2, 24GB, 970 | R7 3700X, 32GB, A6000
Gaming Systems: R9 5950X, 32GB, 6700XT
Office Systems: Xeon 5318Y, 256GB, A4000
Misc Systems: R5 3500U, 20GB | R5 2400G, 16GB | i5 7640X, 16GB, Vega56 | E5 2620, 8GB, R5 260 | P4 1.8ghz, 0.75GB, Voodoo 5 5500 | Athlon 64 x2 4400+, 1.5GB, FX 5800 Ultra | Pentium D 3.2ghz, 4GB, 7600gt | Celeron g460, 8GB, 730gt | 2x Athlon FX 74, 8GB, 8800gts 512 | FX 9590, 16GB, R9 295x2 | E350, 8GB | Phenom X4 2.6ghz, 16GB, 8800gt | random core2 duo/atom/i5/i7 laptops
- Darth Saber
- Militia Commander
- Posts: 290
- Joined: Mon Aug 04, 2008 4:53 pm
- Location: Korriban
Okay, you wanted the xml, here it is:
--------------------------------------------------------------------------------------
<?xml version="1.0" ?>
<!DOCTYPE TranscendenceExtension
[
<!ENTITY scaristardst "0xD10230010">
<!ENTITY itAristarArmor "0xD10240069">
<!ENTITY itAristardstShields "0xD10290070">
]>
<TranscendenceExtension UNID="0xD10230010;" version="0.98d">
<Image UNID="&scaristardst;" bitmap="aristardst 16facings.bmp" backColor="0x00000000"/>
<Image UNID="&itAristardstShields;" bitmap="aristarshield.bmp" backColor="0x00000000"/>
<!-- Aristar Destroyer -->
<ShipClass UNID="&scaristardst;"
manufacturer= "Aristar Industries"
class= "Destroyer"
type= "destroyer"
score= "1000"
techOrder= "biomech"
mass= "500"
cargoSpace= "60000"
thrust= "1000"
maneuver= "3"
maxSpeed= "35"
rotationCount= "35"
reactorPower= "20000"
fuelCapacity= "550000"
maxArmor= "100000"
maxCargoSpace= "70000"
maxDevices= "50"
maxWeapons= "8"
leavesWreck= "20"
>
<Armor>
<ArmorSection start="315" span="90" armorID="&itAristarArmor;" areaSet="0,2" />
<ArmorSection start="225" span="90" armorID="&itAristarArmor;" areaSet="3,4" />
<ArmorSection start="135" span="90" armorID="&itAristarArmor;" areaSet="1,6" />
<ArmorSection start="45" span="90" armorID="&itAristarArmor;" areaSet="7,13" />
</Armor>
<DriveImages>
<NozzleImage imageID="&rsDriveExhaust2;" imageX="0" imageY="0" imageWidth="48" imageHeight="48" imageFrameCount="0" imageTicksPerFrame="0"/>
<NozzlePos x="-43" y="21"/>
<NozzlePos x="-43" y="-21"/>
</DriveImages>
<Devices>
<Device deviceID="&itFlenserCannon;"omnidirectional="true"/>
<Device deviceID="&itClass1Deflector;"/>
</Devices>
<Image imageID="&scaristardst;" imageX="0" imageY="0" imageWidth="64" imageHeight="64" imageFrameCount="0" imageTicksPerFrame="0"/>
<AISettings
fireRateAdj= "10"
fireAccuracy= "95"
perception= "10"
/>
<PlayerSettings
desc= "This destroyer by Aristar Industries, is a good choice for militia who want to secure their space."
initialClass= "true"
startingSystem= "SE"
startingPos= "Start"
startingCredits= "6500050"
>
<ArmorDisplay>
<ArmorSection name="forward"
imageID="&itAristarArmor;"
imageX="0" imageY="0" imageWidth="90" imageHeight="9"
destX="23" destY="32" hpX="55" hpY="27"
nameY="8" nameBreakWidth="360" nameDestX="12" nameDestY="0" />
<ArmorSection name="starboard"
imageID="&itAristarArmor;"
imageX="90" imageY="0" imageWidth="9" imageHeight="56"
destX="104" destY="41" hpX="98" hpY="60"
nameY="30" nameBreakWidth="275" nameDestX="0" nameDestY="8" />
<ArmorSection name="port"
imageID="&itAristarArmor;"
imageX="189" imageY="0" imageWidth="9" imageHeight="56"
destX="23" destY="41" hpX="12" hpY="60"
nameY="52" nameBreakWidth="200" nameDestX="0" nameDestY="8" />
<ArmorSection name="aft"
imageID="&itAristarArmor;"
imageX="99" imageY="0" imageWidth="90" imageHeight="9"
destX="23" destY="97" hpX="55" hpY="97"
nameY="74" nameBreakWidth="200" nameDestX="0" nameDestY="8" />
</ArmorDisplay>
<ShieldDisplay>
<Image imageID="&itAristardstShields;" imageX="0" imageY="0" imageWidth="136" imageHeight="136"/>
</ShieldDisplay>
<ReactorDisplay>
<Image imageID="&rsZubrinReactor;"
imageX="0" imageY="0" imageWidth="256" imageHeight="60"/>
<PowerLevelImage imageID="&rsZubrinReactor;"
imageX="0" imageY="60" imageWidth="202" imageHeight="14"
destX="54" destY="9"/>
<FuelLevelImage imageID="&rsZubrinReactor;"
imageX="0" imageY="74" imageWidth="194" imageHeight="14"
destX="54" destY="37"/>
<FuelLowLevelImage imageID="&rsZubrinReactor;"
imageX="0" imageY="88" imageWidth="194" imageHeight="14"/>
<ReactorText x="62" y="22" width="154" height="14"/>
<PowerLevelText x="62" y="0" width="154" height="9"/>
<FuelLevelText x="62" y="51" width="154" height="9"/>
</ReactorDisplay>
</PlayerSettings>
</ShipClass>
</TranscendenceExtension>
--------------------------------------------------------------------------------------
<?xml version="1.0" ?>
<!DOCTYPE TranscendenceExtension
[
<!ENTITY scaristardst "0xD10230010">
<!ENTITY itAristarArmor "0xD10240069">
<!ENTITY itAristardstShields "0xD10290070">
]>
<TranscendenceExtension UNID="0xD10230010;" version="0.98d">
<Image UNID="&scaristardst;" bitmap="aristardst 16facings.bmp" backColor="0x00000000"/>
<Image UNID="&itAristardstShields;" bitmap="aristarshield.bmp" backColor="0x00000000"/>
<!-- Aristar Destroyer -->
<ShipClass UNID="&scaristardst;"
manufacturer= "Aristar Industries"
class= "Destroyer"
type= "destroyer"
score= "1000"
techOrder= "biomech"
mass= "500"
cargoSpace= "60000"
thrust= "1000"
maneuver= "3"
maxSpeed= "35"
rotationCount= "35"
reactorPower= "20000"
fuelCapacity= "550000"
maxArmor= "100000"
maxCargoSpace= "70000"
maxDevices= "50"
maxWeapons= "8"
leavesWreck= "20"
>
<Armor>
<ArmorSection start="315" span="90" armorID="&itAristarArmor;" areaSet="0,2" />
<ArmorSection start="225" span="90" armorID="&itAristarArmor;" areaSet="3,4" />
<ArmorSection start="135" span="90" armorID="&itAristarArmor;" areaSet="1,6" />
<ArmorSection start="45" span="90" armorID="&itAristarArmor;" areaSet="7,13" />
</Armor>
<DriveImages>
<NozzleImage imageID="&rsDriveExhaust2;" imageX="0" imageY="0" imageWidth="48" imageHeight="48" imageFrameCount="0" imageTicksPerFrame="0"/>
<NozzlePos x="-43" y="21"/>
<NozzlePos x="-43" y="-21"/>
</DriveImages>
<Devices>
<Device deviceID="&itFlenserCannon;"omnidirectional="true"/>
<Device deviceID="&itClass1Deflector;"/>
</Devices>
<Image imageID="&scaristardst;" imageX="0" imageY="0" imageWidth="64" imageHeight="64" imageFrameCount="0" imageTicksPerFrame="0"/>
<AISettings
fireRateAdj= "10"
fireAccuracy= "95"
perception= "10"
/>
<PlayerSettings
desc= "This destroyer by Aristar Industries, is a good choice for militia who want to secure their space."
initialClass= "true"
startingSystem= "SE"
startingPos= "Start"
startingCredits= "6500050"
>
<ArmorDisplay>
<ArmorSection name="forward"
imageID="&itAristarArmor;"
imageX="0" imageY="0" imageWidth="90" imageHeight="9"
destX="23" destY="32" hpX="55" hpY="27"
nameY="8" nameBreakWidth="360" nameDestX="12" nameDestY="0" />
<ArmorSection name="starboard"
imageID="&itAristarArmor;"
imageX="90" imageY="0" imageWidth="9" imageHeight="56"
destX="104" destY="41" hpX="98" hpY="60"
nameY="30" nameBreakWidth="275" nameDestX="0" nameDestY="8" />
<ArmorSection name="port"
imageID="&itAristarArmor;"
imageX="189" imageY="0" imageWidth="9" imageHeight="56"
destX="23" destY="41" hpX="12" hpY="60"
nameY="52" nameBreakWidth="200" nameDestX="0" nameDestY="8" />
<ArmorSection name="aft"
imageID="&itAristarArmor;"
imageX="99" imageY="0" imageWidth="90" imageHeight="9"
destX="23" destY="97" hpX="55" hpY="97"
nameY="74" nameBreakWidth="200" nameDestX="0" nameDestY="8" />
</ArmorDisplay>
<ShieldDisplay>
<Image imageID="&itAristardstShields;" imageX="0" imageY="0" imageWidth="136" imageHeight="136"/>
</ShieldDisplay>
<ReactorDisplay>
<Image imageID="&rsZubrinReactor;"
imageX="0" imageY="0" imageWidth="256" imageHeight="60"/>
<PowerLevelImage imageID="&rsZubrinReactor;"
imageX="0" imageY="60" imageWidth="202" imageHeight="14"
destX="54" destY="9"/>
<FuelLevelImage imageID="&rsZubrinReactor;"
imageX="0" imageY="74" imageWidth="194" imageHeight="14"
destX="54" destY="37"/>
<FuelLowLevelImage imageID="&rsZubrinReactor;"
imageX="0" imageY="88" imageWidth="194" imageHeight="14"/>
<ReactorText x="62" y="22" width="154" height="14"/>
<PowerLevelText x="62" y="0" width="154" height="9"/>
<FuelLevelText x="62" y="51" width="154" height="9"/>
</ReactorDisplay>
</PlayerSettings>
</ShipClass>
</TranscendenceExtension>
- Periculi
- Fleet Officer
- Posts: 1282
- Joined: Sat Oct 13, 2007 7:48 pm
- Location: Necroposting in a forum near you
Problem number 1:
Your UNID are 1 digit too long. 0xDMMMTIII (0x plus eight more)
(Fatboy beat me to it, but Wolfy guessed it anyhow... )
Code: Select all
<!ENTITY scaristardst "0xD10230010">
<!ENTITY itAristarArmor "0xD10240069">
<!ENTITY itAristardstShields "0xD10290070">
(Fatboy beat me to it, but Wolfy guessed it anyhow... )
- Darth Saber
- Militia Commander
- Posts: 290
- Joined: Mon Aug 04, 2008 4:53 pm
- Location: Korriban
Thank you all for your input...
But which UNID is it that is too long, or are they all too long?
What can I do to prevent this problem from recurring?
But which UNID is it that is too long, or are they all too long?
What can I do to prevent this problem from recurring?
"The force can have a strong influence on the weak minded." Obiwan Kenobi to Luke Skywalker Ep. IV
- dvlenk6
- Militia Captain
- Posts: 519
- Joined: Sun Mar 05, 2006 6:56 am
- Location: Sanctuary and beyond
- Contact:
They are all 1 digit too long.
Ox, followed by 8 hexadecimal digits is the correct format.
The first hex. digit MUST be a C or a D.
All of the UNIDs should have identical 1st four digits. That is your 'Designer ID' and nobody else should be using it.
Go Here:
http://neurohack.com/transcendence/foru ... .php?t=959
and put your ID on the list.
That would be D102, in this case. Then use that for all your mods from now on. Prevents duplicate UNID errors when seveal different mods by different people are installed.
Ox, followed by 8 hexadecimal digits is the correct format.
The first hex. digit MUST be a C or a D.
All of the UNIDs should have identical 1st four digits. That is your 'Designer ID' and nobody else should be using it.
Go Here:
http://neurohack.com/transcendence/foru ... .php?t=959
and put your ID on the list.
That would be D102, in this case. Then use that for all your mods from now on. Prevents duplicate UNID errors when seveal different mods by different people are installed.
- Darth Saber
- Militia Commander
- Posts: 290
- Joined: Mon Aug 04, 2008 4:53 pm
- Location: Korriban
To dvlenk6:
I am not familiar with the haxadecimal system. I use standard arithmetic.
So when you say: "hex," you should know that I am familiar with the term, but not the usage.
I am not familiar with the haxadecimal system. I use standard arithmetic.
So when you say: "hex," you should know that I am familiar with the term, but not the usage.
[/code]"Your eyes can deceive you, don't trust them." Obiwan to Luke Skywalker Star Wars EP. IV
- dvlenk6
- Militia Captain
- Posts: 519
- Joined: Sun Mar 05, 2006 6:56 am
- Location: Sanctuary and beyond
- Contact:
Hexadecimal (base 16) is 0-9 then A-F as digits:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Fhex=15dec
10hex=16dec
1Fhex=31dec
100hex=256dec
and so on...
You just need to know that you can use A through F as 'numbers' also.
For your colors, when you are making graphics:
RGB is hexadecimal
R G B
00 00 00 is pure black - 0 red, 0 green, 0 blue
ff ff ff is pure white - 255 red, 255 green, 255 blue
ff ff 00 is pure yellow - 255 red, 255 green, 0 blue
ff ff 80 is pure orange - 255 red, 255 green, 128 blue
and so on.
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Fhex=15dec
10hex=16dec
1Fhex=31dec
100hex=256dec
and so on...
You just need to know that you can use A through F as 'numbers' also.
For your colors, when you are making graphics:
RGB is hexadecimal
R G B
00 00 00 is pure black - 0 red, 0 green, 0 blue
ff ff ff is pure white - 255 red, 255 green, 255 blue
ff ff 00 is pure yellow - 255 red, 255 green, 0 blue
ff ff 80 is pure orange - 255 red, 255 green, 128 blue
and so on.
- Periculi
- Fleet Officer
- Posts: 1282
- Joined: Sat Oct 13, 2007 7:48 pm
- Location: Necroposting in a forum near you
D or EThe first hex. digit MUST be a C or a D.
Looking in transcendence.xml you will find:
Code: Select all
UNID Namespace
0x D MMM T III
D Domain. This can be one of the following:
0-9 Reserved for Transcendence
A-C Registered extensions (contact [email protected])
D Unregistered extensions (pick a random module ID)
E Unregistered extensions (pick a random module ID)
F Reserved (do not use)
MMM Module ID. Registered extensions are assigned a single
module ID to use for UNIDs. Unregistered extensions should
use a random module ID (it is up to the user to manage
unregistered extensions).
The following Transcendence modules for domain 0 are defined:
000 Core objects (star systems, basic items, sovereigns, etc.)
00F Debris
010 Commonwealth
014 Battle Arena
015 Corporate Hierarchy
016 Charon Pirates
017 Black Market
018 Sisters of Domina
019 Sung Slavers
01A Commonwealth Fleet
01B Ares Orthodoxy
01C Iocrym
01D Ringers
01E Elysium
01F Teratons
020 Domina
030 Oracus
801 Misc Fire Encounters
802 Misc Water Encounters
803 Misc Air Encounters
804 Misc Earth Encounters
T Type ID. Within a module, the division of the namespace is
undefined. Transcendence uses this value to represent the
type of object assigned an UNID:
0 star system description
1 sovereigns
2 station types
3 ship classes
4 item types
5 special item types (virtuals)
8 random tables (items, encounters)
9 effects, energy fields, space env, etc
A dock screens
B powers
F images and sound resources
III ID. This can be any value unique within the module and type ID.
This is generally a monotonically increasing number.
0x D MMM T III
0xDMMMTIII = 8 digits = DMMMTIII which is a formula to guide you when choosing a UNID for items, stations, systems, resources, effects, adventure extension or any other game item.
-
- Developer
- Posts: 2997
- Joined: Thu Jul 24, 2003 9:53 pm
- Contact:
Note that the "T" and "III" parts of the UNID are purely by convention only. There is nothing in the game that cares about the format of the lower 4 digits.Periculi wrote:0x D MMM T III
- Darth Saber
- Militia Commander
- Posts: 290
- Joined: Mon Aug 04, 2008 4:53 pm
- Location: Korriban
Thank you all for the input; I modified all of the UNIDs; unfortunately I have some new problems.
1. The ship does not show up on the selection screen. The info does, the ship does not.
2. The ship does not show up in the game. It is there; distinguished only by the exhast. I thought that the exhausht pictue (drive exhaust2) might be causing problems, but when I removed the info, I found that the ship moved just the same, and yet was invisible. Sometimes I would see a flash of the bit mask.
3. One of the ships I am working on is a playership beacon. The UNIDs work; the ship shows up on the selection screen, and in the game; but when I move the ship, it disappears; only the exhaust is seen.
What can I do to correct these errors?
1. The ship does not show up on the selection screen. The info does, the ship does not.
2. The ship does not show up in the game. It is there; distinguished only by the exhast. I thought that the exhausht pictue (drive exhaust2) might be causing problems, but when I removed the info, I found that the ship moved just the same, and yet was invisible. Sometimes I would see a flash of the bit mask.
3. One of the ships I am working on is a playership beacon. The UNIDs work; the ship shows up on the selection screen, and in the game; but when I move the ship, it disappears; only the exhaust is seen.
What can I do to correct these errors?
"You will know (if you are using the light side of the force), when you are calm, passive. The Jedi us the force for knowledge and defense..."
Yoda to Luke Skywalker Ep. VI The Return of the Jedi. 8)
- dvlenk6
- Militia Captain
- Posts: 519
- Joined: Sun Mar 05, 2006 6:56 am
- Location: Sanctuary and beyond
- Contact:
You need to declare an ENTITY (at the top) for the ship image.
Call it &scaristardtimage; for example.:
Use that ENTITY in these places:That is, &scaristardt; (from your original xml) would be replaced with your new image ENTITY.
You also need a bitmask for that image...
Then your image declaration would be:The bitmask goes inside the Image tag, just after the bitmap.
and down in the ship image spot, you would use:
Right now, you are using the same ENTITY for both the ship itself, and the ship image. That will not work.
EDIT - transcendence might be applying an all black (all 0s, all transparent) bitmask also, since you don't specify a bitmask for it to use...not sure about that.
Call it &scaristardtimage; for example.:
Code: Select all
<!ENTITY scaristardstimage "0xD1023001">
Code: Select all
<Image UNID="&scaristardst;" bitmap="aristardst 16facings.bmp" backColor="0x00000000"/>
You also need a bitmask for that image...
Then your image declaration would be:
Code: Select all
<Image UNID="&scaristardstimage;" bitmap="aristardst 16facings.bmp" bitmask="scaristardstMask.bmp" backColor="0x00000000"/>
and down in the ship image spot, you would use:
Code: Select all
<Image imageID="&scaristardstimage;" imageX="0" imageY="0" imageWidth="64" imageHeight="64" imageFrameCount="0" imageTicksPerFrame="0"/>
EDIT - transcendence might be applying an all black (all 0s, all transparent) bitmask also, since you don't specify a bitmask for it to use...not sure about that.
Last edited by dvlenk6 on Tue Aug 26, 2008 4:41 pm, edited 1 time in total.