9/10 Newbie: question on ship modding.

Freeform discussion about anything related to modding Transcendence.
Post Reply
ytszazu
Anarchist
Anarchist
Posts: 9
Joined: Fri Dec 30, 2011 1:01 am

Basically I have read through Darth Saber's guide to make a playership mod.

http://www.neurohack.com/transcendence/ ... php?t=2173

Thanks a lot for it.

My goal is to actually make a 6 armor facing playership, devided to forward port, forward starboard, port, starboard, aft port, aft starboard (as opposed to those 6 with forward, forward starboard, forward port, aft, aft starboard, aft port)

First part is easy to understand, just wondering what is the meaning of areaSet, since other playership mods (like Angelus) doesn't use it.

Code: Select all


		<Armor>
			<ArmorSection start="315" span="90" armorID="&itReactiveArmor;" areaSet="0,2" />
			<ArmorSection start="225" span="90" armorID="&itReactiveArmor;" areaSet="3,4" />
			<ArmorSection start="45"  span="90" armorID="&itReactiveArmor;" areaSet="7,13" />
			<ArmorSection start="135" span="90" armorID="&itReactiveArmor;" areaSet="1,6" />
		</Armor>

Second part is a head spinner for me, can anyone explain to me in detail, especially on:

1. How you make the game change the "color status" of the armor to the next picture in the .bmp file, when the armor gets damaged.
2. The meaning of each line in the armor code.
3. Where they get the image: "imageID="&rsZubrinArmor;"?

Code: Select all


			<ArmorDisplay>
				<ArmorSection name="forward"
						imageID="&rsZubrinArmor;" 
						imageX="0" imageY="0" imageWidth="52" imageHeight="29"
						destX="42" destY="15" hpX="55" hpY="14"
						nameY="8" nameBreakWidth="200" nameDestX="0" nameDestY="10" />

				<ArmorSection name="starboard"
						imageID="&rsZubrinArmor;" 
						imageX="52" imageY="0" imageWidth="22" imageHeight="59"
						destX="92" destY="45" hpX="95" hpY="60"
						nameY="30" nameBreakWidth="360" nameDestX="12" nameDestY="0" />

				<ArmorSection name="port"
						imageID="&rsZubrinArmor;" 
						imageX="142" imageY="0" imageWidth="22" imageHeight="59"
						destX="22" destY="45" hpX="15" hpY="60"
						nameY="52" nameBreakWidth="200" nameDestX="0" nameDestY="8" />

				<ArmorSection name="aft"
						imageID="&rsZubrinArmor;" 
						imageX="74" imageY="0" imageWidth="68" imageHeight="14"
						destX="34" destY="103" hpX="55" hpY="105"
						nameY="74" nameBreakWidth="360" nameDestX="12" nameDestY="0" />
			</ArmorDisplay>

Thanks heaps to anyone in advance. :)

Regards,

Zazu
User avatar
Atarlost
Fleet Admiral
Fleet Admiral
Posts: 2391
Joined: Tue Aug 26, 2008 12:02 am

Areaset is something obsolete.

For the rest, decompile Transcendence.tdb using transdata then look at Transcendence/TranscendenceSource/Resources/ArmorHUD*.bmp. Those three files are the armor HUD graphics. Note that there are 4 columns of 5 bluish shield indicators that represent increasing damage levels.

Each ArmorSection tag gives an x, y, width, and height for the shield indicators. These give the top left corner and size of the full health indicator and the other 4 indicators must be directly below it in order.

The destX and destY attributes are where the indicator winds up on the HUD in game. hpX and hpY are where the blue block with the numerical HP goes.

nameY is where the segment is named to the left of the HUD. nameBreakWidth, nameDestX, and nameDestY describe where the blue line goes. It starts at the name block, goes right to nameBreakWidth, then vertically to nameDestY, then right again to nameDestX.

&rsZubrinArmor is an image resource. These are defined at the top of a mod or in Transcendence.xml in the decompiled source. &rsZubrinArmor refers to Resources/ArmorHUD.bmp.

The easiest way by far to do a 6 segment HUD is to borrow someone else's work. http://xelerus.de/index.php?s=mod&id=81 has a square 6 segment HUD. http://xelerus.de/index.php?s=mod&id=217 has a round 6 segment HUD. Almost all other mods with a 6 segment ship use FAD's template.
Literally is the new Figuratively
Post Reply