Back to Index | Page generated: Nov 12, 2024, 11:02:04 PM |
from Expansion Manager's OXP list | from Expansion Manifest | |
---|---|---|
Description | Categorises ships according to three fields (size, tech, grade) and restricts/alters functionality of equipment accordingly. Press \"i\" for more information. - - - - - - - - - - Size Categories: Very Small; Small; Medium; Large; Huge Tech Categories: Archaic; Low; Standard; High; Cutting Edge Grade Categories: Service; Transit; Civilian; Military; Performance Size and Tech categories are fixed but grade may be changed via a re-fit at a suitably equipped shipyard. Each grade has a unique piece of equipment: Service - Heat Shielding; Transit - Large Cargo Bay; Civilian - Passenger Berths; Military - Military Shields; Performance - Engine Supercharger (+ 0.05 LM unless ship is performance grade by default). | Categorises ships according to three fields (size, tech, grade) and restricts/alters functionality of equipment accordingly. Press \"i\" for more information. - - - - - - - - - - Size Categories: Very Small; Small; Medium; Large; Huge Tech Categories: Archaic; Low; Standard; High; Cutting Edge Grade Categories: Service; Transit; Civilian; Military; Performance Size and Tech categories are fixed but grade may be changed via a re-fit at a suitably equipped shipyard. Each grade has a unique piece of equipment: Service - Heat Shielding; Transit - Large Cargo Bay; Civilian - Passenger Berths; Military - Military Shields; Performance - Engine Supercharger (+ 0.05 LM unless ship is performance grade by default). |
Identifier | oolite.oxp.redspear.equipment_by_ship_class | oolite.oxp.redspear.equipment_by_ship_class |
Title | Equipment by Ship Class | Equipment by Ship Class |
Category | Mechanics | Mechanics |
Author | Redspear | Redspear |
Version | 0.5 | 0.5 |
Tags | ||
Required Oolite Version | ||
Maximum Oolite Version | ||
Required Expansions | ||
Optional Expansions | ||
Conflict Expansions | ||
Information URL | http://aegidian.org/bb/viewtopic.php?f=4&t=16842 | n/a |
Download URL | https://wiki.alioth.net/img_auth.php/f/f9/Oolite.oxp.redspear.equipment_by_ship_class.oxz | n/a |
License | CC-BY-NC-SA 4.0 | CC-BY-NC-SA 4.0 |
File Size | n/a | |
Upload date | 1610873518 |
Also read http://wiki.alioth.net/index.php/Equipment%20by%20Ship%20Class
{\rtf1\ansi\ansicpg1252\deff0\deflang2057{\fonttbl{\f0\froman\fcharset0 Times New Roman;}{\f1\fswiss\fcharset0 Arial;}} {\*\generator Msftedit 5.41.21.2509;}\viewkind4\uc1\pard\sb100\sa100\f0\fs24 Equipment by Ship Class 0.5\par Author: Redspear\par Credits: Thanks to Norby, cim and Thargoid for troubleshooting, and to Zireael for inspiration.\par Licence: Creative Commons Attribution-Noncommercial-Share Alike 4.0 \par \par Version 0.5\par Fix to the Engine Supercharger - multiople issues were preventing it from wotking as desired.\par \par Version 0.4\par Expanded and simplified.\par Two new categories for each of the three criteria:\par \tab 1. Size (very small, small, medium, large and huge)\line\tab 2. Tech (archaic, low, standard, high and cutting edge)\line\tab 3. Grade (service, transit, civilian, military and performance)\par Each grade now has a piece of equipment that is unique to that grade (as large cargo bay was to service grade in previous versions).\par Removed multiple requirements for the same piece of equipment. Only one criteria now needs to be satisfied for any piece of equipment to be fitted.\par Non player ships can now be identified according to their ship grade e.g. Adder (service). Military grade vessels are likely to be tougher and performance grades are likely to be faster.\par \par Version 0.3\par Added a desription.plist file including inservice dates of vessels.\par Less strict availability of equipment.\par Other effects according to ship class.\par \tab Size:\tab max aft shield; extra cargo space; injector speed factor\par \tab Tech:\tab witchspace countdown; sun glare filter; maintenance costs\par \tab Grade:\tab injector burn rate; missile load time; fuel costs\par \par Version 0.2\par Credited Zireael.\par Some reclassifications of ships in anticipation of future additions.\par Adjusted extra cargo capacities for core ships.\par Included method for classifying oxp ships within the game.\par \par Description:\line\par WARNING: may alter saved files, especially of ships from other oxps - best to make a back-up file prior to any testing where you might wish to save.\par I've written a very simple oxp to address my own take on equipment allocation amongst the game's ships.\line\line This is a dependency based system rather than a cargo based one, and those dependencies rely largely upon new, possibly hidden (currently visible to illustate workings) pieces of equipment.\line\line Here's how it (hopefully) works...\line\line Each of the ships in the game is classified according to three criteria, largely based on their In Service dates and descriptions in the Elite manual:\line\line 1. Size (small, medium or large)\line 2. Tech (low, standard or high)\line 3. Grade (service, civilian or military)\line\line These three criteria are to be reflected in the ships standard equipment as non-breakable, non-visible items.\line\line For example, I've classed the Asp II as a medium, standard, military ship. As such, amongst its standard equipment would be:\line\line EQ_MEDIUM_HULL\line EQ_STANDARD_TECH\line EQ_MILITARY_GRADE\line\line So, this ship would be able to fit any equipment available to small and medium, low to standard tech ships, whether it be of service, civilian or military grade (subject to any cargo requirements).\line\line As this is essentially a list of restrictions built around debatable categorisations, it's likely to mean that some favoured combination is unavailable to some players (hey, this is oxp ;-) ) but I have introduced 3 (well, 2 1/2) new pieces of equipment to add some flexibility.\line\line Service Re-fit\line Civilian Re-fit\line Military Re-fit\line\line I'll try to illustrate how they work with two different ships: the Cobra III and the Anaconda.\line\line The Cobra III has been classed as a large, high-tech, civilian ship. As such, it could equip all sorts of things, but not (gasp!) a military laser... But all is not lost. This ship is high enough tech to have a military refit and then be able to use military grade equipment such as the laser. The cost (besides some credits and a lot of time in the shipyard) is that it could no longer have the service re-fit (effectively a new name for the large cargo bay). So, if you want a military spec cobra III, then that's fine, but there's no longer room for that large cargo bay. Only one type of re-fit would be allowed (need to write a script for that...)\line\line The anaconda however, has been classed as a large, standard, service craft. It does have the option of a civilian re-fit, which would enable the use of things like beam lasers and ECM, and so is likely a good investment. Having the civilian re-fit does not however, enable a military re-fit at a later date. Medium tech service craft can only be modified by so much (Ranthe et.al. this might not be for you, unless you tweak it of course...) That doesn't mean that military anacondas couldn't exist, it just means that you couldn't turn the standard model into one c.f. moray and medical moray.\line\line In terms of other oxp equipment, that should be largely unaffected by what is here, operating outside of, but not in conflict with, this oxp.\line\line The to do list includes classifications to be assigned to oxp ships: \line\line Hull size based on model volume\line Tech based on shipyard availabilty (min tech level)\line Grade based on the standard weapon equipped (none = service; pulse = civilian; beam = military)\line - large, standard, service\line Asp II 0 TC \line - medium, standard, military\line\line So it's not quite finished but it should be illustrative of what I have in mind.\line I'd be very interested to hear what people think of it.\par SHIP CLASSIFICATIONS:\line\line Adder 2 TC\line - small, standard, civilian\line Anaconda 200 TC \line - large, standard, service\line Asp II 0 TC \line - medium, standard, military\line Boa 125 TC \line - large, standard, civilian\line Boa Cruiser 150 TC \line - large, high, civilian\line Cobra I 10 TC \line - medium, standard, civilian\line Cobra III 20 TC \line - large, high, civilian\line Constrictor\line - medium, high, military\line Fer-de-Lance 12 TC \line - medium, high, civilian\line Gecko 3 TC \line - small, low, civilian\line Krait 10 TC \line - medium, standard, civilian\line Mamba 2 TC \line - small, high, civilian\line Moray 7 TC \line - medium, standard, civilian\line Orbital Shuttle 30 TC \line - medium, low, service\line Python 100 TC \line - large, low, civilian\line Sidewinder 0 TC \line - small, standard, military\line Transporter 10 TC \line - medium, low, service\line Viper 0 TC \line - small, low, military\line Viper Interceptor\line - small, high, military\line Worm 0 TC \line - small, high, service\line\line NEW EQUIPMENT:\line\line Service Refit\line - large cargo bay with size x5 (to do) extra cargo space\line\line Civilian Refit\line - may install civilian equipment\line\line Military Refit\line - may install military equipment\line\line EQUIPMENT CLASSIFICATIONS:\line\line Service\line - pulse, mining, scoops, dock comp, compass, berth, escape pod, gal drive, target enhance, nav array, civilian re-fit\line\line Civilian\line - beam, ecm, shield boosters, nav comp, gal drive, injectors, energy unit, hardened missile, multi target, cascade mine, wormhole scanner, mil re-fit,\line\line Military\line - mil laser, mil shields, target memory, integrated target,\line\line\line Low\line - lasers, dock compass, scoops, ecm, compass, berth, escape pod, heat shield, gal drive, target enhance, multi target, target memory, cascade mine, \line\line Standard\line - energy unit, nav array, injectors, shield boosters, target mem, mil shields, service re-fit (large cargo bay), mil re-fit, civilian re-fit,\line\line High\line - wormhole scanner, mil re-fit, integrated target, \par \line\line Small\line - ecm, dock compass, lasers, berth, injectors, target enhance, multi target, nav array, target memory, integrated target, cascade mine, civilian re-fit\line\line Medium\line - service re-fit (large cargo bay), scoops, escape pod, gal drive, mil re-fit, shield boosters,\line\line Large\line - mil shields, \par \line\line\line\line\par \pard\f1\fs20\par }
Path | |
---|---|
Scripts/shipclassequip-grade.js | this.name = "shipclassequip-grade"; this.author = "Redspear"; this.copyright = "2016 Redspear"; this.licence = "CC BY-NC-SA 4.0"; this.description = "Script to facilitate equipment availability by determining ship class"; this.version = "0.5"; "use strict"; // classify player ship type upon starting game and install base equipment if not already present. this.startUp = this.playerBoughtNewShip = function() { if (player.ship.equipmentStatus("EQ_SERVICE_GRADE") == "EQUIPMENT_OK") {player.ship.fuelChargeRate = 0.5; var thrustMod = 0.5;} else{ if (player.ship.equipmentStatus("EQ_TRANSIT_GRADE") == "EQUIPMENT_OK") {player.ship.fuelChargeRate = 1.0; var thrustMod = 1.0;} else{ if (player.ship.equipmentStatus("EQ_CIVILIAN_GRADE") == "EQUIPMENT_OK") {player.ship.fuelChargeRate = 1.0; var thrustMod = 1.0;} else{ if (player.ship.equipmentStatus("EQ_MILITARY_GRADE") == "EQUIPMENT_OK") {player.ship.fuelChargeRate = 1.5; var thrustMod = 1.5;} else{ if (player.ship.equipmentStatus("EQ_PERFORMANCE_GRADE") == "EQUIPMENT_OK" && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") {player.ship.fuelChargeRate = 2.0; //player.ship.maxSpeed += 50; var thrustMod = 2.0;} else{ if (player.ship.equipmentStatus("EQ_PERFORMANCE_GRADE") == "EQUIPMENT_OK" && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") != "EQUIPMENT_OK") {player.ship.fuelChargeRate = 2.0; var thrustMod = 2.0;} else{ if (player.ship.dataKey=="worm-player" || player.ship.dataKey=="adder-player" || player.ship.dataKey=="transporter-player" || player.ship.dataKey=="python-player" || player.ship.dataKey=="hognose-player" || player.ship.dataKey=="cobramk1-player" || player.ship.dataKey == "bug-player" || player.ship.dataKey == "bushmaster-player") {player.ship.awardEquipment("EQ_SERVICE_GRADE"); player.ship.fuelChargeRate = 0.5; var thrustMod = 0.5; } else{ if (player.ship.dataKey=="krait-player" || player.ship.dataKey=="monitor-player" || player.ship.dataKey=="anaconda-player" || player.ship.dataKey=="eagle-player" || player.ship.dataKey=="mamba-player" || player.ship.dataKey=="boa-player" || player.ship.dataKey == "ghavial-player" || player.ship.dataKey == "chameleon-player" || player.ship.dataKey == "puma-player" || player.ship.dataKey == "tiger-player" || player.ship.dataKey == "panther-player") {player.ship.awardEquipment("EQ_TRANSIT_GRADE"); player.ship.fuelChargeRate = 0.75; var thrustMod = 0.75; } else{ if (player.ship.dataKey=="gecko-player" || player.ship.dataKey=="ferdelance-player" || player.ship.dataKey=="mussurana-player" || player.ship.dataKey=="shuttle-player" || player.ship.dataKey=="gnat-player" || player.ship.dataKey=="imperial_explorer-player" || player.ship.dataKey == "cobramk2-player" || player.ship.dataKey == "salamander-player" || player.ship.dataKey == "ophidian-player") {player.ship.awardEquipment("EQ_CIVILIAN_GRADE"); player.ship.fuelChargeRate = 1.0; var thrustMod = 1.0; } else{ if (player.ship.dataKey=="asp-player" || player.ship.dataKey=="sidewinder-player" || player.ship.dataKey=="aspmk1-player" || player.ship.dataKey=="viper-player" || player.ship.dataKey=="imperial_courier-player" || player.ship.dataKey=="iguana-player" || player.ship.dataKey=="griffkrait-player" || player.ship.dataKey=="griffboa-player") {player.ship.awardEquipment("EQ_MILITARY_GRADE"); player.ship.fuelChargeRate = 1.5; var thrustMod = 1.5; } else{ if (player.ship.dataKey=="cobra3-player" || player.ship.dataKey=="python_cruiser-player" || player.ship.dataKey=="griffin-player" || player.ship.dataKey=="osprey-player" || player.ship.dataKey=="moray-player" || player.ship.dataKey=="viper-interceptor-player" || player.ship.dataKey=="imperial-trader-player" || player.ship.dataKey=="wolf-player" || player.ship.maxSpeed>400) {player.ship.awardEquipment("EQ_PERFORMANCE_GRADE"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.fuelChargeRate = 2.0; //player.ship.maxSpeed += 50; var thrustMod = 2.0; } //else{ //oxp ship grade based on cargo to missile capacity ratio // if (player.ship.maxSpeed>400) // {player.ship.awardEquipment("EQ_PERFORMANCE_GRADE"); // player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER"); // player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); // player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); // player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); // player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); // player.ship.fuelChargeRate = 2.0; // //player.ship.maxSpeed -= 50; // var thrustMod = 2.0; // } else{ if (player.ship.missileCapacity>(player.ship.cargoSpaceCapacity/4)) {player.ship.awardEquipment("EQ_MILITARY_GRADE"); player.ship.fuelChargeRate = 1.5; var thrustMod = 1.5; } else{ if (player.ship.missileCapacity>(player.ship.cargoSpaceCapacity/6)) {player.ship.awardEquipment("EQ_CIVILIAN_GRADE"); player.ship.fuelChargeRate = 1.0; var thrustMod = 1.0; } else{ if (player.ship.missileCapacity>(player.ship.cargoSpaceCapacity/8)) {player.ship.awardEquipment("EQ_TRANSIT_GRADE"); player.ship.fuelChargeRate = 0.75; var thrustMod = 0.75; } else{ player.ship.awardEquipment("EQ_SERVICE_GRADE"); player.ship.fuelChargeRate = 0.5; var thrustMod = 0.5; } } } } } } } } } } } } } } } //effects due to having engine supercharger installed/damaged this.equipmentRemoved = function(equipment) { if (equipment == "EQ_ENGINE_SUPERCHARGER") {player.ship.maxSpeed -= 50;} } this.equipmentAdded = function(equipment) { if (equipment == "EQ_ENGINE_SUPERCHARGER") {player.ship.maxSpeed += 50;} } //ship re-fit scripts this.equipmentAdded = function(equipment) { if (equipment === "EQ_SERVICE_RE-FIT")// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_CIVILIAN_GRADE"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_SERVICE_RE-FIT"); player.ship.awardEquipment("EQ_SERVICE_GRADE"); player.ship.awardEquipment("EQ_HEAT_SHIELD"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (0.5 /thrustMod); } if (equipment === "EQ_TRANSIT_RE-FIT")// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_CIVILIAN_GRADE"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_TRANSIT_RE-FIT"); player.ship.awardEquipment("EQ_TRANSIT_GRADE"); player.ship.awardEquipment("EQ_CARGO_BAY"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (0.75 /thrustMod); } if (equipment === "EQ_CIVILIAN_RE-FIT" && $berthNumber == 1)// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_CIVILIAN_RE-FIT"); player.ship.awardEquipment("EQ_CIVILIAN_GRADE"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (1 /thrustMod); var thrustMod = 1; } if (equipment === "EQ_CIVILIAN_RE-FIT" && $berthNumber == 2)// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_CIVILIAN_RE-FIT"); player.ship.awardEquipment("EQ_CIVILIAN_GRADE"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (1 /thrustMod); var thrustMod = 1; } if (equipment === "EQ_CIVILIAN_RE-FIT" && $berthNumber == 3)// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_CIVILIAN_RE-FIT"); player.ship.awardEquipment("EQ_CIVILIAN_GRADE"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (1 /thrustMod); var thrustMod = 1; } if (equipment === "EQ_CIVILIAN_RE-FIT" && $berthNumber == 5)// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_CIVILIAN_RE-FIT"); player.ship.awardEquipment("EQ_CIVILIAN_GRADE"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (1 /thrustMod); var thrustMod = 1; } if (equipmentAdded === "EQ_CIVILIAN_RE-FIT" && $berthNumber == 9)// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_CIVILIAN_RE-FIT"); player.ship.awardEquipment("EQ_CIVILIAN_GRADE"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); player.ship.awardEquipment("EQ_PASSENGER_BERTH"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (1 /thrustMod); var thrustMod = 1; } if (equipment === "EQ_MILITARY_RE-FIT")// && player.ship.equipmentStatus("EQ_ENGINE_SUPERCHARGER") == "EQUIPMENT_OK") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_CIVILIAN_GRADE"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PERFORMANCE_GRADE"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.removeEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.removeEquipment("EQ_MILITARY_RE-FIT"); player.ship.awardEquipment("EQ_MILITARY_GRADE"); player.ship.awardEquipment("EQ_NAVAL_SHIELD_BOOSTER"); //player.ship.maxSpeed -= 50; player.ship.maxThrust = player.ship.maxThrust * (1.5 /thrustMod); } if (equipment === "EQ_PERFORMANCE_RE-FIT") { player.ship.removeEquipment("EQ_SERVICE_GRADE"); player.ship.removeEquipment("EQ_HEAT_SHIELD"); player.ship.removeEquipment("EQ_TRANSIT_GRADE"); player.ship.removeEquipment("EQ_CARGO_BAY"); player.ship.removeEquipment("EQ_CIVILIAN_GRADE"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_PASSENGER_BERTH"); player.ship.removeEquipment("EQ_MILITARY_GRADE"); player.ship.removeEquipment("EQ_NAVAL_SHIELD_BOOSTER"); player.ship.removeEquipment("EQ_PERFORMANCE_RE-FIT"); player.ship.awardEquipment("EQ_PERFORMANCE_GRADE"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_A"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_B"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_C"); player.ship.awardEquipment("EQ_ENGINE_SUPERCHARGER_PLATE_D"); player.ship.maxThrust = player.ship.maxThrust * (2 /thrustMod); player.ship.maxSpeed += 50; } } |
Scripts/shipclassequip-hull.js | this.name = "shipclassequip-hull"; this.author = "Redspear"; this.copyright = "2016 Redspear"; this.licence = "CC BY-NC-SA 4.0"; this.description = "Script to facilitate equipment availability by determining ship class"; this.version = "0.5"; "use strict"; // classify player ship type upon starting game and install base equipment if not already present. this.startUp = this.playerBoughtNewShip = function() { // if (player.ship.equipmentStatus("EQ_VERY_SMALL_HULL") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_SMALL_HULL") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_MEDIUM_HULL") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_LARGE_HULL") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_HUGE_HULL") != "EQUIPMENT_UNAVAILABLE") // {return} // //else{ if (player.ship.dataKey=="adder-player" || player.ship.dataKey=="eagle-player" || player.ship.dataKey == "gnat-player" || player.ship.dataKey == "aspmk1-player" ||player.ship.dataKey == "sidewinder-player" || player.ship.dataKey == "gecko-player" || player.ship.dataKey == "viper-player" || player.ship.dataKey == "osprey-player" || player.ship.dataKey == "viper-interceptor-player" || player.ship.dataKey == "griffkrait-player") {player.ship.awardEquipment("EQ_VERY_SMALL_HULL"); player.ship.extraCargo = 5; $berthNumber = 1; player.ship.injectorSpeedFactor = 11; player.ship.maxAftShield = 96; player.ship.maxForwardShield = 96;} else{ if (player.ship.dataKey=="asp-player" || player.ship.dataKey=="krait-player" || player.ship.dataKey == "ferdelance-player" || player.ship.dataKey == "mamba-player" ||player.ship.dataKey == "cobramk1-player" || player.ship.dataKey == "hognose-player" || player.ship.dataKey == "moray-player" || player.ship.dataKey == "bug-player" || player.ship.dataKey == "cobramk2-player") {player.ship.awardEquipment("EQ_SMALL_HULL"); player.ship.extraCargo = 10; $berthNumber = 2; player.ship.injectorSpeedFactor = 9; player.ship.maxAftShield = 112; player.ship.maxForwardShield = 112;} else{ if (player.ship.dataKey=="cobra3-player" || player.ship.dataKey=="transporter-player" || player.ship.dataKey=="mussurana-player" || player.ship.dataKey=="shuttle-player" || player.ship.dataKey=="imperial_courier-player" || player.ship.dataKey == "griffin-player" || player.ship.dataKey == "iguana-player" || player.ship.dataKey == "bushmaster-player" || player.ship.dataKey == "salamander-player" || player.ship.dataKey == "wolf-player") {player.ship.awardEquipment("EQ_MEDIUM_HULL"); player.ship.extraCargo = 15; $berthNumber = 3; player.ship.injectorSpeedFactor = 7; player.ship.maxAftShield = 128; player.ship.maxForwardShield = 128;} else{ if (player.ship.dataKey=="monitor-player" || player.ship.dataKey=="python-player" || player.ship.dataKey=="boa-player" || player.ship.dataKey=="boa-mk2-player" || player.ship.dataKey=="ghavial-player" || player.ship.dataKey=="chameleon-player" || player.ship.dataKey=="imperial_explorer-player" || player.ship.dataKey=="tiger-player" || player.ship.dataKey=="imperial_trader-player" || player.ship.dataKey=="ophidian-player") {player.ship.awardEquipment("EQ_LARGE_HULL"); player.ship.extraCargo = 25; $berthNumber = 5; player.ship.injectorSpeedFactor = 5; player.ship.maxAftShield = 160; player.ship.maxForwardShield = 160;} else{ if (player.ship.dataKey=="anaconda-player" || player.ship.dataKey=="python_cruiser-player" || player.ship.dataKey=="puma-player" || player.ship.dataKey=="panther-player" || player.ship.dataKey=="griffboa-player") {player.ship.awardEquipment("EQ_HUGE_HULL"); player.ship.extraCargo = 40; $berthNumber = 9; player.ship.injectorSpeedFactor = 4; player.ship.maxAftShield = 192; player.ship.maxForwardShield = 192;} else{ //oxp ships hull size based on cargo capacity rather than mass (compatible with rescaling) if (player.ship.cargoSpaceCapacity>200) {player.ship.awardEquipment("EQ_HUGE_HULL"); player.ship.extraCargo = 40; player.ship.injectorSpeedFactor = 4; player.ship.maxAftShield = 192; player.ship.maxForwardShield = 192;} else{ if (player.ship.cargoSpaceCapacity>5) {player.ship.awardEquipment("EQ_LARGE_HULL"); player.ship.extraCargo = 25; player.ship.injectorSpeedFactor = 5; player.ship.maxAftShield = 160; player.ship.maxForwardShield = 160;} else{ if (player.ship.cargoSpaceCapacity>5) {player.ship.awardEquipment("EQ_MEDIUM_HULL"); player.ship.extraCargo = 15; player.ship.injectorSpeedFactor = 7; player.ship.maxAftShield = 128; player.ship.maxForwardShield = 128;} else{ if (player.ship.cargoSpaceCapacity>5 || player.ship.max_flight_speed>300) {player.ship.awardEquipment("EQ_SMALL_HULL"); player.ship.extraCargo = 10; player.ship.injectorSpeedFactor = 9; player.ship.maxAftShield = 112; player.ship.maxForwardShield = 112;} else{ {player.ship.awardEquipment("EQ_VERY_SMALL_HULL"); player.ship.extraCargo = 5; player.ship.injectorSpeedFactor = 11; player.ship.maxAftShield = 96; player.ship.maxForwardShield = 96;} } } } } } } } } } } //} |
Scripts/shipclassequip-tech.js | this.name = "shipclassequip-tech"; this.author = "Redspear"; this.copyright = "2016 Redspear"; this.licence = "CC BY-NC-SA 3.0"; this.description = "Script to facilitate equipment availability by determining ship class"; this.version = "0.5"; "use strict"; // classify player ship type upon starting game and install base equipment if not already present. this.startUp = this.playerBoughtNewShip = function() { // if (player.ship.equipmentStatus("EQ_ARCHAIC_TECH") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_LOW_TECH") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_STANDARD_TECH") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_HIGH_TECH") != "EQUIPMENT_UNAVAILABLE") || (player.ship.equipmentStatus("EQ_CUTTING_EDGE_TECH") != "EQUIPMENT_UNAVAILABLE") // {return} //else{ if (player.ship.dataKey=="lifter-player" || player.ship.dataKey=="gecko-player" || player.ship.dataKey=="aspmk1-player" || player.ship.dataKey == "bug-player" || player.ship.dataKey=="hognose-player" || player.ship.dataKey == "shuttle-player" || player.ship.dataKey == "transporter-player" || player.ship.dataKey == "python-player" || player.ship.dataKey == "monitor-player" || player.ship.dataKey == "monitor-player" || player.ship.dataKey == "python-cruiser-player") //&& (player.ship.equipmentStatus("EQ_STANDARD_TECH") === "EQUIPMENT_UNAVAILABLE") {player.ship.awardEquipment("EQ_ARCHAIC_TECH"); player.ship.sunGlareFilter = 0.0; player.ship.injectorBurnRate = 0.35; player.ship.renovationMultiplier = 0.25;} else{ if (player.ship.dataKey=="drakemk1-player" || player.ship.dataKey=="viper-player" || player.ship.dataKey=="gnat-player" || player.ship.dataKey == "asp-player" || player.ship.dataKey=="cobramk1-player" || player.ship.dataKey == "bushmaster-player" || player.ship.dataKey == "griffin-player" || player.ship.dataKey == "ophidian-player" || player.ship.dataKey == "ghavial-player" || player.ship.dataKey == "anaconda-player") //&& (player.ship.equipmentStatus("EQ_STANDARD_TECH") === "EQUIPMENT_UNAVAILABLE") {player.ship.awardEquipment("EQ_LOW_TECH"); player.ship.sunGlareFilter = 0.2; player.ship.injectorBurnRate = 0.3; player.ship.renovationMultiplier = 0.5;} else{ if (player.ship.dataKey=="worm-player" || player.ship.dataKey=="adder-player" || player.ship.dataKey=="sidewinder-player" || player.ship.dataKey == "krait-player" || player.ship.dataKey=="moray-player" || player.ship.dataKey=="morayMED-player" || player.ship.dataKey == "salamander-player" || player.ship.dataKey == "iguana-player" || player.ship.dataKey == "chameleon-player" || player.ship.dataKey == "boa-player" || player.ship.dataKey == "puma-player") //&& (player.ship.equipmentStatus("EQ_STANDARD_TECH") === "EQUIPMENT_UNAVAILABLE") {player.ship.awardEquipment("EQ_STANDARD_TECH"); player.ship.sunGlareFilter = 0.4; player.ship.injectorBurnRate = 0.25; player.ship.renovationMultiplier = 0.75;} else{ if (player.ship.dataKey=="drakemk2-player" || player.ship.dataKey=="eagle-player" || player.ship.dataKey=="osprey-player" || player.ship.dataKey=="mamba-player" || player.ship.dataKey=="cobramk2-player" || player.ship.dataKey=="cobra3-player" || player.ship.dataKey == "wolf-player" || player.ship.dataKey == "imperial_trader-player" || player.ship.dataKey == "imperial_explorer-player" || player.ship.dataKey == "panther-player") //&& (player.ship.equipmentStatus("EQ_HIGH_TECH") === "EQUIPMENT_UNAVAILABLE") {player.ship.awardEquipment("EQ_HIGH_TECH"); player.ship.sunGlareFilter = 0.6; player.ship.injectorBurnRate = 0.2; player.ship.renovationMultiplier = 1.0;} else{ if (player.ship.dataKey=="griffkrait-player" || player.ship.dataKey=="cat-player" || player.ship.dataKey=="constrictor-player" || player.ship.dataKey=="boa-mk2-player" || player.ship.dataKey=="ferdelance-player" || player.ship.dataKey=="mussurana-player" || player.ship.dataKey == "imperial_courier-player" || player.ship.dataKey == "tiger-player" || player.ship.dataKey == "griffboa-player") //&& (player.ship.equipmentStatus("EQ_HIGH_TECH") === "EQUIPMENT_UNAVAILABLE") {player.ship.awardEquipment("EQ_CUTTING_EDGE_TECH"); player.ship.sunGlareFilter = 0.8; player.ship.injectorBurnRate = 0.15; player.ship.renovationMultiplier = 1.5;} else{ //oxp ship tech based on recharge rate if (player.ship.energyRechargeRate>4) {player.ship.awardEquipment("EQ_CUTTING_EDGE_TECH"); player.ship.sunGlareFilter = 0.8; player.ship.injectorBurnRate = 0.15; player.ship.renovationMultiplier = 1.5;} else{ if (player.ship.energyRechargeRate>3) {player.ship.awardEquipment("EQ_HIGH_TECH"); player.ship.sunGlareFilter = 0.6; player.ship.injectorBurnRate = 0.2; player.ship.renovationMultiplier = 1.0;} else{ if (player.ship.energyRechargeRate>2) {player.ship.awardEquipment("EQ_STANDARD_TECH"); player.ship.sunGlareFilter = 0.4; player.ship.injectorBurnRate = 0.25; player.ship.renovationMultiplier = 0.75;} else{ if (player.ship.energyRechargeRate>1) {player.ship.awardEquipment("EQ_LOW_TECH"); player.ship.sunGlareFilter = 0.2; player.ship.injectorBurnRate = 0.3; player.ship.renovationMultiplier = 0.5;} else{ {player.ship.awardEquipment("EQ_ARCHAIC_TECH"); player.ship.sunGlareFilter = 0.0; player.ship.injectorBurnRate = 0.35; player.ship.renovationMultiplier = 0.25;} } } } } } } } } } } //} //effects due to having heat shielding and the advanced navigation array installed/damaged - heat shielding idea by spara this.equipmentDestroyed = this.equipmentDamaged = function(equipment) { if (equipment === "EQ_HEAT_SHIELD") {player.ship.sunGlareFilter -= 0.2;} //effects due to having fuel scoops installed/damaged if (equipment === "EQ_FUEL_SCOOPS") {player.ship.injectorBurnRate -= 0.05;} // if (equipment === "EQ_ADVANCED_NAVIGATIONAL_ARRAY") // player.ship.hyperspaceSpinTime += 5; } this.equipmentRepaired = this.equipmentAdded = function(equipment) { if (equipment === "EQ_HEAT_SHIELD") {player.ship.sunGlareFilter += 0.2;} if (equipment === "EQ_HEAT_SHIELD") {player.ship.injectorBurnRate += 0.05;} // if (equipment === "EQ_ADVANCED_NAVIGATIONAL_ARRAY") // player.ship.hyperspaceSpinTime -= 5; } |