Back to Index Page generated: Nov 12, 2024, 11:02:04 PM

Expansion New Lasers

Content

Warnings

  1. Unknown key 'upload_date' at https://wiki.alioth.net/img_auth.php/6/63/Oolite.oxp.redspear.new_lasers.oxz!manifest.plist

Manifest

from Expansion Manager's OXP list from Expansion Manifest
Description A simple mod to add several new lasers and laser colours to Oolite. Adds some of them to the core shipset as well as making them available to the player. Press \"i\" for more information. - - - - - - - - - - - - - - - - Combined with the core lasers, the options include: Red: Pulse lasers - budget Ingram (range) and Ergon (cool-running) models Orange: Defence lasers - slow heat up (yet reasonable fire-rate) Ingram MegaBlast (power) and Dual 22-18 (speed) models Brown: Variscan lasers - multi-purpose (including mining) Volt (power) and Hassoni (budget) models Yellow: Beam lasers - rapid-fire Ingram (range) and Ergon (cool-running) models Green: Burst lasers - dogfighting Hassoni-Kruger (budget) and ColtMaster (power) models Cyan: Cannon lasers - sniping Hassoni HiRad (power) and ColtMaster Starlaser (speed) Blue: Mining lasers - specialist Ingram (standard) and JK (power) models Magenta: Military lasers - combat versatility Lance & Ferman (range) and Ergon (cool-running) models Also includes an option for enabling some silly/over-powered lasers: Pulse laser: the Frontier-Newton Yr1993 PlasmaCharger. Much like a standard pulse laser except that it kills things. Colour: thargoid green. Defence laser: the Williams PewPew 1982 ('R'-type model). Make laser overheating a thing of the past (along with careful aiming) with this medium fire-rate laser. Colour: rose (whatever that is). VariScan laser: ZeusCorp's Thunderbolt will smash up pretty much anything into little bits. Not the fastest fire rate but it 'packs a wallop'. Colour: white/yellow. Beam laser: the Lucas NegForce (SithField) Generator fires a stream of intense, awe-inspiring energy at the target over medium range. According to some, the awe wears off after several uses. Colour: pink. Burst laser: the QVC Ubertron 4000 can be yours for a bargain price with this one-time limited edition special offer. Make other pilots regret 'looking at you funny' with just a second or two of trigger action. Satisfaction guaranteed... Not recommended for the short tempered. Colour: white. Laser Cannon: the mysterious DeXM-trope DoomLens is hard to find but extremely formidable. Aim, fire, kill; only the first one is difficult. This will suck energy like nobodies business. Colour: black (of course). Mining laser: the Anderson ITC 'Belter' Sp.(1999) hits with such a hard radioactive blast that it's amazing any of the rock survives. Can be used under duress to do similar to ships. Exhibits a strange technology ahead of its years. Colour: azure (I'm struggling here). Military Laser: introducing the RimmerAce Quadcooled ImpasseResolver. Yes, it's four times 'cooler' than any other military laser and is also the four times winner of the 'shiniest barrel' award. It just oozes class (in a leak-free, non-radiation hazard sense of course). Colour: blue/green. A simple mod to add several new lasers and laser colours to Oolite. Adds some of them to the core shipset as well as making them available to the player. Press \"i\" for more information. - - - - - - - - - - - - - - - - Combined with the core lasers, the options include: Red: Pulse lasers - budget Ingram (range) and Ergon (cool-running) models Orange: Defence lasers - slow heat up (yet reasonable fire-rate) Ingram MegaBlast (power) and Dual 22-18 (speed) models Brown: Variscan lasers - multi-purpose (including mining) Volt (power) and Hassoni (budget) models Yellow: Beam lasers - rapid-fire Ingram (range) and Ergon (cool-running) models Green: Burst lasers - dogfighting Hassoni-Kruger (budget) and ColtMaster (power) models Cyan: Cannon lasers - sniping Hassoni HiRad (power) and ColtMaster Starlaser (speed) Blue: Mining lasers - specialist Ingram (standard) and JK (power) models Magenta: Military lasers - combat versatility Lance & Ferman (range) and Ergon (cool-running) models Also includes an option for enabling some silly/over-powered lasers: Pulse laser: the Frontier-Newton Yr1993 PlasmaCharger. Much like a standard pulse laser except that it kills things. Colour: thargoid green. Defence laser: the Williams PewPew 1982 ('R'-type model). Make laser overheating a thing of the past (along with careful aiming) with this medium fire-rate laser. Colour: rose (whatever that is). VariScan laser: ZeusCorp's Thunderbolt will smash up pretty much anything into little bits. Not the fastest fire rate but it 'packs a wallop'. Colour: white/yellow. Beam laser: the Lucas NegForce (SithField) Generator fires a stream of intense, awe-inspiring energy at the target over medium range. According to some, the awe wears off after several uses. Colour: pink. Burst laser: the QVC Ubertron 4000 can be yours for a bargain price with this one-time limited edition special offer. Make other pilots regret 'looking at you funny' with just a second or two of trigger action. Satisfaction guaranteed... Not recommended for the short tempered. Colour: white. Laser Cannon: the mysterious DeXM-trope DoomLens is hard to find but extremely formidable. Aim, fire, kill; only the first one is difficult. This will suck energy like nobodies business. Colour: black (of course). Mining laser: the Anderson ITC 'Belter' Sp.(1999) hits with such a hard radioactive blast that it's amazing any of the rock survives. Can be used under duress to do similar to ships. Exhibits a strange technology ahead of its years. Colour: azure (I'm struggling here). Military Laser: introducing the RimmerAce Quadcooled ImpasseResolver. Yes, it's four times 'cooler' than any other military laser and is also the four times winner of the 'shiniest barrel' award. It just oozes class (in a leak-free, non-radiation hazard sense of course). Colour: blue/green.
Identifier oolite.oxp.redspear.new_lasers oolite.oxp.redspear.new_lasers
Title New Lasers New Lasers
Category Weapons Weapons
Author Redspear Redspear
Version 0.7 0.7
Tags Lasers Lasers
Required Oolite Version
Maximum Oolite Version
Required Expansions
Optional Expansions
Conflict Expansions
Information URL http://aegidian.org/bb/viewtopic.php?f=4&t=16931 n/a
Download URL https://wiki.alioth.net/img_auth.php/6/63/Oolite.oxp.redspear.new_lasers.oxz n/a
License CC-BY-NC-SA 4.0 CC-BY-NC-SA 4.0
File Size n/a
Upload date 1610873315

