[MOD] Merovian Nation (Need help w/ encounters though)

A place to discuss mods in development and concepts for new mods.
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

OK... This one began back when I first downloaded the "Sample Extension".
And guess what? the Firefly initially uses MEROVIAN ARMOR. So, ever since then I have been thinking about entire stations, weapons, shields, etc...
I'm actually almost done.
(Note: Don't expect me to EVER post this on Xelerus, because I don't have an account.)
Here's the code.
*unpacks huge XML*

Code: Select all

<?xml version="1.0" ?>
<!DOCTYPE TranscendenceExtension
	[
	<!ENTITY scTestShip 				"0xDFFF0312">
	<!ENTITY itRecoillessCannon			"0x0000400E">
	<!ENTITY itClass1Deflector			"0x00004036">
	<!ENTITY itHelium3FuelRod			"0x0000403C">

	<!ENTITY rsZubrinShields			"0x0000F004">
	<!ENTITY rsZubrinArmor				"0x0000F005">
	<!ENTITY rsZubrinReactor			"0x0000F00C">
	<!ENTITY rsDriveExhaust				"0x0000F10C">
	<!ENTITY rsItems1					"0x0000F11D">
	
	<!ENTITY unidExtension				"0xDFFF0000">
	<!ENTITY unidFireflyClass			"0xDFFF0200">
	<!ENTITY unidTestShips1				"0xDFFF0300">
	<!ENTITY scAutonCustom				"0xDFFF0301">
	<!ENTITY itAutonCustom				"0xDFFF0302">
	<!ENTITY svMerovianNation			"0xDFFF0303">
	<!ENTITY stMerovianOutpost			"0xDFFF0304">
	<!ENTITY itMerovianArmor			"0xDFFF0305">
	<!ENTITY itMerovianPhaser			"0xDFFF0306">
	<!ENTITY stMerovianFortress			"0xDFFF0307">
	<!ENTITY dsMeroPromo				"0xDFFF0308">
	<!ENTITY stMissionCenter			"0xDFFF0309">
	<!ENTITY scTransport				"0xDFFF0310">
	<!ENTITY scGunship				"0xDFFF0311">
	<!ENTITY itModdyLightningTurret			"0xDFFF0313">
	<!ENTITY itThermoExplosionSuperWeapon		"0xDFFF0314">
]>

<TranscendenceExtension UNID="&unidExtension;" version="0.95">

<ShipClass UNID="&unidFireflyClass;"
	manufacturer=		""
	class=				"Firefly"
	type=				"gunship"
	score=				"90"
	techOrder=			"mech"
	maxDevices=			"11"
	mass=				"50"
	maxReactorPower=	"100000"
	maxReactorFuel=		"60000"
	explosionType=		"&vtThermoExplosion4;"
	cargoSpace=			"4500"
	maxCargoSpace=		"4500"
	thrust=				"10000"
	maneuver=			"13"
	maxSpeed=			"20"
	leavesWreck=		"0"
	>

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

	<Devices>
		<Device deviceID="&itMerovianPhaser;" omnidirectional="true"/>
		<Device deviceID= "&itModdyLightningTurret;"/>
		<Device deviceID="&itThermoExplosionSuperWeapon;"/>
		<Device deviceID="&it1GWReactor;"/>
	</Devices>

	<Items>
		<Item count="20000" item="&itHadronVacuumFuelCell;"/>
		<Item count="1" item="&itTargetingComputerROM;"/>
		<Item count="1" item="&itMilitaryID;"/>
		<Item count="1" item="&itBlackMarketID;"/>
		<Item count="1" item="&itAutonCustom;"/>
		<Item count="50" item="&itSystemMapROM;"/>
	</Items>
	<AISettings
		fireRateAdj=		"30"
		fireAccuracy=		"90"
		perception=			"4"
		/>

	<Image imageID="&rsMediumShips4;" imageX="512" imageY="0" imageWidth="128" imageHeight="128" imageFrameCount="0" imageTicksPerFrame="0"/>

	<DriveImages>
		<NozzleImage imageID="&rsDriveExhaust;" imageX="48" imageY="0" imageWidth="48" imageHeight="48" imageFrameCount="0" imageTicksPerFrame="1"/>
		<NozzlePos x="-75" y="-11"/>
		<NozzlePos x="-75" y="1"/>
		<NozzlePos x="-75" y="13"/>
	</DriveImages>

	<PlayerSettings
		desc=				"The versatile Zubrin Yatch is one of the most popular starships for merchants, explorers,etc. The purple tint is caused from the oxidization of the special compounds within the ship's hull."
		initialClass=		"true"
		startingSystem=		"Huaramarca"
		startingPos=		"Inbound">
		

		<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="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" />

			<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" />
		</ArmorDisplay>

		<ShieldDisplay>
			<Image imageID="&rsZubrinShields;" 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>

