WIP Proposal: Outlaw Miner Overhaul

Post ideas & suggestions you have pertaining to the game here.
Post Reply
User avatar
Shrike
Fleet Admiral
Fleet Admiral
Posts: 2704
Joined: Mon Aug 17, 2009 4:27 am
Location: Scouting the borders of sanity (there's a lovely view of the abyss).

Fri Jul 14, 2017 1:10 am

Overview
The outlaw miners are an old faction, but currently suffer from power-creep. They lack the ability to be relevant in their higher-level spawns and are basically loot bags (although the turrets ARE dangerous for a while at least). This proposal is a draft for a system to increase performance at higher levels without overpowering them at early levels. This will comprise several areas of change:

1. Alterations to existing equipment
2. New equipment
3. New ship classes
4. Revised encounter tables
5. Station code
Why it's on the forums
I'm not putting this to Ministry or Git yet because it's not quite ready. I need to plug some holes left by removing SM&M-specific things from the mix. There were also balance issues and old methods of writing up things that need to be updated. Thus, I'm hopeful I can get some good reviews of the code and suggestions for alterations and changes before finalising this as a submission.

Unfortunately there is a lot of code here, which makes it a pain to go through. but that's also why it has be be critiqued before it goes live.





1. Alterations to existing equipment
Currently, the outlaws use the standard mining laser. However for it to fit with the proposed new equipment the current graphical effect (the last of the old-style laser effects) has to be removed. Instead, the mining laser would use the standard laser effects, giving it a red/orange beam similar to a Bolide. This allows for the heavy mining laser to use a green beam, and the advanced to use a purple beam. It also fits with the standard colour-coding of how powerful a beam is.

I would also take the time to fix the performance of the mining charges by giving them perfect (100%) passthrough, thus making their (virtual weapon) code look like this:

Code: Select all

<ItemType UNID="&vtSeismicScannerPower;"
			name=				"seismic scanner power"
			virtual=			"true"
			inherit=			"&baSeismicScannerPower;"
			level=				"2"
			>

		<Weapon
				type=				"area"

				damage=				"blast:3d6"
				fireRate=			"30"
				expansionSpeed=		"80"
				missileSpeed=		"0"
				lifetime=			"20"
				powerUse=			"500"
				passthrough=		"100"
				canHitSource=		"true"
				
				sound=				"&snArmorHit1;"
				>

			<Effect>
				<Shockwave
						style=			"glowRing"
						width=			"2"
						glowSize=		"12"
						primaryColor=	"#ffd4cb"
						secondaryColor=	"#f24b29"
						/>
			</Effect>
		</Weapon>
		
		<StaticData>
			<Data id="podType">&itSeismicScannerPod;</Data>
		</StaticData>
		
		</ItemType>
		
		<ItemType UNID="&vtClassAExcavationPower;"
			name=				"class A excavation power"
			virtual=			"true"
			level=				"3"
			>

		<Weapon
				type=				"area"

				damage=				"blast:4d6; mining:5"
				fireRate=			"30"
				expansionSpeed=		"80"
				missileSpeed=		"0"
				lifetime=			"20"
				passthrough=		"100"
				powerUse=			"500"
				canHitSource=		"true"
				>

			<FireEffect
					sound="&snArmorHit1;"
							>
				<Flare
						style=			"fadingBlast"
						radius=			"120"
						primaryColor=	"#ffc29a"
						lifetime=		"8"
								/>
			</FireEffect>
			
			<Effect>
				<Shockwave
						style=			"image"
						>
					<Image imageID=				"&rsShockwave3;"
							imageX=				"0" 
							imageY=				"0" 
							imageWidth=			"512" 
							imageHeight=		"128"
							/>
				</Shockwave>
			</Effect>
		</Weapon>
	</ItemType>
	
	<ItemType UNID="&vtClassBExcavationPower;"
			name=				"class B excavation power"
			virtual=			"true"
			level=				"5"
			>

		<Weapon
				type=				"area"

				damage=				"blast:6d6; mining:6"
				fireRate=			"30"
				expansionSpeed=		"80"
				missileSpeed=		"0"
				lifetime=			"25"
				passthrough=		"100"
				powerUse=			"500"
				canHitSource=		"true"
				>

			<FireEffect
					sound="&snArmorHit1;"
							>
				<Flare
						style=			"fadingBlast"
						radius=			"180"
						primaryColor=	"#ffc29a"
						lifetime=		"8"
								/>
			</FireEffect>
			
			<Effect>
				<Shockwave
						style=			"image"
						>
					<Image imageID=				"&rsShockwave3;"
							imageX=				"0" 
							imageY=				"0" 
							imageWidth=			"512" 
							imageHeight=		"128"
							/>
				</Shockwave>
			</Effect>
		</Weapon>
	</ItemType>
	
	<ItemType UNID="&vtAdvancedScannerPower;"
			name=				"advanced scanner power"
			virtual=			"true"
			inherit=			"&baSeismicScannerPower;"
			level=				"6"
			>

		<Weapon
				type=				"area"

				damage=				"blast:5d6"
				fireRate=			"30"
				expansionSpeed=		"80"
				missileSpeed=		"0"
				lifetime=			"38"
				passthrough=		"100"
				powerUse=			"500"
				canHitSource=		"true"
				
				sound=				"&snArmorHit1;"
				>

			<Effect>
				<Shockwave
						style=			"glowRing"
						width=			"2"
						glowSize=		"12"
						primaryColor=	"#f7ffcc"
						secondaryColor=	"#d1f229"
						/>
			</Effect>
		</Weapon>
		
		<StaticData>
			<Data id="podType">&itAdvancedScannerPod;</Data>
		</StaticData>
	</ItemType>
	
	<ItemType UNID="&vtClassCExcavationPower;"
			name=				"class C excavation power"
			virtual=			"true"
			level=				"8"
			>

		<Weapon
				type=				"area"

				damage=				"thermo:8d12; mining:7"
				fireRate=			"30"
				expansionSpeed=		"80"
				missileSpeed=		"0"
				lifetime=			"38"
				passthrough=		"100"
				powerUse=			"500"
				canHitSource=		"true"
				>

			<FireEffect
					sound="&snArmorHit1;"
							>
				<Flare
						style=			"fadingBlast"
						radius=			"240"
						primaryColor=	"#ffc29a"
						lifetime=		"8"
								/>
			</FireEffect>
			
			<Effect>
				<Shockwave
						style=			"image"
						>
					<Image imageID=				"&rsShockwave3;"
							imageX=				"0" 
							imageY=				"0" 
							imageWidth=			"512" 
							imageHeight=		"128"
							/>
				</Shockwave>
			</Effect>
		</Weapon>
	</ItemType>
	

2. New equipment
To enable levelled ship spawning, additional mining equipment is required. SM&M++ includes dual versions of mining lasers, but these are not included in this proposal for reason of simplicity (and because they're Tinker items).

Heavy mining laser

This weapon is designed to appear on the Borer II. It is a turbolaser-derived mining weapon that packs a powerful punch at short range. It uses the following code (from SM&M++, description can/should be reworked):

Code: Select all

<ItemType UNID="&itHeavyMiningLaser;"
			name=				"heavy mining laser"
			attributes=			"commonwealth, energyWeapon, majorItem, miningEquipment, specialty"
			  
			level=				"4"
			frequency=			"uncommon"

			value=				"3000"
			mass=				"3000"
			  
			description=		"An improved mining laser, used to vaporise rocks with high boiling points or ablative properties and expose viable ores."
			>

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

		<Weapon
				type=				"beam"

				repeating=			"4"
				damage=				"laser:3d4+2; mining:3;"
				fireRate=			"36"
				lifetime=			"15"
				powerUse=			"100"

				effect=				"&efLaserBeamDefault;"
				sound=				"&snLaserCannon;"
				>
		</Weapon>

	</ItemType>
	
Advanced Mining Laser

This weapon is designed to appear on the late-game Borer III. It is an exceptionally powerful laser, but is impractical for combat. It has the notStandard attribute, and as such requires IMU membership to purchase (though it will spawn on borers regardless of whether CC is installed). It uses the following code:

Code: Select all

<ItemType UNID="&itAdvancedMiningLaser;"
			name=				"advanced mining laser"
			attributes=			"commonwealth, energyWeapon, majorItem,  miningEquipment, notStandard"
			  
			level=				"6"
			frequency=			"uncommon"

			value=				"20000"
			mass=				"4000"
			  
			description=		"The most powerful mining laser currently in service with the Commonwealth, this state-of-the-art device is less efficient, but far more practical than most plasma-based mining tools. "
			>

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

		<Weapon
				type=				"beam"

				repeating=			"4"
				damage=				"laser:8d4+2; mining:4;"
				fireRate=			"38"
				lifetime=			"15"
				powerUse=			"200"

				effect=				"&efLaserBeamDefault;"
				sound=				"&snLaserCannon;"
				>
		</Weapon>

	</ItemType>
	
These altered devices give a wider spread of mining capability to Commonwealth and Outlaw mining vessels in-'verse, while improving gameplay by presenting a genuine threat to a player who sits in front of a borer for long enough.

3. New & altered shipclasses
In order to use this equipment without wiping out early-game players, there needs to be a wider range of ships that can be spread out by encounter tables and system generation:

Borer II

To enable it to be held back for later systems, the Borer II is refitted with a heavy mining laser:

Code: Select all

<ShipClass UNID="&scBorer-II;"
			manufacturer=		"United African States"
			class=				"Borer II"
			type=				"gunship"
			defaultSovereign=	"&svOutlawMiners;"

			attributes=			"genericClass, outlawMiners"
			   
			mass=				"200"
			thrustRatio=		"6"
			maxSpeed=			"10"
			cargoSpace=			"25"
			>

		<!-- Configuration -->
		
		<Armor
			armorID=			"&itReactiveArmor;"
			count=				"4"
			/>
		
		<Devices>
			<Device  deviceID="&itHeavyMiningLaser;"/>
			<Device deviceID="&itClass1Deflector;"/>
		</Devices>

		<Maneuver
			maxRotationRate=	"5.0"
			rotationAccel=		"0.8"
			/>

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

		<!-- Image and Effects -->
		
		<Image imageID="&rsBorer;" imageX="0" imageY="0" imageWidth="72" imageHeight="72"/>

		<Effects>
			<Effect type="thrustMain"		posAngle="180"	posRadius="14"	posZ="-25"	rotation="180"/>
			<Effect type="thrustMain"		posAngle="122"	posRadius="25"	posZ="0"	rotation="180"/>
			<Effect type="thrustMain"		posAngle="-122"	posRadius="25"	posZ="0"	rotation="180"/>
			<Effect type="thrustMain"		posAngle="180"	posRadius="14"	posZ="25"	rotation="180"/>
		</Effects>

		<!-- AI and Behavior -->
		
		<AISettings
			fireRateAdj=		"30"
			fireAccuracy=		"90"
			perception=			"4"
			/>

		<Events>
			<OnCreate>
				(block (baseOre maxLootValue)
					; There is a chance that we have some small amount of ore
					
					(setq maxLootValue (random 100 500))
					(switch
						; 20% chance of fuel instead of ore.
						(leq (random 1 100) 20)
							(objAddItem gSource (itmCreate &itHeliumAssembly; (random 1 8)))

						; If we have a base and it has ore then we have some of
						; that in our cargo.
						(and aBaseObj (setq baseOre (random (objGetItems aBaseObj "t +Ore"))))
							(objAddItemByValue gSource baseOre maxLootValue 'credit)
								
						; Otherwise we ore appropriate to the system
						(objAddItemByValue gSource (itmCreate (sysGetRandomOreType) 1) maxLootValue 'credit)
						)
						
					; Chance of fuel rods in addition
					(if (leq (random 1 100) 50)
						(objAddItem gSource (itmCreate &itHelium3FuelRod; (random 1 4)))
						)
					)
			</OnCreate>
		</Events>
	</ShipClass>
Borer III

The Borer III is a fairly rare ship, appearing in the later part of the game. It's basically a more powerful Borer II, fitting the Advanced Mining Laser:

Code: Select all

<ShipClass UNID="&scBorer-III;"
			manufacturer=		"United African States"
			class=				"Borer III"
			type=				"gunship"
			defaultSovereign=	"&svOutlawMiners;"

			attributes=			"genericClass, outlawMiners"
			   
			mass=				"200"
			thrustRatio=		"6"
			maxSpeed=			"10"
			cargoSpace=			"25"
			explosionType=		"&vtBlastExplosion1;"
			>

		<!-- Configuration -->
		
		<Armor
			armorID=			"&itHardenedReactiveArmor;"
			count=				"4"
			/>
		
		<Devices>

			<Device deviceID="&itAdvancedMiningLaser;"/>
			<Device deviceID="&itClass2Deflector;"/>
			<Device chance="10" deviceID="&itArmorRepairDevice;"/>
		</Devices>

		<Maneuver
			maxRotationRate=	"5.0"
			rotationAccel=		"0.8"
			/>

		<Items>
			<Item count="1d6" item="&itHeliumAssembly;"/>
		</Items>

		<!-- Image and Effects -->
		
		<Image imageID="&rsBorer;" imageX="0" imageY="0" imageWidth="72" imageHeight="72"/>

		<Effects>
			<Effect type="thrustMain"		posAngle="180"	posRadius="14"	posZ="-25"	rotation="180"/>
			<Effect type="thrustMain"		posAngle="122"	posRadius="25"	posZ="0"	rotation="180"/>
			<Effect type="thrustMain"		posAngle="-122"	posRadius="25"	posZ="0"	rotation="180"/>
			<Effect type="thrustMain"		posAngle="180"	posRadius="14"	posZ="25"	rotation="180"/>
		</Effects>

		<!-- AI and Behavior -->
		
		<AISettings
			fireRateAdj=		"30"
			fireAccuracy=		"90"
			perception=			"4"
			/>

		<Events>
			<OnCreate>
				(block (baseOre maxLootValue)
					; There is a chance that we have some small amount of ore
					
					(setq maxLootValue (random 100 500))
					(switch
						; 20% chance of fuel rods instead of ore.
						(leq (random 1 100) 20)
							(objAddItem gSource (itmCreate &itHeliumAssembly; (random 1 8)))

						; If we have a base and it has ore then we have some of
						; that in our cargo.
						(and aBaseObj (setq baseOre (random (objGetItems aBaseObj "t +Ore"))))
							(objAddItemByValue gSource baseOre maxLootValue 'credit)
								
						; Otherwise we ore appropriate to the system
						(objAddItemByValue gSource (itmCreate (sysGetRandomOreType) 1) maxLootValue 'credit)
						)
						
					; Chance of fuel rods in addition
					(if (leq (random 1 100) 50)
						(objAddItem gSource (itmCreate &itHeliumAssembly; (random 1 4)))
						)
					)
			</OnCreate>
		</Events>
	</ShipClass>
	
My code also has a small chance for a patcher arm. That can be kept or discarded as desired (personally I'd keep it: we need more device spawns).

Oromo II

With expanded usage of the Oromo and Sotho, later-game versions are required. This code is very SM&M++ rather than vanilla: it has a range of devices that can turn up. I have however simplified it to only a choice of three weapons: the slam cannon, heavy slam cannon, and Moskva 33. It performs like a somewhat worse version of the Ronin/C:

Code: Select all

<ShipClass UNID="&scOromo2;"
			manufacturer=		"United African States"
			class=				"Oromo II"
			type=				"gunship"
			defaultSovereign=	"&svOutlaw;"

			attributes=			"genericClass, outlaws"
			   
			size=				"53"
			mass=				"200"
			thrustRatio=		"4"
			maxSpeed=			"20"
			cargoSpace=			"25"
			>

		<!-- Configuration -->
		
		<Armor
			armorID=			"&itCeralloyArmor;"
			count=				"4"
			/>
		
		<Devices>
			<Table>
                                <Device chance="35" deviceID="&itSlamCannon;"/>
				<Device chance="35" deviceID="&itHeavySlamCannon;"/>
				<Device chance="30" deviceID="&itShtormRepeater;"/>
			</Table>
		</Devices>

		<Maneuver
			maxRotationRate=	"9.0"
			rotationAccel=		"1.0"
			/>

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

		<!-- Image and Effects -->
		
		<Image imageID="&rsOromo;" imageX="0" imageY="0" imageWidth="80" imageHeight="80"/>

		<Effects>
			<Effect type="thrustMain"		posAngle="180"	posRadius="37"	posZ="0"	rotation="180"	sendToBack="3,4,16,17"/>
		</Effects>
		
		<!-- AI and Behavior -->

		<AISettings
			fireRateAdj=		"20"
			fireAccuracy=		"85"
			perception=			"4"
			
			combatStyle=		"advanced"
			/>
	</ShipClass>
Sotho II

I do not have workable code available for this ship at present: the SM&M++ version is too powerful and uses a lot of my own devices. I would suggest that if created, this ship have similar armor (ceralloy or heavy ceralloy), and mount a heavy blast weapon as an omni weapon, such as a Mark I howitzer. My encounter code later is made with the assumption that such a ship exists.

Improved Hammerhead?

I do not have working code for this, but a hammerhead variant using the Moskva 21 might be a suitable thing. Currently my encounter code (below) uses Zulus as the earliest available escorts. A Hammerhead III or similar craft would allow the outlaw miners to solely use the Hammerhead family by moving the 2 current versions into the base-level slots. It would also get the Moskva 21 into the game outside of the Arena.

4. Revised encounter tables
Moving to encounter and reinforcement tables allows for levelled ships to appear at the appropriate time:

tbOutlawBorerEncounters

Code: Select all

<ShipTable unid="&tbOutlawBorerEncounters;">
		<LevelTable>
		
			<Ship levelFrequency="uuurr v----" count="1" class="&scBorer;"/>
			<Ship levelFrequency="---uc cur--" count="1" class="&scBorer-II;"/>
			<Ship levelFrequency="----- vrucc" count="1" class="&scBorer-III;"/>

		</LevelTable>
	</ShipTable>
tbOutlawMinerEscorts

Code: Select all

<ShipTable unid="&tbOutlawMinerEscorts;">
		<LevelTable>
			<Ship levelFrequency="curv- -----" count="1" class="&scZulu;" orders="escort"/>
			<Ship levelFrequency="urvv- -----" count="1" class="&scZulu-II;" orders="escort"/>
			<Ship levelFrequency="-uurv -----" count="1" class="&scHammerhead;" orders="escort"/>
			<Ship levelFrequency="uuccu rv---" count="1" class="&scHammerhead-II;" orders="escort"/>
			<Ship levelFrequency="--ruc urr--" count="1" class="&scOromo;" orders="escort"/>
			<Ship levelFrequency="--rru urr--" count="1" class="&scSotho;" orders="escort"/>
			<Ship levelFrequency="----- ruccc" count="1" class="&scOromo2;" orders="escort"/>
			<Ship levelFrequency="----- -vruu" count="1" class="&scSotho2;" orders="escort"/>
NOTE: This table uses the Zulu as a low-level guard. An alternative would be to use the Hammerhead and introduce the Hammerhead III (with a Moskva 21) to replace the II in that table, moving the rest one step higher.

tbOutlawMinerEncounters

This is a big table. It could probably be made a lot smaller by using the other levelled tables to cut corners.

Code: Select all

	<ShipTable unid="&tbOutlawMinerEncounters;">
		<LevelTable>
			<Ship levelFrequency="ucu-- -----" count="1"	 class="&scBorer;" eventHandler="&evOutlawMinerBehavior;">
				<Escorts>
					<Ship chance="80"		   count="1d2"	 class="&scHammerhead;" orders="escort"/>
				</Escorts>
			</Ship>
			
			<Ship levelFrequency="-ucur -----" count="1"	 class="&scBorer;" eventHandler="&evOutlawMinerBehavior;">
				<Escorts>
					<Ship chance="80"		   count="1d2"	 class="&scHammerhead-II;" orders="escort"/>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="-ucu- -----" count="1"	 class="&scBorer;" eventHandler="&evOutlawMinerBehavior;">
				<Escorts>
					<Table>
						<Ship chance="60"	   count="1d4"	 class="&scHammerhead;" orders="escort"/>
						<Ship chance="30"	   count="1"	 class="&scBorer;" orders="escort"/>
						<Ship chance="10"	   count="2"	 class="&scBorer;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="--ucu -----" count="1"	 class="&scBorer-II;" eventHandler="&evOutlawMinerBehavior;">
				<Escorts>
					<Table>
						<Ship chance="60"	   count="1d4"	 class="&scHammerhead;" orders="escort"/>
						<Ship chance="30"	   count="1"	 class="&scBorer;" orders="escort"/>
						<Ship chance="10"	   count="2"	 class="&scBorer;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="---uc u----" count="1"	 class="&scBorer-II;" eventHandler="&evOutlawMinerBehavior;">
				<Escorts>
					<Table>
						<Ship chance="20"	   count="1d6"	 class="&scHammerhead;" orders="escort"/>
						<Ship chance="30"	   count="1d3"	 class="&scBorer;" orders="escort"/>
						<Ship chance="40"	   count="1d3"	 class="&scHammerhead-II;" orders="escort"/>
						<Ship chance="10"	   count="1"	 class="&scBorer-II;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="----u cu---" count="1"	 class="&scBorer-II;" eventHandler="&evOutlawMinerBehavior;">
				<Escorts>
					<Table>
						<Ship chance="10"	   count="1d8"	 class="&scHammerhead;" orders="escort"/>
						<Ship chance="20"	   count="1d4+1" class="&scBorer;" orders="escort"/>
						<Ship chance="45"	   count="1d4+1" class="&scHammerhead-II;" orders="escort"/>
						<Ship chance="25"	   count="1d3"	 class="&scBorer-II;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
			
						<Ship levelFrequency="----- ruuuu" count="1"	 class="&scBorer-II;" eventHandler="&evOutlawMinerBehavior;">
				<Escorts>
					<Table>
						<Ship chance="20"	   count="1d4+1" class="&scBorer;" orders="escort"/>
						<Lookup chance="70"		count="1d4+1" table="&tbOutlawMinerEscorts;" orders="escort"/>  
					</Table>
				</Escorts>
			</Ship>
			
			<Ship levelFrequency="ruuuu ur---" count="1"	class="&scT31ArmedTransport;" eventHandler="&evStdConvoyEncounterBehavior;">
				<Items>
					<Item chance="50"		count="8d20" item="&itSmartCannonShell;"/>
					<Lookup					count="1"  table="&tbStoneAsteroidOre;"/>
				</Items>

				<Escorts>
					<Lookup count="1d4+1" table="&tbOutlawMinerEscorts;"/>  
				</Escorts>
			</Ship>
			
			<Ship levelFrequency="----- vruur" count="1"	class="&scT55ArmedTransport;" eventHandler="&evStdConvoyEncounterBehavior;">
				<Items>
					<Item chance="50"		count="8d20" item="&itSmartCannonShell;"/>
					<Lookup					count="1d2"  table="&tbStoneAsteroidOre;"/>
				</Items>

				<Escorts>
					<Lookup count="1d6+1" table="&tbOutlawMinerEscorts;" orders="escort"/>  
				</Escorts>
			</Ship>
		</LevelTable>
	</ShipTable>
This basically puts everything in its place.

tbOutlawMinerProspector

Code: Select all

<ShipTable unid="&tbOutlawMinerProspector;">
		<LevelTable>
			<Ship levelFrequency="ucu-- -----" count="1"	 class="&scBorer;" eventHandler="&evStdMiningBehavior;">
				<Escorts>
					<Ship chance="80"		   count="1d2"	 class="&scHammerhead;" orders="escort"/>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="---uc u----" count="1"	 class="&scBorer-II;" eventHandler="&evStdMiningBehavior;">
				<Escorts>
					<Table>
						<Ship chance="60"	   count="1d4"	 class="&scHammerhead-II;" orders="escort"/>
						<Ship chance="30"	   count="1"	 class="&scOromo;" orders="escort"/>
						<Ship chance="10"	   count="2"	 class="&scBorer;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="--vru u----" count="1"	 class="&scBorer-II;" eventHandler="&evStdMiningBehavior;">
				<Escorts>
					<Table>
						<Ship chance="60"	   count="1d4"	 class="&scOromo;" orders="escort"/>
						<Ship chance="30"	   count="1d3"	 class="&scBorer;" orders="escort"/>
						<Ship chance="10"	   count="2"	 class="&scBorer-II;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="----- vucu-" count="1"	 class="&scBorer-III;" eventHandler="&evStdMiningBehavior;">
				<Escorts>
					<Table>
						<Ship chance="10"	   count="1d6"	 class="&scHammerhead;" orders="escort"/>
						<Ship chance="10"	   count="1d3"	 class="&scOromo2;" orders="escort"/>
						<Ship chance="30"	   count="1d3"	 class="&scBorer;" orders="escort"/>
						<Ship chance="40"	   count="1d3"	 class="&scHammerhead-II;" orders="escort"/>
						<Ship chance="10"	   count="1"	 class="&scBorer-II;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
		
			<Ship levelFrequency="----u currr" count="1"	 class="&scBorer-III;" eventHandler="&evStdMiningBehavior;">
				<Escorts>
					<Table>
						<Ship chance="25"	   count="1d2"	 class="&scBorer-III;" orders="escort"/>
						<Lookup chance="50"		count="1d4+1" table="&tbOutlawMinerEscorts;" orders="escort"/>  
						<Ship chance="25"	   count="1d3"	 class="&scBorer-II;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
			
			<Ship levelFrequency="----- ruccc" count="1"	 class="&scBorer-III;" eventHandler="&evStdMiningBehavior;">
				<Escorts>
					<Table>
						<Lookup chance="75"		count="1d4+1" table="&tbOutlawMinerEscorts;" orders="escort"/>  
						<Ship chance="25"	   	count="1d3+2"	 class="&scBorer-III;" orders="escort"/>
					</Table>
				</Escorts>
			</Ship>
		</LevelTable>
	</ShipTable>
tbOutlawMinerReinforcements

This is an all-new table, as outlaws in vanilla notably do not have reinforcements. My alterations to stations would have them gain them, but if this is not desired then this table is still required in order to spawn guards.

NOTE: This was designed for far more powerful Sotho IIs than I'm proposing here, as are all the other ship tables. It will require fine-tuning as a result.

Code: Select all

<ShipTable unid="&tbOutlawGuardReinforcements;">
		<LevelTable>
		
			<Ship levelFrequency="ccurv -----" count="1" class="&scHammerhead;" orders="guard"/>
			<Ship levelFrequency="uuccu rv---" count="1" class="&scHammerhead-II;" orders="guard"/>
			<Ship levelFrequency="--ruc urr--" count="1" class="&scOromo;" orders="guard"/>
			<Ship levelFrequency="---vr urr--" count="1" class="&scSotho;" orders="guard"/>
			<Ship levelFrequency="----- -uccc" count="1" class="&scOromo2;" orders="guard"/>
			<Ship levelFrequency="----- --ruu" count="1" class="&scSotho2;" orders="guard"/>
			
			<Ship levelFrequency="ccurv -----" count="1" class="&scHammerhead;" orders="patrol" patroldist="5"/>
			<Ship levelFrequency="ucccu rv---" count="1" class="&scHammerhead-II;" orders="patrol" patroldist="5"/>
			<Ship levelFrequency="--ruc urr--" count="1" class="&scOromo;" orders="patrol" patroldist="5"/>
			<Ship levelFrequency="---vr urr--" count="1" class="&scSotho;" orders="patrol" patroldist="5"/>
			<Ship levelFrequency="----- -uccc" count="1" class="&scOromo2;" orders="patrol" patroldist="5"/>
			<Ship levelFrequency="----- --ruu" count="1" class="&scSotho2;" orders="patrol" patroldist="5"/>

		</LevelTable>
	</ShipTable>
I've never been very good at level coding, so I expect this to require a rewrite (as with all the tables).

tbOutlawBorerReinforcements

This table is used to call in new borers.

Code: Select all

<ShipTable unid="&tbOutlawBorerReinforcements;">
		<LevelTable>
		
			<Ship levelFrequency="uuurr v----" count="1" class="&scBorer;" orders="guard"/>
			<Ship levelFrequency="---uc cur--" count="1" class="&scBorer-II;" orders="guard"/>
			<Ship levelFrequency="----- vrucc" count="1" class="&scBorer-III;" orders="guard"/>

		</LevelTable>
	</ShipTable>

5. Revised station code
Now it's simply a matter of putting things into the station code. The way I've done it is fairly sloppy, but did the job for SM&M++:

(Note: This is the code for all the outlaw stations, because I did pretty much the same things to all of them...wider but defined ranges to appear, and the new reinforcement and guard code)

Code: Select all

<!-- STATION TYPES -->

	<!-- Asteroid Mine, Titanium Ore -->

	<StationType UNID="&stAsteroidMineTitanium;"
			name=				"outlaw titanium mine"
			sovereign=			"&svOutlawMiners;"
			inherit=			"&baOutlawMine;"
				 
			attributes=			"enemy, envEarth, envAvoidsAir, generic, human, outlawMiners, outlaws, populated, settlers"
				 
			abandonedScreen=	"&dsAbandonedStation;"
				 
			armorID=			"&itCeramicPlate;"
			hitPoints=			"75"
			multiHull=			"true"
				 
			canAttack=			"true"
			explosionType=		"&vtKineticExplosion2;"
			ejectaType=			"&vtStoneAsteroidEjecta;"

			>

		<!-- Encounter Info -->

		<Names noArticle="true">Asteroid T%1%0%0%0</Names>

		<Encounter
				levelFrequency=		"uccur ----- ----- ----- -----"
				locationCriteria=	"++asteroids"
				/>

		<Encounters frequency="uncommon">
			<Lookup table="&tbOutlawMinerEncounters;"/>
		</Encounters>

		<!-- Trade and Items -->
		
		<Items>
			<Item count="2d6"	item="&itTitaniumOre;"/>
			<Table>
				<Lookup chance="40" count="1" table="&trConsumables3;"/>
				<Lookup chance="40" count="1" table="&trMinorItem3;"/>
				<Lookup chance="20" count="1" table="&trMajorItem3;"/>
			</Table>
		</Items>

		<!-- Ships and Defenses -->
		
		<Ships>
			<Table>
				<Group chance="25">
					<Ship			count="2d3"	class="&scTenhoveSentinel;"	orders="patrol" patrolDist="5"/>
					<Lookup 	count="1d3"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d3"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
				<Group chance="40">
					<Lookup 	count="4"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d6"	 table="&tbOutlawGuardReinforcements;"/>
				</Group>
				<Group chance="35">
					<Lookup 	count="1d3+1"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d4"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
			</Table>
		</Ships>
		
		<!--SM&M++ Reinforcements-->
		
		<Reinforcements minships="4">
			<Table>
			
				<Group chance="50">
					<Lookup 	count="1d4" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d3" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
				<Group chance="50">
					<Lookup 	count="1d3" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d4" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
			</Table>
  
		</Reinforcements>
		
		<!-- Image and Effects -->
		
		<ImageVariants>
			<Image			imageID="&rsStations1;" imageX="512" imageY="0"   imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="128" imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="256" imageWidth="128" imageHeight="128"/>
		</ImageVariants>

		<DockingPorts
				portCount=		"8"
				portRadius=		"70"
				/>

	</StationType>

	<!-- Asteroid Mine, Palladium Ore -->

	<StationType UNID="&stAsteroidMinePalladium;"
			name=				"outlaw palladium mine"
			sovereign=			"&svOutlawMiners;"
			inherit=			"&baOutlawMine;"
				 
			attributes=			"enemy, envEarth, envAvoidsAir, generic, human, outlawMiners, outlaws, populated, settlers"
				 
			abandonedScreen=	"&dsAbandonedStation;"
				 
			armorID=			"&itHeavyCeramicPlate;"
			hitPoints=			"90"
			multiHull=			"true"
				 
			canAttack=			"true"
			explosionType=		"&vtKineticExplosion2;"
			ejectaType=			"&vtStoneAsteroidEjecta;"
			>

		<!-- Encounter Info -->
		
		<Names noArticle="true">Asteroid L%1%0%0%0</Names>

		<Encounter
				levelFrequency=		"-uccu ur--- ----- ----- -----"
				locationCriteria=	"++asteroids"
				/>

		<Encounters frequency="uncommon">
			<Lookup table="&tbOutlawMinerEncounters;"/>
		</Encounters>

		<!-- Trade and Items -->
		
		<Items>
			<Item count="2d6"	item="&itPalladiumOre;"/>
			<Table chance="50">
				<Lookup chance="40" count="1" table="&trConsumables4;"/>
				<Lookup chance="40" count="1" table="&trMinorItem4;"/>
				<Lookup chance="20" count="1" table="&trMajorItem4;"/>
			</Table>
		</Items>

		<!-- Ships and Defenses -->
		
		<Ships>
			<Table>
				<Group chance="25">
					<Ship			count="2d3"	class="&scTenhoveSentinel;"	orders="patrol" patrolDist="5"/>
					<Lookup 	count="1d3"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d3"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
				<Group chance="40">
					<Lookup 	count="4"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d6"	 table="&tbOutlawGuardReinforcements;"/>
				</Group>
				<Group chance="35">
					<Lookup 	count="1d6"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d4"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
			</Table>
		</Ships>
		
		<!--SM&M++ Reinforcements-->
		
		<Reinforcements minships="4">
			<Table>
			
				<Group chance="50">
					<Lookup 	count="1d4" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d3" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
				<Group chance="50">
					<Lookup 	count="1d3" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d4" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
			</Table>
  
		</Reinforcements>

		<!-- Image and Effects -->
		
		<ImageVariants>
			<Image			imageID="&rsStations1;" imageX="512" imageY="0"   imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="128" imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="256" imageWidth="128" imageHeight="128"/>
		</ImageVariants>

		<DockingPorts
				portCount=		"8"
				portRadius=		"70"
				/>

	</StationType>

	<!-- Asteroid Mine, Ceralloy Ore -->

	<StationType UNID="&stAsteroidMineCeralloy;"
			name=				"outlaw ceralloy mine"
			sovereign=			"&svOutlawMiners;"
			inherit=			"&baOutlawMine;"
				 
			attributes=			"enemy, envEarth, envAvoidsAir, generic, human, outlawMiners, outlaws, populated, settlers"
				 
			abandonedScreen=	"&dsAbandonedStation;"
				 
			armorID=			"&itPlasteelPlate;"
			hitPoints=			"150"
			multiHull=			"true"
				 
			canAttack=			"true"
			explosionType=		"&vtBlastExplosion1;"
			ejectaType=			"&vtStoneAsteroidEjecta;"
			>

		<!-- Encounter Info -->
		
		<Names noArticle="true">Asteroid C%1%0%0%0</Names>

		<Encounter
				levelFrequency=		"--ruu cur-- ----- ----- -----"
				locationCriteria=	"++asteroids"
				/>

		<Encounters frequency="uncommon">
			<Lookup table="&tbOutlawMinerEncounters;"/>
		</Encounters>

		<!-- Trade and Items -->
		
		<Items>
			<Item count="2d6"	item="&itCeralloyOre;"/>
			<Table chance="25">
				<Lookup chance="40" count="1" table="&trConsumables5;"/>
				<Lookup chance="40" count="1" table="&trMinorItem5;"/>
				<Lookup chance="20" count="1" table="&trMajorItem5;"/>
			</Table>
		</Items>

		<!-- Ships and Defenses -->
		
		<Ships>
			<Table>
				<Group chance="25">
					<Ship			count="2d3"	class="&scTenhoveSentinel;"	orders="patrol" patrolDist="5"/>
					<Lookup 	count="1d3"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d3"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
				<Group chance="40">
					<Lookup 	count="4"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d6"	 table="&tbOutlawGuardReinforcements;"/>
				</Group>
				<Group chance="35">
					<Lookup 	count="1d3+1"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d4"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
			</Table>
		</Ships>
		
		<!--SM&M++ Reinforcements-->
		
		<Reinforcements minships="4">
			<Table>
			
				<Group chance="50">
					<Lookup 	count="1d4" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d3" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
				<Group chance="50">
					<Lookup 	count="1d3" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d4" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
			</Table>
  
		</Reinforcements>

		<!-- Image and Effects -->
		
		<ImageVariants>
			<Image			imageID="&rsStations1;" imageX="512" imageY="0"   imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="128" imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="256" imageWidth="128" imageHeight="128"/>
		</ImageVariants>

		<DockingPorts
				portCount=		"8"
				portRadius=		"70"
				/>

	</StationType>
	
		<!-- Asteroid Mine, Duranium Ore -->

	<StationType UNID="&stAsteroidMineDuralloy;"
			name=				"outlaw duranium mine"
			sovereign=			"&svOutlawMiners;"
			inherit=			"&baOutlawMine;"
				 
			attributes=			"enemy, envEarth, envAvoidsAir, generic, human, outlawMiners, outlaws, populated, settlers"
				 
			abandonedScreen=	"&dsAbandonedStation;"
				 
			armorID=			"&itPlasteelPlate;"
			hitPoints=			"150"
			multiHull=			"true"
				 
			canAttack=			"true"
			explosionType=		"&vtBlastExplosion2;"
			ejectaType=			"&vtStoneAsteroidEjecta;"
			>

		<!-- Encounter Info -->
		
		<Names noArticle="true">Asteroid D%1%0%0%0</Names>

		<Encounter
				levelFrequency=		"---uc cur-- ----- ----- -----"
				locationCriteria=	"++asteroids"
				enemyExclusionRadius="40"
				/>
		
		<Encounters frequency="uncommon">
			<Lookup table="&tbOutlawMinerEncounters;"/>
		</Encounters>

		<!-- Trade and Items -->
		
		<Items>
			<Item count="3d8"	item="&itDuralloyOre;"/>
			<Table chance="25">
				<Lookup chance="40" count="1" table="&trConsumables5;"/>
				<Lookup chance="40" count="1" table="&trMinorItem5;"/>
				<Lookup chance="20" count="1" table="&trMajorItem5;"/>
			</Table>
		</Items>
		
		<!-- Satellites -->

		<Satellites>
			<Orbitals distance="8" angle="45">
				<Station type="&stOutlawTurret;" imageVariant="2"/>
			</Orbitals>

			<Orbitals distance="8" angle="225">
				<Station type="&stOutlawTurret;" imageVariant="0"/>
			</Orbitals>
		</Satellites>

		<!-- Ships and Defenses -->
		
		<Ships>
			<Table>
				<Group chance="25">
					<Ship			count="2d6"	class="&scTenhoveSentinel;"	orders="patrol" patrolDist="5"/>
					<Lookup 	count="1d3"	 table="&tbOutlawBorerReinforcements;" /> 
					<Lookup 	count="1d3"	 table="&tbOutlawGuardReinforcements;" /> 
				</Group>
				<Group chance="40">
					<Lookup 	count="4"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d6"	 table="&tbOutlawGuardReinforcements;"/>
				</Group>
				<Group chance="35">
					<Lookup 	count="1d3+1"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d4"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
			</Table>
		</Ships>
		
		<!--SM&M++ Reinforcements-->
		
		<Reinforcements minships="4">
			<Table>
			
				<Group chance="50">
					<Lookup 	count="1d4" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d3" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
				<Group chance="50">
					<Lookup 	count="1d3" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d4" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
			</Table>
  
		</Reinforcements>

		<!-- Image and Effects -->
		
		<ImageVariants>
			<Image			imageID="&rsStations1;" imageX="512" imageY="0"   imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="128" imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="256" imageWidth="128" imageHeight="128"/>
		</ImageVariants>

		<DockingPorts
				portCount=		"8"
				portRadius=		"70"
				/>
		
	</StationType>

	<!-- Asteroid Mine, Pteracnium Ore -->

	<StationType UNID="&stAsteroidMinePteracnium;"
			name=				"outlaw pteracnium mine"
			sovereign=			"&svOutlawMiners;"
			inherit=			"&baOutlawMine;"
				 
			attributes=			"enemy, envEarth, envAvoidsAir, generic, human, outlawMiners, outlaws, populated, settlers"
				 
			abandonedScreen=	"&dsAbandonedStation;"
				 
			armorID=			"&itCeralloyArmor;"
			hitPoints=			"200"
			multiHull=			"true"
				 
			canAttack=			"true"
			explosionType=		"&vtBlastExplosion2;"
			ejectaType=			"&vtStoneAsteroidEjecta;"
			>

		<!-- Encounter Info -->
		
		<Names noArticle="true">Asteroid P%1%0%0%0</Names>

		<Encounter
				levelFrequency=		"----u uurrv ----- ----- -----"
				locationCriteria=	"++asteroids"
				enemyExclusionRadius="40"
				/>
		
		<Encounters frequency="uncommon">
			<Lookup table="&tbOutlawMinerEncounters;"/>
		</Encounters>
		
		<!-- Trade and Items -->
		
		<Items>
			<Item count="2d6"	item="&itPteracniumOre;"/>
			<Table chance="50">
				<Lookup chance="40" count="1" table="&trConsumables6;"/>
				<Lookup chance="40" count="1" table="&trMinorItem6;"/>
				<Lookup chance="20" count="1" table="&trMajorItem6;"/>
			</Table>
		</Items>
			
		<!-- Satellites -->
		
		<Satellites>
			<Orbitals distance="8" angle="45">
				<Station type="&stOutlawTurret;" imageVariant="2"/>
			</Orbitals>

			<Orbitals distance="8" angle="135">
				<Station type="&stOutlawTurret;" imageVariant="1"/>
			</Orbitals>

			<Orbitals distance="8" angle="225">
				<Station type="&stOutlawTurret;" imageVariant="0"/>
			</Orbitals>

			<Orbitals distance="8" angle="315">
				<Station type="&stOutlawTurret;" imageVariant="3"/>
			</Orbitals>
		</Satellites>

		<!-- Ships and Defenses -->
		
		<Ships>
			<Table>
				<Group chance="25">
					<Ship			count="1d2+4"	class="&scBorer-II;"	orders="guard"/>
					<Lookup 	count="1d2"	 table="&tbOutlawGuardReinforcements;" />
				</Group>
				<Group chance="40">
					<Lookup 	count="4"	 table="&tbOutlawBorerReinforcements;" /> 
					<Lookup 	count="1d6"	 table="&tbOutlawGuardReinforcements;" />
				</Group>
				<Group chance="35">
					<Ship			count="1d6"	class="&scOromo2;"	orders="patrol" patrolDist="5"/>
					<Lookup 	count="1d4+1"	 table="&tbOutlawBorerReinforcements;"/> 
					<Lookup 	count="1d2"	 table="&tbOutlawGuardReinforcements;"/> 
				</Group>
			</Table>
		</Ships>
		
		<!--SM&M++ Reinforcements-->
		
		<Reinforcements minships="4">
			<Table>
			
				<Group chance="50">
					<Lookup 	count="1d4" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d3" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
				<Group chance="50">
					<Lookup 	count="1d3" table="&tbOutlawBorerReinforcements;"/> 
					<Lookup		count="1d4" table="&tbOutlawGuardReinforcements;"/>  
				</Group>
				
			</Table>
  
		</Reinforcements>


		<!-- Image and Effects -->
		
		<ImageVariants>
			<Image			imageID="&rsStations1;" imageX="512" imageY="0"   imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="128" imageWidth="128" imageHeight="128"/>
			<Image			imageID="&rsStations1;" imageX="512" imageY="256" imageWidth="128" imageHeight="128"/>
		</ImageVariants>

		<DockingPorts
				portCount=		"8"
				portRadius=		"70"
				/>

	</StationType>
Your friendly local genderqueer weapons designer & forum moderator. My pronoun is "They".

User avatar
JohnBWatson
Fleet Officer
Fleet Officer
Posts: 1368
Joined: Tue Aug 19, 2014 10:17 pm

Fri Jul 14, 2017 5:52 am

If Outlaw Miners get a revamp, it should preserve factional uniqueness and try to get rid of cheap weaknesses. Right now, they've got turrets for close range encounters - they don't need anything else that's good up close but terrible at a distance. They're also rather poor by definition(otherwise they'd just purchase the necessary registration), and shouldn't be expected to have costly weapons on their escort ships.

Here's what I'm thinking for outlaw miners in midgame:

Ships

Guards

Occasionally replace the two combat focused gunships with an upgraded variant.

Oromo: Add an externally mounted Stiletto launcher. Good opportunity to make missile pods play by the same rules as external gun mounts, having them display and take damage accordingly. This gives them some better long distance coverage and emphasizes their role as fighters.

Sotho: Replace the shield with a class II deflector, the armor with advanced reactive, and the main weapon with an omnidirectionally mounted Slam Cannon. Optionally, add a cheap point defense system that fires fast, short ranged projectiles.

Hammerhead III: Occasionally spawn as escorts for wandering Borers, just like before. Equip them with Smartcannons, and reuse the Sapiens code to make them gate upon running out of ammo. Increase the speed slightly as well.

Borers

Equip all Borer IIs past a certain point with an 'advanced mining laser'. For the sake of differentiating it more solidly from the weaker version, have the new mining laser function as a capacitator weapon and give it a WMD value.

The interesting parts

Some new mechanics should be introduced to add flavor to the faction.

Reinforcements

Endlessly reinforcing besieged stations makes sense for martial factions that focus on holding territory and protecting trade routes, but not illegal miners. Instead, give each station a chance to call in a group of Hammerhead IIIs upon losing its first guard. This gives them the feeling of a faction that will fight to protect its investments, but also lets them cut their losses when it's the realistic thing for them to do.

Afterburners

Equip Oromos with afterburners that can temporarily boost their max speed. The code to do this is mostly already written, and can be found in the mod in my signature. Just replace instant teleportation with the mode - switch functionality we saw on the field generator, with the first mode being a standard engine and the second being a faster version of it that, after a period of time, reverts to the first mode and sets a cooldown variable. This helps them catch up to player ships that are starting to upgrade their speed, but leaves outrunning them as a viable option.

IEDs

Add a set of mines derived from the mining charges, and scatter them around outlaw miner stations in their later appearances. Add these mines to the station and Borer loot tables. NoFriendlyFire should be used here.

User avatar
Shrike
Fleet Admiral
Fleet Admiral
Posts: 2704
Joined: Mon Aug 17, 2009 4:27 am
Location: Scouting the borders of sanity (there's a lovely view of the abyss).

Fri Jul 14, 2017 6:13 am

Erm....I've spent several months tweaking the outlaws to keep their flavor and upgrade them. It would be nice, with respect, if my ideas got read before they are discounted.

First things first though, a proviso: I am seriously cold here and not in the best frame of mind, so this is going to be snarky. Don't take it personally: this is a bad day for me to be writing this stuff.

I do agree on endless reinforcements....but that's a separate issue. It is beyond the scope of this project. Adding it would also create more work down the line when/if changes to general respawns are handled.


Now I'm going to cover the rest. The outlaw miners are defensively focused. That is their thing. They are outlaws (and as such use similar stuff to the regular outlaw faction), who mine. They don't need special afterburners (which make no sense in this context) or mines (although I'd consider them using excavation pods in combat to be fair game for a later update. It's just too complicated for this round of changes). They primarily need upgraded ships and encounters to match the power curve. They also need tools that can actually mine ore at the levels at which they appear. That's my intention, rather than a complete reinvention (which is basically what you're proposing there). The purpose is to make it so that you're not fighting basic Hammerhead II's and Borer Is with military-grade nukes. It's an upgrade (and a continuation) using the existing mechanics, graphics and systems to bring the faction back up to how they used to perform...but using new tools to do it so we don't blow away low-levelled players.

Your proposal for the Hammerhead III also doesn't work: you're describing what's basically an Oromo but better. Making it a less powerful ship that has a better damage type might work, but I'm still iffy on the concept (which is why it's not statted up in my OP). I also question the advisability of putting an ammo weapon on a ship the size of a bathtub, but that's probably nitpicking.

There's also little benefit to spawning Borer IIs with levelled gear: there are several bugs that crop up when doing this, and it means you are stuck with the same hitpoints as a Borer II AND you can't see that it's not a normal Borer II until it wipes you out. The Borer III has greater defensive capabilities AND is immediately obvious if you run a targeting program on it.

I have tested these changes (albeit with additional alterations that aren't in here) and they by no means feature what you call "cheap weakness". Sure, you can kite from long range. But you can do that with anything, regardless of what special features are added. Thus, I ask, please help to refine the actual proposal rather than suggesting things that are massively harder to make workable.
Your friendly local genderqueer weapons designer & forum moderator. My pronoun is "They".

NMS
Militia Commander
Militia Commander
Posts: 400
Joined: Tue Mar 05, 2013 8:26 am

Fri Jul 14, 2017 8:19 am

Shrike, your proposal certainly looks like a good start. But I think it would still leave them underpowered a lot of the time due to being spread over 10 levels but with equipment only going up to level 5. Compress the curves down to levels 1-6 or so and I think it would be about right. And for station defenders you could take advantage of the new challenge rating system. Also, the improved borers are quite glass cannon-ish, with weapons 2 and 3 levels above their armor and shields. It probably makes sense for their lasers to be more effective than their defenses, but not by quite that much.

User avatar
Shrike
Fleet Admiral
Fleet Admiral
Posts: 2704
Joined: Mon Aug 17, 2009 4:27 am
Location: Scouting the borders of sanity (there's a lovely view of the abyss).

Fri Jul 14, 2017 9:31 am

NMS wrote:
Fri Jul 14, 2017 8:19 am
Shrike, your proposal certainly looks like a good start. But I think it would still leave them underpowered a lot of the time due to being spread over 10 levels but with equipment only going up to level 5. Compress the curves down to levels 1-6 or so and I think it would be about right. And for station defenders you could take advantage of the new challenge rating system. Also, the improved borers are quite glass cannon-ish, with weapons 2 and 3 levels above their armor and shields. It probably makes sense for their lasers to be more effective than their defenses, but not by quite that much.
Good points. I'll look at buffing the defenses on the Borer III (maybe the II as well though I quite like the way it's set up in vanilla), compressing the leveling (I'll probably go up to L6 or 7) and investigating the new system (this code predates it). I don't find it intuitive but if it simplifies things or makes for more effective respawns then I'm all for it. I'll edit the OP and track changes with update posts when I've got a round of changes ready.
Your friendly local genderqueer weapons designer & forum moderator. My pronoun is "They".

User avatar
JohnBWatson
Fleet Officer
Fleet Officer
Posts: 1368
Joined: Tue Aug 19, 2014 10:17 pm

Fri Jul 14, 2017 10:03 pm

Shrike wrote:
Fri Jul 14, 2017 6:13 am
I do agree on endless reinforcements....but that's a separate issue. It is beyond the scope of this project. Adding it would also create more work down the line when/if changes to general respawns are handled.
There's a misunderstanding there. I meant adding a script that takes note of its guards on creation and has a chance to call in a group of Hammerheads the first time one is destroyed. Most of the code could be reused from Syndikat Molotoks, just with guard orders instead of attack and a different function call to trigger it.

I agree that altering the general reinforcements code is both a cool idea and beyond the scope of a faction rework.

They don't need special afterburners (which make no sense in this context)


Temporary speed boosts are defensive in nature. They're more useful for driving off aggressors than assaulting a station or attacking a freighter. Oromos start to become obsolete when they can no longer keep up with the player, losing their ability to keep him close enough to use their weapons.

They fill a niche and they make an exploit less exploitable. They make perfect sense.
or mines (although I'd consider them using excavation pods in combat to be fair game for a later update. It's just too complicated for this round of changes).
Mines are definitely a bit complex, but they can still potentially be added. A modified Aurochs Minelayer script could handle this pretty well, and add flavor to the faction. I agree that we should wait for mods that implement similar things before adding them to the base game - this was just brainstorming.
Your proposal for the Hammerhead III also doesn't work: you're describing what's basically an Oromo but better. Making it a less powerful ship that has a better damage type might work, but I'm still iffy on the concept (which is why it's not statted up in my OP). I also question the advisability of putting an ammo weapon on a ship the size of a bathtub, but that's probably nitpicking.
The SC and Arbalest have about the same value. The Hammerhead has quite a bit less armor and no secondary weapon/engine, so it'd still be weaker than the Oromo. The size difference would definitely make things unintuitive if that difference weren't maintained.
There's also little benefit to spawning Borer IIs with levelled gear: there are several bugs that crop up when doing this, and it means you are stuck with the same hitpoints as a Borer II AND you can't see that it's not a normal Borer II until it wipes you out. The Borer III has greater defensive capabilities AND is immediately obvious if you run a targeting program on it.
Borers are cheap, specialized mining ships, and generally have escorts to cover defenses. It makes sense for their mining lasers to be chosen solely based on the available asteroids in the system(which can be approximated using levelled gear), as otherwise the OM would be wasting money. They'd either be maintaining mining ships that can't mine or spending extra fuel and capital on ships that burn too much HE3 to make up the cost in the ore they find.

Post Reply