Documentation

Also read http://wiki.alioth.net/index.php/New%20Lasers

ReadMe.txt

New Lasers.oxp v0.7

Author: Redspear
License: CC BY-NC-SA 4.0
Credits: Draws inspiration from the Elite 'Space Traders Flight Training Manual' written by Rob Holdstock for the 1984 Acornsoft publication of BBC Elite.
phkb for contributions to v0.6 (listed below).

Requirements:

This is a stand-alone expansion pack designed to work with the 1.82 release of Oolite.

Description:

This oxp adds new laser choices for the player and also to some of the non-player ships.

Laser names were almost entirely drawn from the Elite manual (credited above), assigned various colours and profiles and designed to fit within the extremes of the standard pulse and military lasers.

Release History:

v0.1 	Added 3 new lasers:
	- HiRad (more versatile mining laser, cyan colour)
 	- MegaBlast (police pulse laser, orange colour)
	- Burst (rapid fire, quick overheat, green colour)
	
v0.2	Added another 6 lasers and assigned them to various ships:
	- Ergon (pulse, beam and military, assigned to Boas, Fer-de-Lance, Krait and Mamba)
	- VariScan (2 types of pulse laser, brown colour, assigned to Cobra MkI and Python)
	- Assault (short range, high power military laser, purple colour, unassigned)
	Assigned the previously released lasers to ships:
	- HiRad (Anaconda)
	- MegaBlast (Viper, although I chose not to replace the police laser colour as yet)
	- Burst (Asp MkII, tweaked to look slightly less like the thargoid laser)

v0.3 	Added 3 more lasers:
	- Starlaser (long range but not quite continuous fire)
	- JK laser (low range and power mining laser)
	- Dual 20-18 (closer to beam than pulse)
	Assigned lasers to the Sidewinder (Dual) and pirate variants of core ships.
	Edited shipyard-overrides to allow more characteristic ship sale options.
	Changer Viper's laser colour to orange.
	Tweaked some laser colours to make each one recognisable.
	Removed mining property from HiRad laser and gave to VariScan models.
	Various other adjustments.

v0.4	Added 8 new 'uber'/silly weapons that require activation via equipping an 'UBER' laser coupler.
	Assorted tweaks to some of the other lasers.