<Image UNID="&unidTestShips1;"	bitmap="TestShips1.jpg"	bitmask="TestShips1Mask.bmp" backColor="0x00000000"/>
<ShipClass UNID="&scAutonCustom;"
			manufacturer=		""
			class=				"990M Super Auton"
			type=				""
			score=				"1000000"

			mass=				"4"
			cargoSpace=			"0"
			thrust=				"30"
			maneuver=			"3"
			maxSpeed=			"25"

			leavesWreck=		"0"
			explosionType=			"&vtThermoExplosion4;"
			attributes=			"auton,genericClass"
			
			inherit=			"&baStdAutonBase;"
			>

		<Armor>
			<ArmorSection start="0" span="360" armorID="&itMerovianArmor;" areaSet="0,2,3,7" />
		</Armor>

		<Devices>
			<Device deviceID="&itPlasmaCannon;" secondaryWeapon="true" minFireArc="340" maxFireArc="200" posAngle="120" posRadius="60"/>
			<Device deviceID="&itPlasmaCannon;"secondaryWeapon="true" minFireArc="160" maxFireArc="20" posAngle="240" posRadius="60"/>
			<Device deviceID="&itPlasmaCannon;" secondaryWeapon="true" minFireArc="340" maxFireArc="200" posAngle="120" posRadius="60"/>
			<Device deviceID="&itMerovianPhaser;"secondaryWeapon="true" omnidirectional="true"/>
			<Device deviceID="&itMerovianPhaser;"secondaryWeapon="true" omnidirectional="true"/>
			<Device deviceID="&itMerovianPhaser;"secondaryWeapon="true" omnidirectional="true"/>
			<Device deviceID="&itMerovianPhaser;"secondaryWeapon="true" omnidirectional="true"/>
			<Device deviceID="&itMerovianPhaser;"secondaryWeapon="true" omnidirectional="true"/>
		</Devices>

		<Image imageID="&rsDragonSlaverImage;" imageX="0" imageY="0" imageWidth="128" imageHeight="128"/>

		<AISettings
			fireRateAdj=		"20"
			fireAccuracy=		"90"
			perception=			"4"
			/>


			
	</ShipClass>
<ItemType UNID="&itAutonCustom;"
			name=				"990M Super Auton"
			level=				"15"
			value=				"490"
			mass=				"1000"
			frequency=			"common"
			unknownType=		"&itUnknownAuton;"
			modifiers=			"Auton; MinorItem; Military"

			description=		"This Super Auton slaughters everything."
			>

		<Image imageID="&rsItems1;" imageX="96" imageY="288" imageWidth="96" imageHeight="96"/>

		<Invoke key="N">
			(block (auton)
				; Create the auton
				(setq auton
					(sysCreateShip 
						&scAutonCustom;
						(objGetPos gSource)
						&svFriendlyAuton;
						"auton"
						)
					)

				; Escort ship
				(shpOrderEscort auton gSource)

				; Identify the item
				(itmSetKnown gItem)

				; Welcome message
				(objSendMessage gSource Nil "990M Super Auton ---MILITARY--- v9.1.1 online")

				; Remove the item from the player's list
				(objRemoveItem gSource gItem 1)
				)
		</Invoke>

	</ItemType>

<Sovereign UNID="&svMerovianNation;"
name="Merovian Nation"
alignment="constructive chaos"
>
<Relationships>
<Relationship sovereign="&svFerianMiners;" disposition="enemy" mutual="true"/>
<Relationship sovereign="&svFerianMinersAngry;" disposition="enemy" mutual="true"/>
<Relationship sovereign="&svPlayer;" disposition="friend" mutual="true"/>
</Relationships>
</Sovereign>

<StationType UNID="&stMerovianOutpost;"
name=					"Merovian Outpost"
sovereign=				"&svMerovianNation;"
abandonedScreen=	"&dsAbandonedStation;"
dockingPorts=		"8"
canAttack=			"true"
multiHull=			"true"
armorID=			"&itMerovianArmor;"
maxHitPoints=			"500"
explosionType=		"&vtThermoExplosion1;"
ejectaType=			"&vtWreckEjecta;"
attributes=			"envAir,envEarth,envFire,envWater,populated">
<Image			imageID="&rsStations8;" imageX="0" imageY="448" imageWidth="128" imageHeight="192"/>
<Devices>
<Device deviceID="&itMerovianPhaser;" secondaryWeapon="true" omnidirectional="true"/>
<Device deviceID="&itMerovianPhaser;" secondaryWeapon="true" omnidirectional="true"/>
<Device deviceID="&itMerovianPhaser;" secondaryWeapon="true" omnidirectional="true"/>
</Devices>
<Items>
</Items>
<Encounters frequency="common">
			<Ship   count="6"	class="&scGunship;" orders="patrol" patrolDist="8"/>
		</Encounters>
<Events>
<GetGlobalAchievements>
(block (theList rank) (setq rank (objGetData gPlayerShip "MerovianRanking")) (if (gr rank 0) setq theList (list (list "Merovian Ranking" (switch 
(eq rank 1) "Civilian"
(eq rank 2) "Member"
(eq rank 3) "Officer"
(eq rank 4) "National Lieutenant"
(eq rank 5) "Defender"
(eq rank 6) "Warrant Officer"
(eq rank 7) "Fleet commander"
(cat "ERROR: National Ranking: " rank)
))))) theList)
</GetGlobalAchievements>
<OnInit>
(intMerovianOnInit)
</OnInit>
</Events>

