Back to Index | Page generated: Nov 12, 2024, 11:02:04 PM |
from Expansion Manager's OXP list | from Expansion Manifest | |
---|---|---|
Description | New insurance rules gives you after ejection ship in basic configuration. All lost upgrades displays on F5 screen as damaged. You may restore lost upgrades immediately if system TL allows it or later in system with adequate TL. Insurance covers 50% of lost equipment price. | New insurance rules gives you after ejection ship in basic configuration. All lost upgrades displays on F5 screen as damaged. You may restore lost upgrades immediately if system TL allows it or later in system with adequate TL. Insurance covers 50% of lost equipment price. |
Identifier | oolite.oxp.stranger.HardEject | oolite.oxp.stranger.HardEject |
Title | Hard Eject | Hard Eject |
Category | Mechanics | Mechanics |
Author | stranger | stranger |
Version | 0.4.1 | 0.4.1 |
Tags | ejection, equipment, ship | ejection, equipment, ship |
Required Oolite Version | ||
Maximum Oolite Version | ||
Required Expansions | ||
Optional Expansions | ||
Conflict Expansions |
|
|
Information URL | http://aegidian.org/bb/viewtopic.php?f=4&t=19581 | n/a |
Download URL | https://wiki.alioth.net/img_auth.php/e/e1/HardEject.oxz | n/a |
License | CC-BY-NC-SA 3.0 | CC-BY-NC-SA 3.0 |
File Size | n/a | |
Upload date | 1610873492 |
Also read http://wiki.alioth.net/index.php/Hard%20Eject
Hard Eject OXP by Stranger This OXP is released under the Creative Commons Attribution - Non-Commercial - Share Alike 3.0 license. You are free to use and distribute this OXP on non-commercial basis. Rebundling of this OXP within another distribution is permitted as long as it is unchanged. Any mods/derivatives of this OXP must be distributed under another names. The license information (either as this file or merged into a larger one) must be included in the OXP. -------------------------------------------------------------- This OXP changes game mechanics by implementing more strong (and more realistic!) rules of ship insurance. By default ejection from ship in escape capsule leads only to loss of cargo (and escape capsule itself). New ship inherits all functional equipment from lost ship regardless of system TL - you get ship fully equipped with high tech gadgets anywhere in low tech systems! New insurance rules gives you ship in basic configuration. All lost upgrades displays on F5 screen as damaged. You may restore lost upgrades immediately if system TL allows it or later in system with adequate TL. In both cases insurance covers 50% of lost equipment price. Galactic hyperdrive remains in inventory to prevent trap in isolated systems. All standard lasers are removed from inventory and replaced with front pulse laser (or miner laser in case of miner scenario). All pylon mounted items (missiles, mines, extra fuel tanks, pylon mounted galactic hyperdrive pods etc) are removed without compensation. Extra items, gathered as awards in missions (cloaking device for example) are removed from inventory without compensation. List of extra items, removed from inventory without compensation: Military Jammer aka MASC'M Military Scanner Filtering Naval Cloaking Device Naval Energy Unit Shield Enhancers To achieve 50% insurance fee you must have CLEAR legal status and do not have ANY installed second-hand (salvaged) equipment! Enjoy! -------------------------------------------------------------- COMPATIBILITY ISSUES This OXP is not compatible with Ship Repurchase OXP (author phkb). This OXP is not compatible with Repair Bots (author Thargoid) or any such OXP, restoring damaged equipment in flight. ______________________________________________________________ Version history: 13.02.2019 - Version 0.4.1 Converted onto OXZ. 14.04.2018 - Version 0.4 In case of miner scenario ship remains mining laser in front port. manifest.plist added. 31.03.2018 - Version 0.3 Script rewritten to dynamically process additional OXP equipment. 03.12.2013 - Version 0.2. Script modified to prevent infinite loop in case of nonstandard pylon mounted equipment (obsolete, now I have better decision). Pylon mounted Galactic Drive pods removed from inventory without compensation. 22.11.2013 - Version 0.1. Initial release.
Path | |
---|---|
Scripts/hard_eject.js | "use strict"; this.name = "Hard Eject"; this.author = "Stranger"; this.copyright = "Creative Commons: attribution, non-commercial, sharealike with clauses - see readme.txt"; this.description = "Script for simulating payment for lost equipment after ejecting in escape capsule."; this.version = "0.4.1"; //this equipment remove in any case this.$equipment_remove = new Array( "EQ_CLOAKING_DEVICE", "EQ_MILITARY_JAMMER", "EQ_MILITARY_SCANNER_FILTER", "EQ_NAVAL_ENERGY_UNIT", "EQ_SHIELD_ENHANCER" ); this.shipLaunchedFromStation = function() { this.$escapeFlag = 0; // reset eject history } this.shipLaunchedEscapePod = function() { this.$escapeFlag = 1; // eject recorded } this.shipDockedWithStation = function() { if (this.$escapeFlag == 1) // eject detected { for (var i = 0; i < this.$equipment_remove.length; i++) { player.ship.removeEquipment(this.$equipment_remove[i]); } var shipRoleInfo = player.ship.shipClassName; if (shipRoleInfo.indexOf("Mining") != -1 || shipRoleInfo.indexOf("Bushmaster") != -1) { player.ship.forwardWeapon = "EQ_WEAPON_MINING_LASER"; // miner scenario } else { player.ship.forwardWeapon = "EQ_WEAPON_PULSE_LASER"; // generic scenario } player.ship.aftWeapon = "EQ_WEAPON_NONE"; player.ship.portWeapon = "EQ_WEAPON_NONE"; player.ship.starboardWeapon = "EQ_WEAPON_NONE"; player.ship.awardEquipment("EQ_MISSILE_REMOVAL"); var eqList = player.ship.equipment; // check player legal status AND unlicensed equipment if (player.bounty == 0 && (!missionVariables.anarchies_salvaged_equipment || missionVariables.anarchies_salvaged_equipment == 0)) { for (var i = 0; i < eqList.length; i++) { var eq = eqList[i]; // processing any remaining equipment with exception of Breakable Equipment AND Galactic Hyperdrive if (player.ship.equipmentStatus(eq.equipmentKey) == "EQUIPMENT_OK" && eq.equipmentKey.indexOf("EQ_BREAKABLE") < 0 && eq.equipmentKey != "EQ_GAL_DRIVE" && eq.damageProbability > 0) { player.ship.setEquipmentStatus(eq.equipmentKey, "EQUIPMENT_DAMAGED"); } } } else { for (var i = 0; i < eqList.length; i++) { var eq = eqList[i]; if (eq.equipmentKey.indexOf("EQ_BREAKABLE") < 0 && eq.equipmentKey != "EQ_GAL_DRIVE") { player.ship.removeEquipment(eq.equipmentKey); } } missionVariables.anarchies_salvaged_equipment = 0; // erase salvaged equipment history } } } |