v0.5	Tweaked many of the 'uber' lasers to make them a little less impressive.
	Restricted availabilty of many lasers to certain systems.

// interim version by phkb
v0.6    Fixed a couple of small issues with the condition script
	Added compatibility for Laser Mount Switching System (LMSS)
	
v0.7	Included fixes by phkb and added compatibility with the following oxps:
	Xenon HUD
	Equipment by Ship Class
	
Feedback welcomed on this thread: http://aegidian.org/bb/viewtopic.php?f=4&t=16931

Hope you like it :-)

Equipment

Name Visible Cost [deci-credits] Tech-Level
Unrestricted Beam Emission Regulator(UBER) no 0 4+
Stabilised MegaForce Usage Gear(SMUG) no 0 4+
Anderson ITC 'Belter' Sp.(1999) yes 70000 9+
ColtMaster CM4 Assault Laser yes 100000 9+
Ingram M1928A2 Beam Laser yes 10000 5+
Ingram 1867GC1 MegaBlast Defence Laser yes 6000 6+
Hassoni-Kruger HK1-GCW Burst Laser yes 20000 8+
DeXM-trope 'DoomLens' yes 80000 9+
Dual 22-18 Defence Lasers yes 9000 6+
Ergon A19 Beam Laser yes 12000 6+
Ergon A28 Military Laser yes 70000 12+
Ergon A17 Pulse Laser yes 4200 5+
Frontier-Newton Yr1993 'PlasmaCharger' yes 8000 5+
Hassoni HiRad Bolt Laser yes 40000 9+
Hassoni VariScan Laser yes 9500 4+
JK-1 Pulse Laser yes 12000 7+
Lucas ILM 'NegForce(SithField) Generator' yes 17000 7+
Lance & Ferman LF90 Military Laser yes 60000 11+
Kruger Model ARM64 Sp. Mining Laser yes 8000 11+
Ingram 1919A4 Pulse Laser yes 4000 4+
QVC 'Ubertron 4000' yes 20000 8+
RimmerAce Quadcooled 'ImpasseResolver' yes 12000 9+
ColtMaster CM2 Starlaser (Bolt Laser) yes 25000 7+
Volt VariScan Laser yes 15000 5+
Williams PewPew 1982 ('R'-type model) yes 12000 7+
ZeusCorp 'Thunderbolt' yes 19000 6+

Ships

This expansion declares no ships. This may be related to warnings.

Models

This expansion declares no models. This may be related to warnings.

Scripts

Path
Scripts/new_lasers.js
this.name        = "new_lasers";
this.author      = "Redspear";
this.copyright   = "2016 Redspear";
this.licence     = "CC BY-NC-SA 4.0";
this.description = "compatibility with Xenon HUD crosshairs";
this.version     = "0.7";

"use strict";

this.startUpComplete = function()
{
// incorporating Xenon HUD crosshair options
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_EPULSE_LASER", filename:"xenon_crosshairs_pulse.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_BLAST_LASER", filename:"xenon_crosshairs_other.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_DUAL_LASER", filename:"xenon_crosshairs_other.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_HVARISCAN_LASER", filename:"xenon_crosshairs_alt5.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_VARISCAN_LASER", filename:"xenon_crosshairs_alt5.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_EBEAM_LASER", filename:"xenon_crosshairs_beam.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_BURST_LASER", filename:"xenon_crosshairs_alt4.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_ASSAULT_LASER", filename:"xenon_crosshairs_alt4.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_HIRAD_LASER", filename:"xenon_crosshairs_alt3.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_STAR_LASER", filename:"xenon_crosshairs_alt3.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_JKMINING_LASER", filename:"xenon_crosshairs_mining.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_EMILITARY_LASER", filename:"xenon_crosshairs_military.png"});
	// "U.B.E.R." Lasers
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_FRONTIER_LASER", filename:"xenon_crosshairs_alt1.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_WILLIAMS_LASER", filename:"xenon_crosshairs_alt2.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_ZEUSCORP_LASER", filename:"xenon_crosshairs_alt5.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_LUCAS_LASER", filename:"xenon_crosshairs_none.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_QVC_LASER", filename:"xenon_crosshairs_alt4.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_DEXM_LASER", filename:"xenon_crosshairs_alt3.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_ANDERSON_LASER", filename:"xenon_crosshairs_mining.png"});
	var xh = worldScripts.XenonHUD;
	xh.$customCrosshairs({laser:"EQ_WEAPON_RIMMERACE_LASER", filename:"xenon_crosshairs_military.png"});
}	
Scripts/new_lasers_conditions.js
this.name        = "new_lasers_conditions";
this.author      = "Redspear";
this.copyright   = "2016 Redspear";
this.licence     = "CC BY-NC-SA 4.0";
this.description = "conditions for lasers being offered";
this.version     = "0.7";