<DockScreens>
<Main
name="Merovian Outpost"
>
<Panes>
<Default
desc=		"You are docked at a Merovian settlement.">
<Actions>
<Action name= "Refuel" key="R">
(block Nil (intSetCompatibleFuel '((&itHeliumAssembly; 30) (&itHelium3FuelRod;5)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 2)
(intSetCompatibleFuel '((&itXenotiteFuelRod; 45) (&itHeliumAssembly; 15) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 3)
(intSetCompatibleFuel '((&itPteracniumFuelRod; 90) (&itXenotiteFuelRod; 30) (&itHeliumAssembly; 5) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 4)
(intSetCompatibleFuel '((&itHadronVacuumFuelCell; 185) (&itPteracniumFuelRod; 45) (&itXenotiteFuelRod; 15) (&itHeliumAssembly; 0) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 5)
(setq gCost 0))

(setq gPrevPane "Default")
(scrShowScreen gScreen "&dsRefuel;")
)
</Action>

<Action name="Undock" key="U">
<Exit/>
</Action>

</Actions>
</Default>
</Panes>
</Main>
</DockScreens>
</StationType>

<ItemType UNID="&itMerovianArmor;"
name="Merovian armor"
level="10"
value="6700000"
mass="1000"
frequency="rare"
modifiers="Alien; NotForSale; Military"
description="This armor plate is used to defend Merovian ships and stations.">
<Image imageID="&rsItems1;" imageX="0" imageY="0" imageWidth="96" imageHeight="96"/>
<Armor
hitPoints="500"
photoRecharge="true"
regen="4"
hpBonus="350; 5000; 800; 28; 700; 300; 700; 80; 30; 15; 10; 56; 78; 25; 76; 300"
disintegrationimmune="true"
shieldInterference="true"/>
</ItemType>

<ItemType UNID="&itMerovianPhaser;"
name="Merovian phaser cannon"
level="9"
value="3300000"
mass="1000"
frequency="rare"
modifiers="Alien; NotForSale; Military"
description="This phaser defends Merovian stations.">
<Image imageID="&rsItems1;" imageX="96" imageY="0" imageWidth="96" imageHeight="96"/>
<Weapon type="beam"
damage=				"antimatter:11"
fireRate=			"10"
lifetime=			"250"
missileSpeed=			"80"
repeating=			"4"
powerUse=			"3000"

beamType=			"laser"
primaryColor=		"0xf1, 0x5f, 0x2a"
secondaryColor=		"0xff, 0x00, 0x00"
sound=				"&snLaserCannon;"
>
</Weapon>
</ItemType>

<StationType UNID="&stMerovianFortress;"
name=					"Merovian Fortress"
sovereign=				"&svMerovianNation;"
abandonedScreen=	"&dsAbandonedStation;"
dockingPorts=		"8"
canAttack=			"true"
multiHull=			"true"
armorID=			"&itMerovianArmor;"
maxHitPoints=			"500"
explosionType=		"&vtThermoExplosion1;"
ejectaType=			"&vtWreckEjecta;"
randomEncounters=	"common"
attributes=			"envAir,envEarth,envFire,envWater,populated">
<Image			imageID="&rsStations6;" imageX="0" imageY="448" imageWidth="192" imageHeight="192"/>
<Devices>
<Device deviceID="&itMerovianPhaser;" secondaryWeapon="true" omnidirectional="true"/>
<Device deviceID="&itMerovianPhaser;" secondaryWeapon="true" omnidirectional="true"/>
<Device deviceID="&itMerovianPhaser;" secondaryWeapon="true" omnidirectional="true"/>
</Devices>
<Items>
</Items>
<Ships>
<Ship class="&scGunship;" count="5" orders="trade route"/>
</Ships>
<Events>
<GetGlobalAchievements>
(block (theList rank) (setq rank (objGetData gPlayerShip "MerovianRanking")) (if (gr rank 0) setq theList (list (list "Merovian Ranking" (switch 
(eq rank 1) "Civilian"
(eq rank 2) "Member"
(eq rank 3) "Officer"
(eq rank 4) "National Lieutenant"
(eq rank 5) "Defender"
(eq rank 6) "Warrant Officer"
(eq rank 7) "Fleet commander"
(cat "ERROR: National Ranking: " rank)
))))) theList)
</GetGlobalAchievements>
<OnInit>
(intMerovianOnInit)
</OnInit>
</Events>

<DockScreens>
<Main
name="Merovian fortress"
>
<Panes>
<Default 
desc="You are docked at a Merovian fortress. The people here offer various services.">
<Actions>
<Action name="Refuel" key="R">
(block Nil (intSetCompatibleFuel '((&itHeliumAssembly; 30) (&itHelium3FuelRod;5)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 2)
(intSetCompatibleFuel '((&itXenotiteFuelRod; 45) (&itHeliumAssembly; 15) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 3)
(intSetCompatibleFuel '((&itPteracniumFuelRod; 90) (&itXenotiteFuelRod; 30) (&itHeliumAssembly; 5) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 4)
(intSetCompatibleFuel '((&itHadronVacuumFuelCell; 185) (&itPteracniumFuelRod; 45) (&itXenotiteFuelRod; 15) (&itHeliumAssembly; 0) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 5)
(setq gCost 0))

(setq gPrevPane "Default")
(scrShowScreen gScreen "&dsRefuel;")
)
</Action>
<Action name="Repair or Replace Armor" key="A">
(block Nil (setq gPrevPane "Default")
(setq gTechLevel 30)
(setq gArmorSegment 0)
(setq gMargin (if (geq (objGetData gPlayerShip "MerovianRanking") 3) 0 100))
(scrShowScreen gScreen "&dsRepairArmor;")
)
</Action>
<Action name="Upgrade reactor" key="P">
(block (maxPower)
(setq gPrevScreen "Main")
									(setq gPrevPane "Default")
									(setq gCheckMilitaryID Nil)

									; Figure out what reactor to upgrade to
									(setq maxPower (objGetMaxPower gPlayerShip))

									(switch
										(ls maxPower 1000)
											(block Nil
												(setq gCost 5000)
												(setq gItem (itmCreate &it100MWReactor; 1))
												)

										(ls maxPower 1500)
											(block Nil
												(setq gCost 10000)
												(setq gItem (itmCreate &it150MWReactor; 1))
												)

										(ls maxPower 2500)
											(block Nil
												(setq gCost 15000)
												(setq gItem (itmCreate &it250MWReactor; 1))
												)
										(ls maxPower 5000)
											(block Nil (setq gCost 20000)
											(setq gItem (itmCreate &it500MWReactor; 1)))
										(ls maxPower 100000)
											(block Nil (setq gCost 45000)
											(setq gItem (itmCreate &it1GWReactor; 1)))
										(setq gItem Nil)
										)

									; Install screen
									(if gItem
										(scrShowScreen gScreen "&dsInstallSpecificDevice;")
										(scrShowPane gScreen "NoReactorUpgrade")
										)
									)
							</Action>
<Action name="Undock" key="U">
<Exit/>
</Action>
</Actions>
</Default>
</Panes>
</Main>
</DockScreens>
</StationType>

<Globals>
(block Nil (setq intMerovianOnInit (lambda (prevScreen)
(block Nil 
(setq gPrevScreen prevScreen)
(if (not (objGetData gPlayerShip "MerovianXP"))
						(block Nil
							(objSetData gPlayerShip "MerovianXP" 0)
							(objSetData gPlayerShip "MerovianRanking" 1)
							)
						)


			(setq intMerovianPromotion (lambda Nil
				; Returns level that the player is promoted to (or Nil)

				(block (xp newLevel)
					(setq xp (objGetData gPlayerShip "MerovianXP"))
					(switch
						(geq xp 6400)
							(setq newLevel 7)

						(geq xp 3200)
							(setq newLevel 6)

						(geq xp 1600)
							(setq newLevel 5)

						(geq xp 800)
							(setq newLevel 4)

						(geq xp 400)
							(setq newLevel 3)

						(geq xp 200)
							(setq newLevel 2)

						(setq newLevel 1)
						)

					; Return if different from current level
					(if (eq (objGetData gPlayerShip "MerovianRanking") newLevel)
						Nil
						newLevel
						)
					)
				))
						(and (scrIsFirstOnInit gScreen) (intMerovianPromotion))
							(scrShowScreen gScreen "&dsMeroPromo;")
						)
					)
				))
			)
	</Globals>
<DockScreen UNID="&dsMeroPromo;"
name=				"=(objGetName gSource)"
			>

		<Panes>
			<Default>
				<Initialize>
					(block (desc)
						(setq gLevel (intMerovianPromotion))
(switch 
(ls gLevel 3)
(setq desc "As soon as you exit the docking ramp, you are surrounded by a Merovian squad cheering for you. They carry you inside.")
(setq desc "As soon as you exit the docking ramp, the Merovian commander walks up to you and says, \"Come on in.\" You are escorted into the station.")
)
(scrSetDesc gScreen desc)
)
</Initialize>
<Actions>
<Action name="Continue" cancel="1" key="C">
<ShowPane pane="Promote"/>
</Action>
</Actions>
</Default>

<Promote>
<Initialize>
(block (desc)
(switch
(eq gLevel 2)
(setq desc "The station master addresses you in front of the crowd. \"I am proud to present you a new visitor. %He% has given us reason to recognize %him% in this meeting. %name%, you are now a member of the Merovian Nation!\" The crowd cheers as you are escorted out of the area.")
(eq gLevel 3)
(setq desc "The station master addresses you in front of the crowd. \"I am proud to present you a new visitor. %He% has given us reason to recognize %him% in this meeting. %name%, you are now an Officer in the Merovian Nation!\" The crowd cheers as you are escorted out of the area.")
(eq gLevel 4)
(setq desc "You expect to find the station master but instead you find only the crowd. They pin a Lieutenant badge onto your shirt.")
(eq gLevel 5)
(setq desc "You enter an apparently empty room decorated just for you. You find a Defender's uniform on the desk. The station master approaches you. \"Take it. It's yours.\""
(eq gLevel 6)
(setq desc "As you enter the party room, you notice people keep calling you \"Warrant Officer.\" The badge is pinned to your uniform.")
(eq gLevel 7)
(setq desc "The party room is full of joyful people. After the Fleet Commander ribbon is pinned to your uniform, the station master takes you out for a drink.")
)
(scrSetDesc gScreen desc)
)

</Initialize>
<Actions>
<Action name="Continue" cancel="1" key="C">
(block Nil (objSetData gPlayerShip "MerovianRanking" gLevel)
(scrShowScreen gScreen gPrevScreen)
)
</Action>
</Actions>
</Promote>
</Panes>
</DockScreen>




<ShipClass UNID="&scTransport;"
			manufacturer=		"rogue transport"
			class=				""
			type=				""
			score=				"105"

			mass=				"250"
			cargoSpace=			"200"
			thrust=				"200"
			maneuver=			"6"
			maxSpeed=			"18"

			leavesWreck=		"75"

			attributes=			"genericClass, enemy"
			>

		<Armor>
			<ArmorSection start="315" span="90" armorID="&itLightIocrymPlate;" />
			<ArmorSection start="225" span="90" armorID="&itLightIocrymPlate;" />
			<ArmorSection start="135" span="90" armorID="&itLightIocrymPlate;" />
			<ArmorSection start="45"  span="90" armorID="&itLightIocrymPlate;" />
		</Armor>

		<Devices>
			<Device deviceID="&itPlasmaCannon;" omnidirectional="true"/>
			<Device deviceID="&itIocrymVeil;"/>
		</Devices>

		<Items>
		</Items>

			<Image imageID="&rsMediumShips1;" imageX="864" imageY="0" imageWidth="48" imageHeight="48" imageFrameCount="0" imageTicksPerFrame="0"/>

		<DriveImages>
			<NozzleImage imageID="&rsDriveExhaust;" imageX="48" imageY="0" imageWidth="48" imageHeight="48" imageFrameCount="0" imageTicksPerFrame="0"/>
			<NozzlePos x="-45" y="-16"/>
			<NozzlePos x="-45" y="16"/>
		</DriveImages>
	<AISettings
			fireRateAdj=		"120"
			fireAccuracy=		"85"
			perception=			"4"
			/>
		<Events>
<OnDestroy>
(objIncRefData gPlayerShip "MerovianXP" 100)
</OnDestroy>
</Events>
			</ShipClass>

<ShipClass UNID="&scGunship;"
			manufacturer=		"Merovian transport"
			class=				""
			type=				""
			score=				"105"

			mass=				"250"
			cargoSpace=			"200"
			thrust=				"200"
			maneuver=			"6"
			maxSpeed=			"18"

			leavesWreck=		"0"

			attributes=			"genericClass"
			>

		<Armor>
			<ArmorSection start="315" span="90" armorID="&itLightIocrymPlate;" />
			<ArmorSection start="225" span="90" armorID="&itLightIocrymPlate;" />
			<ArmorSection start="135" span="90" armorID="&itLightIocrymPlate;" />
			<ArmorSection start="45"  span="90" armorID="&itLightIocrymPlate;" />
		</Armor>

		<Devices>
			<Device deviceID="&itPlasmaCannon;" omnidirectional="true" secondaryWeapon="true"/>
			<Device deviceID="&itIocrymCocoon;"/>
			<Device deviceID="&itPlasmaCannon;" omnidirectional="true" secondaryWeapon="true"/>
			<Device deviceID="&itMerovianPhaser;" omnidirectional="true" secondaryWeapon="true"/>
			<Device deviceID="&itMerovianPhaser;" omnidirectional="true" secondaryWeapon="true"/>
		</Devices>

		<Items>
		</Items>

			<Image imageID="&rsMediumShips1;" imageX="864" imageY="0" imageWidth="48" imageHeight="48" imageFrameCount="0" imageTicksPerFrame="0"/>

		<DriveImages>
			<NozzleImage imageID="&rsDriveExhaust;" imageX="48" imageY="0" imageWidth="48" imageHeight="48" imageFrameCount="0" imageTicksPerFrame="0"/>
			<NozzlePos x="-45" y="-16"/>
			<NozzlePos x="-45" y="16"/>
		</DriveImages>
	<AISettings
			fireRateAdj=		"120"
			fireAccuracy=		"100"
			perception=			"4"
			agressor="true"
			/>
		<Events>
<OnDestroy>
(objIncRefData gPlayerShip "MerovianXP" -100)
</OnDestroy>
</Events>
			</ShipClass>


<ShipClass UNID="&scTestShip;"
			manufacturer=		"Zubrin Systems"
			class=				"Sapphire"
			type=				"yacht"
			score=				"95"
			techOrder=			"biomech"
			
			mass=				"30"
			reactorPower=		"150"
			fuelCapacity=		"37500"
			cargoSpace=			"50"
			thrust=				"150"
			rotationCount=		"40"
			maneuver=			"2"
			maxSpeed=			"20"

			maxArmor=			"6000"
			maxCargoSpace=		"150"
			maxDevices=			"7"
			
			leavesWreck=		"30"
			>

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

		<Devices>
			<Device deviceID="&itLamplighter;"/>
			<Device deviceID="&it1GWReactor;"/>
		</Devices>

		<Items>
			<Item count="4d6" item="&itHelium3FuelRod;"/>
		</Items>

		<AISettings
			fireRateAdj=		"30"
			fireAccuracy=		"90"
			perception=			"4"
			/>

		<Image imageID="&rsSapphireYacht;" imageX="0" imageY="0" imageWidth="48" imageHeight="48"/>

		<DriveImages>
			<NozzleImage imageID="&rsDriveExhaust2;" imageX="0" imageY="0" imageWidth="48" imageHeight="48"/>
			<NozzlePos x="-28" y="-4"/>
			<NozzlePos x="-28" y="5"/>
		</DriveImages>

		<PlayerSettings
			desc=				"The versatile Sapphire yacht strikes a good balance between a gunship and a freighter."
			largeImage=			"&rsZubrinLarge;"
			initialClass=		"true"
			startingCredits=	"10d100+1000"
			
			startingSystem=		"PH"
			startingPos=		"Inbound"
			>

			<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>

			<ShieldDisplay>
				<Image imageID="&rsZubrinShields;" 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>








<ItemType UNID="&itModdyLightningTurret;"
			name=				"Moddy lightning turret"
			level=				"8"
			value=				"75000"
			mass=				"6000"
			frequency=			"veryrare"
			modifiers=			"Ares; EnergyWeapon; Military; MajorItem; NotForSale;"

			description=		"This omnidirectional turret combines two lightning cannons."
			>

		<Image imageID="&rsItems1;" imageX="96" imageY="0" imageWidth="96" imageHeight="96"/>

		<Weapon
				type=				"beam"

				omnidirectional=	"true"
				configuration=		"alternating"
				damage=				"ion:4d6+2; WMD3"
				fireRate=			"3"
				lifetime=			"40"
				powerUse=			"1000"
				beamType=			"lightning"
				primaryColor=		"0xa0, 0xf0, 0xff"
				secondaryColor=		"0x00, 0xa9, 0xff"
				intensity=			"8"
				sound=				"&snLaserCannon;"
				>
		</Weapon>

	</ItemType>

	<ItemType UNID="&itThermoExplosionSuperWeapon;"
			name=				"thermo explosion 4"
			level=				"30"
			value=				"4500000000"
			mass=				"10000"
			frequency=			"notRandom"
			modifiers=			"Alien; Illegal; NotForSale"
			description=			"This is a powerful weapon that is for some reason illegal."
			>
			<Image imageID="&rsItems1;" imageX="96" imageY="0" imageWidth="96" imageHeight="96"/>

		<Weapon
				type=				"radius"

				damage=				"thermo:16d24; momentum1; WMD3"
				fireRate=		"4"
				minRadius=			"2"
				maxRadius=			"6"
				>

			<Effect>
				<Image imageID="&rsExplosionsA20G256;"
						imageX="0"
						imageY="0"
						imageWidth="256"
						imageHeight="256"
						imageFrameCount="20"
						imageTicksPerFrame="2"/>

				<Flare
						style=				"fadingBlast"
						radius=				"400"
						lifetime=			"16"
						primaryColor=		"0xff, 0xff, 0xf0"
						/>
			</Effect>

			<Fragment
					count=			"1"
					type=			"area"

					damage=			"thermo:4d24; momentum3; WMD2"
					fireRate=		"4"
					expansionSpeed=	"30"
					missileSpeed=	"0"
					lifetime=		"24"
					hitPoints=		"50"
					>

				<Effect>
					<Shockwave
							fadeStart=	"70"
						>
						<Image imageID=				"&rsShockwave3;"
								imageX=				"0"
								imageY=				"0"
								imageWidth=			"512"
								imageHeight=		"128"
								imageFrameCount=	"1"
								imageTicksPerFrame=	"1"/>
					</Shockwave>
				</Effect>
			</Fragment>

			<Fragment
					count=			"1"
					type=			"area"
					initialDelay=	"6"

					damage=			"thermo:6d24; momentum2; WMD1"
					fireRate=		"4"
					expansionSpeed=	"26"
					missileSpeed=	"0"
					lifetime=		"24"
					hitPoints=		"50"
					>

				<Effect>
					<Shockwave
							fadeStart=	"70"
						>
						<Image imageID=				"&rsShockwave2;"
								imageX=				"0"
								imageY=				"0"
								imageWidth=			"512"
								imageHeight=		"128"
								imageFrameCount=	"1"
								imageTicksPerFrame=	"1"/>
					</Shockwave>
				</Effect>
			</Fragment>

			<Fragment
					count=			"3d8+12"
					type=			"missile"

					damage=			"blast:8d12; momentum2; WMD3"
					fireRate=		"4"
					missileSpeed=	"15-27"
					lifetime=		"18-24"
					hitPoints=		"50"
					>

				<Effect>
					<Image imageID="&rsMissiles3;" imageX="0" imageY="0" imageWidth="16" imageHeight="16" rotationCount="20"/>

					<SmokeTrail
							spread=			"5-12"
							particleLifetime="16"
							emitDuration=	"80"
							emitRate=		"16-20"
							emitSpeed=		"20-25"
							>
						<ParticleEffect>
							<Particle
									style=			"flame"
									maxWidth=		"2-8"
									/>
						</ParticleEffect>
					</SmokeTrail>
				</Effect>
			</Fragment>

		</Weapon>
	</ItemType>


</TranscendenceExtension>
But I play the game and I don't find a SINGLE instance of ANY of the ships/stations in the mod. What am I doing wrong?
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
sdw195
Militia Captain
Militia Captain
Posts: 779
Joined: Wed Nov 18, 2009 1:01 am
Location: Still looking for the csc Antarctica
Contact:

try giving the station

Code: Select all

	levelFrequency=		"----- rcur- ----- ----- -----"
	locationCriteria=	"*"

where rcur meant it is rare at lvl 6 and 9 common at lvl7 and uncommon at lv 8
(just change it to what you want)


(also um please dont post such a large amount of code in you message, use pastebin )
Image
Image
Image
Image
"Dash_Merc - George is a genius, in that he created this game engine that is infinitely extendable"
"<@sheepluva>Good night everybody, may the source be with you." <-- FOSG dev
"You only need THREE tools in life - WD-40 to make things go, Duct Tape to make things stop And C-4 to make things go away"
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

My Merovian Phaser Cannon

Code: Select all

<ItemType UNID="&itMerovianPhaser;"
name="Merovian phaser cannon"
level="9"
value="3300000"
mass="1000"
frequency="rare"
modifiers="Alien; NotForSale; Military"
description="This phaser defends Merovian stations.">
<Image imageID="&rsItems1;" imageX="96" imageY="0" imageWidth="96" imageHeight="96"/>
<Weapon type="beam"
damage=				"antimatter:11"
fireRate=			"10"
lifetime=			"250"
missileSpeed=			"80"
repeating=			"4"
powerUse=			"3000"

beamType=			"laser"
primaryColor=		"0xf1, 0x5f, 0x2a"
secondaryColor=		"0xff, 0x00, 0x00"
sound=				"&snLaserCannon;"
>

</Weapon>
</ItemType>
doesn't look like much but if a station attacks you, you're toast. (You won't even have time to run.) :twisted:
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

Ok... They show up but I can't dock w/ them.
My coding
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
sdw195
Militia Captain
Militia Captain
Posts: 779
Joined: Wed Nov 18, 2009 1:01 am
Location: Still looking for the csc Antarctica
Contact:

are they friendly?
(also try joining the irc channel #transcendence on freenode of just click here )
also add

Code: Select all

dockScreen=  "Main"
by

Code: Select all

abandonedScreen=        "&dsAbandonedStation;"
Image
Image
Image
Image
"Dash_Merc - George is a genius, in that he created this game engine that is infinitely extendable"
"<@sheepluva>Good night everybody, may the source be with you." <-- FOSG dev
"You only need THREE tools in life - WD-40 to make things go, Duct Tape to make things stop And C-4 to make things go away"
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

Still can't dock.
They're friendly to YOU, although I plan on them being enemies of everyone else including each other.
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

Sorry, my bad. I can dock now- Forgot to save XML.
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
User avatar
digdug
Fleet Admiral
Fleet Admiral
Posts: 2620
Joined: Mon Oct 29, 2007 9:23 pm
Location: Decoding hieroglyphics on Tan-Ru-Dorem

to dock with a station you need docking ports, try to add this to your station:

Code: Select all

<DockingPorts>
			<Port x="0"		y="90" />
			<Port x="0"		y="-90" />
			<Port x="60"	y="60" />
			<Port x="60"	y="-60" />
			<Port x="90"	y="0" />
			<Port x="-90"	y="0" />
			<Port x="-60"	y="60" />
			<Port x="-60"	y="-60" />
		</DockingPorts>
[EDIT]
heh, fixed ? I'm too slow at posting :P
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

Code: Select all

<Action name= "Refuel" key="R">
(block Nil (intSetCompatibleFuel '((&itHeliumAssembly; 30) (&itHelium3FuelRod;5)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 2)
(intSetCompatibleFuel '((&itXenotiteFuelRod; 45) (&itHeliumAssembly; 15) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 3)
(intSetCompatibleFuel '((&itPteracniumFuelRod; 90) (&itXenotiteFuelRod; 30) (&itHeliumAssembly; 5) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 4)
(intSetCompatibleFuel '((&itHadronVacuumFuelCell; 185) (&itPteracniumFuelRod; 45) (&itXenotiteFuelRod; 15) (&itHeliumAssembly; 0) (&itHelium3FuelRod; 0)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 5)
(setq gCost 0))

(setq gPrevPane "Default")
(scrShowScreen gScreen "&dsRefuel;")
)
</Action>
When the outpost tries to refuel me, i get "mismatched open parenthesis". Where?
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
User avatar
digdug
Fleet Admiral
Fleet Admiral
Posts: 2620
Joined: Mon Oct 29, 2007 9:23 pm
Location: Decoding hieroglyphics on Tan-Ru-Dorem

you forgot to close the second and the third ifs

there fixed:

Code: Select all

<Action name= "Refuel" key="R">
(block Nil 

(intSetCompatibleFuel '((&itHeliumAssembly; 30) (&itHelium3FuelRod;5)))

(if (geq (objGetData gPlayerShip "MerovianRanking") 2)
(intSetCompatibleFuel '((&itXenotiteFuelRod; 45) (&itHeliumAssembly; 15) (&itHelium3FuelRod; 0))))

(if (geq (objGetData gPlayerShip "MerovianRanking") 3)
(intSetCompatibleFuel '((&itPteracniumFuelRod; 90) (&itXenotiteFuelRod; 30) (&itHeliumAssembly; 5) (&itHelium3FuelRod; 0))))

(if (geq (objGetData gPlayerShip "MerovianRanking") 4)
(intSetCompatibleFuel '((&itHadronVacuumFuelCell; 185) (&itPteracniumFuelRod; 45) (&itXenotiteFuelRod; 15) (&itHeliumAssembly; 0) (&itHelium3FuelRod; 0))))

(if (geq (objGetData gPlayerShip "MerovianRanking") 5)
(setq gCost 0))

(setq gPrevPane "Default")
(scrShowScreen gScreen "&dsRefuel;")
)
</Action>
I'm really bad at closing parenthesis (and indenting), that's why I use a text editor that helps me doing it. I use jEdit, but VIM or Notepad++ and many others are good too.
Last edited by digdug on Wed Dec 15, 2010 11:29 pm, edited 1 time in total.
sdw195
Militia Captain
Militia Captain
Posts: 779
Joined: Wed Nov 18, 2009 1:01 am
Location: Still looking for the csc Antarctica
Contact:

try

Code: Select all

(block Nil (intSetCompatibleFuel '((&itHeliumAssembly; 30) (&itHelium3FuelRod;5))) 

(if (geq (objGetData gPlayerShip "MerovianRanking") 2) 
(intSetCompatibleFuel '((&itXenotiteFuelRod; 45) (&itHeliumAssembly; 15) (&itHelium3FuelRod; 0))) 
) ;here
(if (geq (objGetData gPlayerShip "MerovianRanking") 3) 
(intSetCompatibleFuel '((&itPteracniumFuelRod; 90) (&itXenotiteFuelRod; 30) (&itHeliumAssembly; 5) (&itHelium3FuelRod; 0))) 
) ;here
(if (geq (objGetData gPlayerShip "MerovianRanking") 4) 
(intSetCompatibleFuel '((&itHadronVacuumFuelCell; 185) (&itPteracniumFuelRod; 45) (&itXenotiteFuelRod; 15) (&itHeliumAssembly; 0) (&itHelium3FuelRod; 0))) 
) ;and here
(if (geq (objGetData gPlayerShip "MerovianRanking") 5) 
(setq gCost 0)) 

(setq gPrevPane "Default") 
(scrShowScreen gScreen "&dsRefuel;") 
)
Image
Image
Image
Image
"Dash_Merc - George is a genius, in that he created this game engine that is infinitely extendable"
"<@sheepluva>Good night everybody, may the source be with you." <-- FOSG dev
"You only need THREE tools in life - WD-40 to make things go, Duct Tape to make things stop And C-4 to make things go away"
sdw195
Militia Captain
Militia Captain
Posts: 779
Joined: Wed Nov 18, 2009 1:01 am
Location: Still looking for the csc Antarctica
Contact:

digdug, race you to answer his next question :P
Image
Image
Image
Image
"Dash_Merc - George is a genius, in that he created this game engine that is infinitely extendable"
"<@sheepluva>Good night everybody, may the source be with you." <-- FOSG dev
"You only need THREE tools in life - WD-40 to make things go, Duct Tape to make things stop And C-4 to make things go away"
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

Unknown item type 263109 ### (itmCreate theFuel 0) 1)
that's what it said.
sdw195 wrote:digdug, race you to answer his next question :P
:D :D :D :D :D
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

THE RACE IS ON!!!
:D
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
josh19967
Militia Lieutenant
Militia Lieutenant
Posts: 162
Joined: Mon Aug 30, 2010 10:52 pm
Location: Vacationing at ModWorld... :D

The winner gets a copy of my code!!!
(Via private message- I don't want the loser to get it)
:D
I really don't care if I get my hair cut... *snip* NOOOOOOOOOOOO!!!!!!!!!!!
Post Reply