// stops clogging up the F3 screen by only offering some lasers at any given place.
// distribution is predictable but that may not be obvious at first.

"use strict";

this.allowAwardEquipment = function(equipment, ship, context) // **changed by phkb - credit and thanks to him.
{
	// for compatibility with Laser Mount Switching System (LMSS)
	var lmss = worldScripts.LMSS_Core; // ** added
	if (lmss && lmss._switching == true) return true; // ** added
 
	
	if (equipment == "EQ_WEAPON_EPULSE_LASER")
	{
		var pat = /bird/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Bird worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_DUAL_LASER")
	{
		var pat = /feline/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Feline worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_HVARISCAN_LASER")
	{
		var pat = /frog/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Frog worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_VARISCAN_LASER")
	{
		var pat = /lobster/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Lobster worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_EBEAM_LASER")
	{
		var pat = /bird/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Bird worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_BURST_LASER")
	{
		var pat = /humanoid/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Humanoid worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_ASSAULT_LASER")
	{
		var pat = /insect/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Insect worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_HIRAD_LASER")
	{
		var pat = /frog/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Frog worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_STAR_LASER")
	{
		var pat = /insect/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Insect worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_MINING_LASER")
	{
		var pat = /colonial/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Human worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_JKMINING_LASER")
	{
		var pat = /rodent/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Rodent worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_MILITARY_LASER")
	{
		var pat = /colonial/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Human worlds only
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_EMILITARY_LASER")
	{
		var pat = /bird/i;
		if (system.info.inhabitants.match(pat)) {
			return true; // Bird worlds only
		} else {
			return false;
		}
	}

	//'Uber' weapons...

	if (equipment == "EQ_WEAPON_FRONTIER_LASER")
	{
		var pat = /zero-g/i;
		if (system.info.description.match(pat)) {
			return true; // Frontier... Newtonian... Zero-G...
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_WILLIAMS_LASER")
	{
		var pat = /war/i;
		if (system.info.description.match(pat)) {
			return true; // Williams... Defender... Scrolling Shooter...
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_ZEUSCORP_LASER")
	{
		var pat = /poet/i;
		if (system.info.description.match(pat)) {
			return true; // Zeus... Legends... Poets... (bit obscure, I grant you)
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_LUCAS_LASER")
	{
		var pat = /graduate/i;
		if (system.info.description.match(pat)) {
			return true; // George... Film School... Arts Graduate...
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_QVC_LASER")
	{
		var pat = /food blenders/i;
		if (system.info.description.match(pat)) {
			return true; // QVC... Shopping Channel... Household goods...
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_DEXM_LASER")
	{
		var pat = /volcano/i;
		if (system.info.description.match(pat)) {
			return true; // Doom... Mt.Doom... Volcano...
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_ANDERSON_LASER")
	{
		var pat = /earthquake/i; // ** changed - spelling mistake corrected by phkb (thanks!)
		if (system.info.description.match(pat)) {
			return true; // Space 1999... Questionable seismic effects on moon... Earthquakes...
		} else {
			return false;
		}
	}

	if (equipment == "EQ_WEAPON_RIMMERACE_LASER")
	{
		var pat = /exciting sit coms/i;
		if (system.info.description.match(pat)) {
			return true; // Ace Rimmer... Red Dwarf... Sci-fi sit-com...
		} else {
			return false;
		}
	}

	// remainder from oolite-conditions.js

		// OXP hook to allow stations to forbid specific equipment
	if (context == "purchase" && player.ship.dockedStation && player.ship.dockedStation.scriptInfo["oolite-barred-equipment"])
	{
		if (player.ship.dockedStation.scriptInfo["oolite-barred-equipment"].indexOf(equipment) != -1)
		{
			return false;
		}
	}

	// OXP hook to allow ships to forbid specific "available to all" equipment
	if (ship.scriptInfo && ship.scriptInfo["oolite-barred-equipment"] && ship.scriptInfo["oolite-barred-equipment"].indexOf(equipment) != -1)
	{
		return false;
	}

	// otherwise allowed
	return true;
}