Ship Configuration
By phkb

Thanks to Redspear, Norby, Devium, Venator Dha, Day, Ngalo, Astrobe, tsoj, DataPacRat and yangoip for their excellent suggestions and testing reports.
Special thanks to Capt Murphy for his excellent set of Breakable equipment OXP's, the logic for some of which I have incorporated in this OXP.
Also thanks go to Thargoid for his IronHide armour code, which I've borrowed code from, as well as CommonSenseOTB's Custom Shields.

Overview
========
This OXP aims to make the process of configuring your ship more deliberate. Instead of just adding more and more equipment without any implications, equipment will now use space, and the total weight of all equipment and cargo will have a bearing on performance. Decisions can now be made about how to best configure your ship for the role you want to play. If you want to configure your ship for trading, do you sacrifice engine performance or energy for cargo space? If you want to be a bounty hunter, what equipment do you swap out to make room for better shields, or do you change down to a beam laser to lighten the ship? Almost all equipment (including OXP equipment items) have space and weight considerations, and it is up to you to work out the best balance for the role you want to take.

Heat also plays a more important role in gameplay. Firing your lasers continually will slowly heat up your ship, as will using your injectors, using the cloaking device, and being hit with a laser blast when your shields are down. Care needs to be taken so that your ship doesn't overheat. For instance, attempting to run away from an enemy ship on full injectors will heat up your ship to the point where you will begin to take damage.

Important Note for New Players
==============================
When you first load a saved game with this OXP installed, the calculated space for your installed equipment may require cargo space allocation. In this situation, any cargo in your hold may be removed. If the cargo needs to be removed to make way for equipment, it will be sold and the credits refunded to you.

Equipment Space and Cargo Space
===============================
Each ship has a standard amount of equipment space available to it, with a maximum of 40t in the largest ships. Once that space is filled, some cargo space can be re-allocated as equipment space. In ships with small cargo holds (less than 10t) all the cargo space can be reallocated as equipment space. For larger vessels, up to 75% of their cargo hold can be allocated, to a maximum of 40t. The process of allocating cargo space to equipment space is automatic - when you install a piece of equipment that exceeds the standard equipment space, cargo space will automatically be allocated. The following table provides details on how much equipment space is available:

                    Standard    Reallocated
                    Equipment   Cargo
Ship type           Space       Space       Total
-------------------------------------------------
Adder               15t         2t          17t
Anaconda            40t         40t         80t
Asp Mark II         30t         0t          30t
Boa                 30t         40t         70t
Boa Class Cruiser   35t         40t         75t
Cobra Mark I        15t         10t         25t
Cobra Mark III+     20t         15t         35t
Cobra Mark III*     20t         26t         46t
Fer-de-Lance        20t         12t         32t
Gecko               15t         3t          18t
Krait               15t         2t          17t
Mamba               15t         4t          19t
Moray Star Boat     15t         7t          22t
Moray Medical Boat* 15t         11t         26t
Python              24t         40t         64t
Orbital Shuttle     15t         22t         37t
Sidewinder          15t         0t          15t
Transporter         15t         12t         27t
Worm                15t         5t          20t

+ Note: without cargo bay extension installed
* Note: with cargo bay extension installed.

The "Ship Comparison" OXP will display the equipment space and convertible cargo space values for most ships in the game.

Ship Configuration Screen
=========================
To make changes to the configuration of your ship, go to the F3 Equip Ship screen and select the "Ship Configuration" item from the list.

At the top of the screen are a number of values which will change as you make configuration choices via the menus:

Cash                        This is your current credit balance
Equipment space             The first number is the total amount of equipment space currently in use.
                            The amount in brackets is the total amount of equipment space currently available on the ship.
Cargo space allocation      The first number is the amount of cargo space currently being partitioned for equipment use.
                            The amount in brackets is how much of the cargo hold can be partitioned for equipment use.
Total equipment weight      This is the total weight of all installed equipment items plus cargo.
Bus overload chance			This is the chance of encountering a bus overload situation with your current equipment loadout.

Thrust                      This is the estimated maximum thrust your ship can achieve based on the current weight profile of your ship.
                            The number in brackets is the standard thrust value for this ship as declared by the manufacturer.
Speed                       This is the estimated maximum speed your ship can achieve based on the current weight profile of your ship.
                            The number in brackets is the standard maximum speed value for this ship as declared by the manufacturer.
Pitch                       This is the estimated maximum pitch value your ship can achieve based on the current weight profile of your ship.
                            The number in brackets is the standard pitch value for this ship as declared by the manufacturer.
Roll                        This is the estimated maximum roll value your ship can achieve based on the current weight profile of your ship.
                            The number in brackets is the standard roll value for this ship as declared by the manufacturer.

As you make changes to various parts of your ship the values at the top of the screen will change to reflect the estimated performance.

The configuration of your ship is divided up into 13 main areas: Engines, Hyperdrive, Thrusters, Boosters, Energy Banks, Shields (forward and aft), Fuel Injection, Heat Shields, Armour (forward and aft) and Electrical. The electrical system comprises of the main electrical bus, plus couplings for engines, hyperdrive, thrusters, boosters, energy banks, and forward and aft shields. Weapons are still installed via the F3 Equip Ship interfaces, but as you will see, your weapon choices will have a bearing on the performance of your ship.

Items in the list colored orange can be installed.
Items in the list colored green are the ones currently installed. The negative value in the "Cost" column indicates the refund you will receive when this item is swapped out for another.
Items in the list colored red are the ones currently installed, but are damaged. You should get this item repaired as soon as possible. You will only get 50% of the cost of the item if you replace it.
Items in the list colored light grey can be installed, but are above the class level of the electrical coupling currently installed for that subsystem. There would be a risk of bus overload by installing this item.
Items in the list colored dark grey can be installed only when the electrical coupling for that subsystem is upgraded.

Please note that you must have sufficient credit to purchase a new item before any refund for existing equipment can be applied. The purchase happens before the refund, so you need to have enough credit for the purchase.

Note that some configurations are not possible at some stations. The techlevel for each configuration item is noted below.

Engines
-------
Your engines control how fast your ship flies in normal space. Your level of thrust and maximum speed are dependant on your engines. When damaged, your thrust and speed will be reduced.

Your engines are linked to the fuel injector system - if your engines are damaged, your fuel injectors will not function.

There are 42 different classes of engine:
    Class 1A    -20% thrust, -7% speed below manufacturers specs, but only uses 1t of space, weighs 1t. (TL1)
    Class 1B    -30% thrust, -3% speed below manufacturers specs, but only uses 1t of space, weighs 1t. (TL1)
    Class 1C    -10% thrust, -10% speed below manufacturers specs, but only uses 1t of space, weighs 1t. (TL1)
    Class 1D    -20% thrust, -7% speed below manufacturers specs, but only uses 0.5t of space, weighs 1t. (TL3)
    Class 1E    -30% thrust, -3% speed below manufacturers specs, but only uses 0.5t of space, weighs 1t. (TL3)
    Class 1F    -10% thrust, -10% speed below manufacturers specs, but only uses 0.5t of space, weighs 1t. (TL3)
    Class 2A    Standard factory-fitted engines, achieves published levels of speed and thrust, uses 2t of space, weighs 2t. (TL1)
    Class 2B    -10% thrust, +4% speed over manufacturers specs, uses 2t of space, weighs 2t. (TL1)
    Class 2C    +10% thrust, -4% speed on manufacturers specs, uses 2t of space, weighs 2t. (TL1)
    Class 2D    Standard levels of speed and thrust, uses 1t of space, weighs 1.5t. (TL5)
    Class 2E    -10% thrust, +4% speed over manufacturers specs, uses 1t of space, weighs 1.5t. (TL5)
    Class 2F    +10% thrust, -4% speed on manufacturers specs, uses 1t of space, weighs 1.5t. (TL5)
    Class 3A    Standard levels of thrust, +7% speed over manufacturers specs, uses 3t of space, weighs 3t. (TL4)
    Class 3B    -10% thrust, +12% speed over manufacturers specs, uses 3t of space, weighs 3t. (TL4)
    Class 3C    +10% thrust, +3% speed over manufacturers specs, uses 3t of space, weighs 3t. (TL4)
    Class 3D    Standard levels of thrust, +7% speed over manufacturers specs, uses 1.5t of space, weighs 2t. (TL6)
    Class 3E    -10% thrust, +12% speed over manufacturers specs, uses 1.5t of space, weighs 2t. (TL6)
    Class 3F    +10% thrust, +3% speed over manufacturers specs, uses 1.5t of space, weighs 2t. (TL6)
    Class 4A    +20% thrust, +10% speed over manufacturers specs, uses 4t of space, weighs 3.5t. (TL5)
    Class 4B    +10% thrust, +15% speed over manufacturers specs, uses 4t of space, weighs 3.5t. (TL5)
    Class 4C    +30% thrust, +5% speed over manufacturers specs, uses 4t of space, weighs 3.5t. (TL5)
    Class 4D    +20% thrust, +10% speed over manufacturers specs, uses 2t of space, weighs 3t. (TL8)
    Class 4E    +10% thrust, +15% speed over manufacturers specs, uses 2t of space, weighs 3t. (TL8)
    Class 4F    +30% thrust, +5% speed over manufacturers specs, uses 2t of space, weighs 3t. (TL8)
    Class 5A    +20% thrust, +15% speed over manufacturers specs, uses 6t of space, weighs 4t. (TL6)
    Class 5B    +10% thrust, +20% speed over manufacturers specs, uses 6t of space, weighs 4t. (TL6)
    Class 5C    +30% thrust, +10% speed over manufacturers specs, uses 6t of space, weighs 4t. (TL6)
    Class 5D    +20% thrust, +15% speed over manufacturers specs, uses 3t of space, weighs 3.5t. (TL10)
    Class 5E    +10% thrust, +20% speed over manufacturers specs, uses 3t of space, weighs 3.5t. (TL10)
    Class 5F    +30% thrust, +10% speed over manufacturers specs, uses 3t of space, weighs 3.5t. (TL10)
    Class 6A    +40% thrust, +20% speed over manufacturers specs, uses 8t of space, weighs 5t. (TL7)
    Class 6B    +30% thrust, +25% speed over manufacturers specs, uses 8t of space, weighs 5t. (TL7)
    Class 6C    +50% thrust, +15% speed over manufacturers specs, uses 8t of space, weighs 5t. (TL7)
    Class 6D    +40% thrust, +20% speed over manufacturers specs, uses 4t of space, weighs 4t. (TL12)
    Class 6E    +30% thrust, +25% speed over manufacturers specs, uses 4t of space, weighs 4t. (TL12)
    Class 6F    +50% thrust, +15% speed over manufacturers specs, uses 4t of space, weighs 4t. (TL12)
    Class 7A    +40% thrust, +30% speed over manufacturers specs, uses 10t of space, weighs 6t. (TL9)
    Class 7B    +30% thrust, +35% speed over manufacturers specs, uses 10t of space, weighs 6t. (TL9)
    Class 7C    +50% thrust, +25% speed over manufacturers specs, uses 10t of space, weighs 6t. (TL9)
    Class 7D    +40% thrust, +30% speed over manufacturers specs, uses 5t of space, weighs 5t. (TL14)
    Class 7E    +30% thrust, +35% speed over manufacturers specs, uses 5t of space, weighs 5t. (TL14)
    Class 7F    +50% thrust, +25% speed over manufacturers specs, uses 5t of space, weighs 5t. (TL14)

Engines of class D, E and F will also contribute to cabin heat.

Hyperdrive
----------
Hyperdrives control your ability to jump to other systems. When damaged the hyperdrive might start leaking fuel, or it may fail to engage, or if it does engage it might cause a mis-jump.

There are 4 different classes of hyperdrive:
    Class 1    Takes only 1t of space, but takes 30 seconds to initiate a jump. (TL1)
    Class 2    Standard issue hyperdrive. Takes 2t of space, and takes 15 seconds to jump. (TL1)
    Class 3    Takes 5t of space, and takes 10 seconds to jump. (TL7)
    Class 4    Takes 8t of space, but only takes 5 seconds to jump. (TL13)

Thrusters
---------
Your thrusters control your manoeuvrability, how fast your ship can pitch and roll. When damaged, your pitch and roll rates will be reduced.

There are 37 different classes of thrusters:
    Class 1     -5% pitch, -3% roll below manufacturers specs, but uses no space and only weighs 1t. (TL1)
    Class 2A    Standard factory-fitted thrusters, uses 1t of space, weighs 2t. (TL1)
    Class 2B    +2% pitch, -2% roll on manufacturers specs, uses 1t of space, weighs 2t. (TL1)
    Class 2C    -2% pitch, +2% roll on manufacturers specs, uses 1t of space, weighs 2t. (TL1)
    Class 2D    Standard factory-fitted thrusters, uses 0.5t of space, weighs 1t. (TL3)
    Class 2E    +2% pitch, -2% roll on manufacturers specs, uses 0.5t of space, weighs 1t. (TL3)
    Class 2F    -2% pitch, +2% roll on manufacturers specs, uses 0.5t of space, weighs 1t. (TL3)
    Class 3A    +5% pitch, +5% roll over manufacturers specs, uses 2t of space, weighs 3t. (TL5)
    Class 3B    +7% pitch, +3% roll over manufacturers specs, uses 2t of space, weighs 3t. (TL5)
    Class 3C    +3% pitch, +7% roll over manufacturers specs, uses 2t of space, weighs 3t. (TL5)
    Class 3D    +5% pitch, +5% roll over manufacturers specs, uses 1t of space, weighs 2t. (TL7)
    Class 3E    +7% pitch, +3% roll over manufacturers specs, uses 1t of space, weighs 2t. (TL7)
    Class 3F    +3% pitch, +7% roll over manufacturers specs, uses 1t of space, weighs 2t. (TL7)
    Class 4A    +8% pitch, +8% roll over manufacturers specs, uses 3t of space, weighs 3.5t. (TL7)
    Class 4B    +10% pitch, +6% roll over manufacturers specs, uses 3t of space, weighs 3.5t. (TL7)
    Class 4C    +6% pitch, +10% roll over manufacturers specs, uses 3t of space, weighs 3.5t. (TL7)
    Class 4D    +8% pitch, +8% roll over manufacturers specs, uses 1.5t of space, weighs 2.5t. (TL9)
    Class 4E    +10% pitch, +6% roll over manufacturers specs, uses 1.5t of space, weighs 2.5t. (TL9)
    Class 4F    +6% pitch, +10% roll over manufacturers specs, uses 1.5t of space, weighs 2.5t. (TL9)
    Class 5A    +12% pitch, +12% roll over manufacturers specs, uses 4t of space, weighs 4t. (TL8)
    Class 5B    +14% pitch, +10% roll over manufacturers specs, uses 4t of space, weighs 4t. (TL8)
    Class 5C    +10% pitch, +14% roll over manufacturers specs, uses 4t of space, weighs 4t. (TL8)
    Class 5D    +12% pitch, +12% roll over manufacturers specs, uses 2t of space, weighs 3t. (TL10)
    Class 5E    +14% pitch, +10% roll over manufacturers specs, uses 2t of space, weighs 3t. (TL10)
    Class 5F    +10% pitch, +14% roll over manufacturers specs, uses 2t of space, weighs 3t. (TL10)
    Class 6A    +18% pitch, +18% roll over manufacturers specs, uses 6t of space, weighs 4.5t. (TL9)
    Class 6B    +20% pitch, +16% roll over manufacturers specs, uses 6t of space, weighs 4.5t. (TL9)
    Class 6C    +16% pitch, +20% roll over manufacturers specs, uses 6t of space, weighs 4.5t. (TL9)
    Class 6D    +18% pitch, +18% roll over manufacturers specs, uses 3t of space, weighs 3.5t. (TL12)
    Class 6E    +20% pitch, +16% roll over manufacturers specs, uses 3t of space, weighs 3.5t. (TL12)
    Class 6F    +16% pitch, +20% roll over manufacturers specs, uses 3t of space, weighs 3.5t. (TL12)
    Class 7A    +24% pitch, +24% roll over manufacturers specs, uses 8t of space, weighs 5t. (TL11)
    Class 7B    +26% pitch, +22% roll over manufacturers specs, uses 8t of space, weighs 5t. (TL11)
    Class 7C    +22% pitch, +26% roll over manufacturers specs, uses 8t of space, weighs 5t. (TL11)
    Class 7D    +24% pitch, +24% roll over manufacturers specs, uses 4t of space, weighs 4t. (TL14)
    Class 7E    +26% pitch, +22% roll over manufacturers specs, uses 4t of space, weighs 4t. (TL14)
    Class 7F    +22% pitch, +26% roll over manufacturers specs, uses 4t of space, weighs 4t. (TL14)

Thrusters of class D, E and F will also contribute to cabin heat.

Boosters
--------
Boosters provide a performance increase to both your engines and thrusters. The downside is that you risk overheating your ship if you run over a certain percentage of your maximum speed. For instance, if you have Class 2 boosters installed, which build up heat from 93% of your throttle, then running your engines at more than 93% of their maximum speed will result in your cabin temperature rising. A warning tone will sound and a console message will be displayed when your reach this point during acceleration. When damaged any increase to engine or thruster performance will be lost.

Boosters are only available from hi-tech worlds, and their cost is considerable.

There are 7 different classes of boosters:
	Class 1		+3% to speed, roll and pitch, uses 1t of space, heat buildup from 97% of throttle. (TL9)
	Class 2		+6% to speed, roll and pitch, uses 2t of space, heat buildup from 93% of throttle. (TL10)
	Class 3		+9% to speed, roll and pitch, uses 3t of space, heat buildup from 90% of throttle. (TL11)
	Class 4		+12% to speed, roll and pitch, uses 4t of space, heat buildup from 87% of throttle. (TL12)
	Class 5		+15% to speed, roll and pitch, uses 5t of space, heat buildup from 83% of throttle. (TL13)
	Class 6		+18% to speed, roll and pitch, uses 6t of space, heat buildup from 80% of throttle. (TL14)
	Class 7		+20% to speed, roll and pitch, uses 7t of space, heat buildup from 77% of throttle. (TL15)

Energy Banks
------------
Your ship uses energy to fire lasers, operate the ECM system, and powers a number of other systems on your ship. When your energy falls to zero and your ship is hit by an unshielded laser or missile, your ship will be destroyed. More energy means the ability to absorb more damage before destruction. If your energy banks are damaged, items like the naval energy unit and the extra energy unit (both of which control how fast your energy banks are recharged) will not function. When your energy banks are damaged they will begin to drain until you have only emergency reserves remaining. You should dock immediately for repairs.

Because energy banks are just additional energy storage compartments, and there are few complications with the technology, they can be installed and repaired at any station.

You can install up to 25 energy banks in your ship, if you have space. Standard class energy banks take up 1t of space per bank, and weight 1t per bank.

Class "A" energy banks are available at TL13 stations or higher, for around double the cost of their standard class cousins. These energy banks utilise high-yield components to reduce the space required for each energy bank by half. That is, if a Class 9 energy bank uses 9t of space, a Class 9A energy bank will only use 4.5. The units will have the same weight, however.

Also, cabin heat will be increased when using Class "A" energy banks.

It is not possible to "mix-and-match" energy banks. You cannot have 1 set of class 4 energy banks, and another set of class 4A energy banks. They must all be of one type.

The "Extra Energy Unit" equipment item increases the rate at which your energy banks recharge. It uses 3t of space.
The "Naval Energy Unit" equipment item also increases the rate at which your energy banks recharge. It uses 5t of space.

Shields (Forward and Aft)
-------------------------
Shields absorb energy from lasers and missiles. Without shields lasers and missiles can damage and cripple your ship. Stronger shields means you can deflect more attacks, but stronger shields take more space. If your shields are damaged, the shield booster or military shield enhancement will not function, and the benefits they supply (stronger shields that recharge faster) will be lost. If your shield is damaged, the energy will drain away until there is no shield strength at all.

However, you may decide to forgo the protection shields provide and remove them entirely. THIS IS NOT RECOMMENDED! GalCop advises all pilots to install shields as part of their standard setup. If you have either of the shield boosting equipment items installed, you will not be able to remove your shields. If you decide to remove your shields it is highly recommended that some form of armour is installed to compensate.

Apart from the option of removing your shields entirely, there are 5 different classes of shields:
    Class 1    Takes 64 points off the standard level of shields, but also reduces space to just 1t. (TL1)
    Class 2    Standard, factory-fitted shields, uses 2t of space. (TL1)
    Class 3    Adds 64 points to standard level of shields, uses 3t of space. (TL6)
    Class 4    Adds 128 points to standard level of shields, uses 4t of space. (TL9)
    Class 5    Adds 192 points to standard level of shields, uses 5t of space. (TL12)

The "Shield Booster" equipment item adds 128 points to the shield strength. It uses 4t of space.
The "Military Shield Enhancement" equipment item adds a further 128 points to the shields, and increases the rate at which they recharge. It uses 6t of space.

Note that while the "Shield Booster" and "Military Shield Enhancement" have a cumulative effect (that is, if both are installed the total increase to the shields is 256 points), the various shield classes provide a single increase.

Fuel Injection
--------------
Fuel injection systems dump unused Quirium fuel into your engines, giving you a massive boost in speed. If your engines are damaged any fuel injection system will not function.

There are 4 different classes of fuel injection systems:
    Class 1    Burns 50% more fuel per second, and only provides half the speed boost of standard Class 2 injectors. Uses 0.5t of space. (TL5)
    Class 2    Achieves manufacturers declared specifications with regard to fuel burn rate and speed boost. Uses 1t of space. (TL11)
    Class 3    Burns 40% less fuel per second, and gives a 20% speed improvement over standard Class 2 injectors. Uses 2t of space. (TL12)
    Class 4    Burns 60% less fuel per second, and gives a 40% speed improvement over standard Class 2 injectors. But uses 4t of space. (TL13)

Fuel Scoops
-----------
Fuel scoops give pilots a means of replenishing their fuel supply by scooping fuel gasses from the corona of the sun. Each fuel scoop contains an 'accumulator'. The fuel scoop accumulator is the storage area inside the scoop where gasses are held prior to being converted into fuel. The larger the accumulator, the faster fuel is scooped.

There are 4 classes of fuel scoop available, each one having a different accumulator size:
    Class 1     0.10 ly accumulator. Weighs 2t. This is the standard type of fuel scoop. (TL6)
    Class 2     0.15 ly accumulator. Weigh6 4t. (TL7)
    Class 3     0.20 ly accumulator. Weighs 6t. (TL9)
    Class 4     0.25 ly accumulator. Weight 8t. (TL11)

Heat Shields
------------
Heat shielding protects your ship when flying close to the sun when skimming fuel. Without shielding your ship will heat up quickly and equipment and cargo can be damaged. Heat shielding will keep your ship cooler for longer, allowing you to easily skim fuel without needing to retreat to a safe distance too often. If your heat shield is damaged your ship will be unprotected from the heat of the sun.

There are 4 different classes of heat shielding, none of which provide any protection from laser or missile attacks, but all of which add weight to your ship.
    Class 1    Adds 0.5 points to the ships base level of protection, but only adds 1t of weight. (TL3)
    Class 2    Adds 1.0 point to the ships base level of protection. This is the general standard level of heat shielding. Adds 3t of weight. (TL5)
    Class 3    Adds 1.5 points to the ships base level of protection. Adds 6t of weight. (TL8)
    Class 4    Adds 2.0 points to the ships base level of protection. Adds 9t of weight. (TL11)
    Class 5    Adds 2.5 points to the ships base level of protection. Adds 12t of weight. (TL12)
    Class 6    Adds 3.0 points to the ships base level of protection. Adds 16t of weight. (TL13)

Note: If your ship comes equipped with manufacturer-fitted heat insulation above the industry standard level of 1.0, then installing additional heat shielding will effectively increase your total value. For instance, if your ship comes with a standard level of 3, and you install class 4 heat shields, your effective heat insulation rating is 5.

Armour (Forward and Aft)
------------------------
Adding armour to your ship can help protect the sensitive equipment contained within when your shields have fallen. Armour can be added to either the front or aft sections of your ship, and you can install different classes of armour in each section.

In total, there are 7 classes of armour you can add to your ship, each with difference weight, strength and damage points.
    Class 1    Lightweight carbon-polymer coating. Armour strength of 100, damage point 85%. Weighs only 2t. (TL3)
    Class 2    Lightweight aluminium plating. Armour strength 125, damage point 80%. Weighs 7t. (TL5)
    Class 3    Polycarbonate casing. Armour strength 150, damage point 75%. Weighs 15t. (TL6)
    Class 4    Composite material. Armour strength 175, damage point 70%. Weighs 25t. (TL8)
    Class 5    Plasteel plating. Armour strength 200, damage point 60%. Weighs 40t. (TL9)
    Class 6    Durasteel plating. Armour strength 300, damage point 50%. Weighs 52t. (TL11)
    Class 7    Titanium plating. Armour strength 400, damage point 40%. Weighs 70t. (TL13)

The strength of the armour defines how well the armour will stand up to attack. When lasers strike unshielded armour, the strength value defines how much of the armour will be depleted. Higher strength values will mean less armour is removed.

The damage point of the armour is the point at which damage to internal components will potentially start to occur. A rating of 85% means that the armour can withstand 15% of damage with no chance that damage will be passed on to equipment. When damage falls below 85%, the chance that equipment will be damaged increases.

Electrical
----------
The electrical subsystem of your ship consists of a main electrical bus, onto which each secondary system connects via a coupling. There are 7 classes of main bus, and different classes of coupling for each secondary system.

High class level electrical buses are expensive and weigh a considerable amount. Most ships come equipped with at least class 2 electrical buses as standard.

Electrical bus items cannot be damaged. If inappropriate couplings and buses are used and bus overload occurs, damage is instead passed through to any equipment using the bus.

Fuel injectors are powered through the main engine, the engine's power coupling applies to the fuel injectors.
Heat shields are not powered, so do not require a coupling to the electrical system.

There are 7 different classes of main electrical bus:
    Class 1    Can service class 1 couplings. No additional space requirements, and weighs only 1t. (TL1)
    Class 2    Can service up to class 2 couplings. No additional space requirements, weighs 4t. (TL1)
    Class 3    Can service up to class 3 couplings. Uses 2t of space, weighs 7t. (TL5)
    Class 4    Can service up to class 4 couplings. Uses 4t of space, weighs 12t. (TL7)
    Class 5    Can service up to class 5 couplings. Uses 6t of space, weighs 17t. (TL9)
    Class 6    Can service up to class 6 couplings. Uses 8t of space, weighs 23t. (TL11)
    Class 7    Can service up to class 7/8 couplings. Uses 10t of space, weighs 30t. (TL13)

Engine Power Couplings:
    Class 1    Can service class 1 engines. Weighs 0.1t. (TL1)
    Class 2    Can service up to class 2 engines. Weighs 0.2t. (TL1)
    Class 3    Can service up to class 3 engines. Weighs 0.3t. (TL4)
    Class 4    Can service up to class 4 engines. Weighs 0.4t. (TL5)
    Class 5    Can service up to class 5 engines. Weighs 0.5t. (TL6)
    Class 6    Can service up to class 6 engines. Weighs 0.6t. (TL7)
    Class 7    Can service up to class 7 engines. Weighs 0.7t. (TL9)

Hyperdrive Power Couplings:
    Class 1    Can service class 1 hyperdrives. Weighs 0.1t. (TL1)
    Class 2    Can service up to class 2 hyperdrives. Weighs 0.2t. (TL1)
    Class 3    Can service up to class 3 hyperdrives. Weighs 0.3t. (TL7)
    Class 4    Can service up to class 4 hyperdrives. Weighs 0.4t. (TL12)

Thruster Power Couplings:
    Class 1    Can service class 1 thrusters. Weighs 0.1t. (TL1)
    Class 2    Can service up to class 2 thrusters. Weighs 0.2t. (TL1)
    Class 3    Can service up to class 3 thrusters. Weighs 0.3t. (TL5)
    Class 4    Can service up to class 4 thrusters. Weighs 0.4t. (TL7)
    Class 5    Can service up to class 5 thrusters. Weighs 0.5t. (TL8)
    Class 6    Can service up to class 6 thrusters. Weighs 0.6t. (TL9)
    Class 7    Can service up to class 7 thrusters. Weighs 0.7t. (TL11)

Booster Power Couplings:
    Class 1    Can service class 1 boosters. Weighs 0.1t. (TL1)
    Class 2    Can service up to class 2 boosters. Weighs 0.2t. (TL1)
    Class 3    Can service up to class 3 boosters. Weighs 0.3t. (TL5)
    Class 4    Can service up to class 4 boosters. Weighs 0.4t. (TL7)
    Class 5    Can service up to class 5 boosters. Weighs 0.5t. (TL8)
    Class 6    Can service up to class 6 boosters. Weighs 0.6t. (TL9)
    Class 7    Can service up to class 7 boosters. Weighs 0.7t. (TL11)

Energy Bank Power Couplings:
    Class 1    Can service up to class 4 energy banks. Weighs 0.1t. (TL1)
    Class 2    Can service up to class 7 energy banks. Weighs 0.2t. (TL1)
    Class 3    Can service up to class 10 energy banks. Weighs 0.3t. (TL1)
    Class 4    Can service up to class 13 energy banks. Weighs 0.4t. (TL1)
    Class 5    Can service up to class 16 energy banks. Weighs 0.5t. (TL1)
    Class 6    Can service up to class 19 energy banks. Weighs 0.6t. (TL1)
    Class 7    Can service up to class 22 energy banks. Weighs 0.7t. (TL1)
    Class 8    Can service up to class 25 energy banks. Weighs 0.8t. (TL1)

Forward/Aft Shield Power Couplings:
    Class 1    Can service class 1 shields. Weighs 0.1t. (TL1)
    Class 2    Can service up to class 2 shields. Weighs 0.2t. (TL1)
    Class 3    Can service up to class 3 shields. Weighs 0.3t. (TL6)
    Class 4    Can service up to class 4 shields. Weighs 0.4t. (TL9)
    Class 5    Can service up to class 5 shields. Weighs 0.5t. (TL12)

Bus Overload
------------
You can install equipment at +1 class level over the level of the coupling, which in turn can be +1 class level over your main bus. However, running equipment over the coupling or bus class levels runs the risk of energy damage being passed through to equipment, even with full shield strength. If a bus overload occurs, damage can be passed on to *any* equipment item, not just the core systems.

Equipment Space Extensions
--------------------------
In high-tech worlds you can purchase an equipment space extension that does not use cargo space. This involves some reconfiguration of existing equipment racks to allow the extension to be fitted. Only small-to-medium-sized ships can have these extensions fitted, and while more than one can be fitted, there is a maximum allowance of two extensions in any ship.

The extensions come in the following sizes:
	1t			Adds 3t of weight (TL11)
	2t			Adds 5t of weight (TL12)
	5t			Adds 10t of weight (TL13)

Note: Because equipment extensions result in a more tightly arranged configuration of your equipment, there will be a noticeable increase in cabin temperature when these items are installed.

Selling Equipment
=================
An interface has been provided where all equipment that takes space or weight can be sold and removed from your ship. Only equipment items that do not have dependant items can be sold (eg. you can't sell the Extra Energy Unit if you have the Naval Energy Unit installed, you can't sell a passenger berth if you have a passenger inside it). Selling equipment can reduce the equipment space required as well as reducing weight profile of your ship. The sale price of equipment is 85% of the original price.

Storing Equipment and Cargo
===========================
As an alternative to selling the equipment, every main station has a self-storage facility into which your excess equipment can be transferred. If you choose to store equipment, an F4 interface screen, "Storage facility management", will be available that will show you all the equipment you have stored at this station or any other station. Equipment stored in the current station can be either sold or reinstalled. Equipment stored in other stations can be sold or transferred to the current station, after paying a transfer fee, but depending on the length of the trip and the number of dangerous systems the transfer ship must take to reach the current system, you may end up losing the equipment.

Most cargo can also be stored in the facilities, and transferred between them. After selecting "Storage facility management", you will have an option to move cargo from your hold into the facility.

Note: Storage facilities are only available at the main station in each system. If you dock at any other station the F4 interface screen will instead read "Storage facility information" and will provide details of what equipment and cargo you have in storage at the main station.

Note: It is not possible to store upgrades to engines, thrusters, boosters, hyperdrive, shields, or any electrical equipment. Storage of these items is prohibited by station authorities due to safety considerations, as some untrained and unskilled pilots have taken it upon themselves to reinstall their equipment outside of station oversight with unfortunate results.

Note: Slaves, firearms and narcotics cannot be stored in any facility, by GalCop law.

Current Equipment List
======================
This option lists all items installed in your ship that have either a space or weight requirement on your ship. The list is ordered with the largest items at the top, so you can always see what equipment is taking up the most space.

Equipment Specifications
========================
A new interface is now available on the F4 screen, entitled "View equipment specifications". This interface screen lists all possible equipment items available to the player, and the tech level, space and weight requirements of each item. Note, however, these items may or may not be available for purchase at your station, or indeed even in the system. These items are purely available somewhere in the galaxy, and the list explains what you can expect in terms of space and weight.

The following table lists all the standard equipment and the space/weight requirements for each:

Equipment Item               Space   Weight
-------------------------------------------
Standard Missile             0.0t    0.1t
ECM-hardened Missile         0.0t    0.3t
Quirium Cascade Mine         0.0t    0.2t
Pulse Laser                  0.0t    1.0t
Beam Laser                   0.0t    2.0t
Mining Laser                 0.0t    1.5t
Military Laser               0.0t    3.0t
E.C.M. System                1.0t    1.0t
Large Cargo Bay              0.0t    5.0t
Fuel Scoops                  0.0t    2.0t
Escape Pod                   0.0t    1.0t
Extra Energy Unit            3.0t    3.0t
Naval Energy Unit            5.0t    5.0t
Docking Computer             1.0t    1.0t
Galactic Hyperdrive          1.0t    1.0t
Cloaking Device              1.0t    1.0t
Advanced Space Compass       0.0t    1.0t
Wormhole Scanner             0.0t    1.0t
Shield Boosters              4.0t    4.0t
Military Shield Enhancement  6.0t    6.0t

Any standard equipment item not in this list will have zero space and weight requirements.

Most OXP equipment has been categorised individually. If an item is not recognised by the system, it will assume a value of 1t of space, and 1t of weight. The spreadsheet file provided with the game package, "EquipmentSpecifications.ods" (OpenDocument format) contains a list of all known OXP equipment item keys and related space/weight requirements, as well as a list of all equipment keys that are considered to have no space/weight factor at all.

Cabin Temperature and Heat Sinks
================================
A number of different activities and events will now impact on cabin temperature. These are:
	- Use of your hyperdrive
	- Laser temperature
	- Use of fuel injectors
	- Use of cloaking device
	- Laser hits on an unshielded hull
	- Running your ship with an overloaded electrical bus
	- Installing equipment extensions

Each of these things on their own probably won't cook your ship, but if you combine two or three of them at the same time you can expect to see your cabin temperature reach dangerous levels quickly.

Therefore care must be taken to (a) select appropriate lasers, engines and thrusters for the roles you want to perform, and (b) be careful how you use your lasers, fuel injectors and the cloaking device to avoid overheating your cabin and potentially causing catastrophic damage to your ship.

Note: Entering hyperspace with high levels of heat increases your chance of having a misjump.

To help with controlling cabin temperature, heat sinks can be purchased at all tech level 2 systems and above. You can purchase several heat sinks, but each one takes up 1t of cargo space, and adds 2t of weight.

To deploy a heat sink, first prime the "Heat Sink Control" item by using the Shift-N key sequence, then press "N" to activate it. Up to approximately 40% of your cabin temperature can be jettisoned in this way, dependant on the size of your ship. For larger ships this value will be closer to 10%.

You can also set the heat sink control to automatically deploy heat sinks whenever your cabin temperature reaches 75% of maximum. To do this, prime the "Heat Sink Control" and then select "B" to change the mode from "Manual control" to "Automatic control".

Heat sinks can be damaged, and cannot be used when in a damaged state.

Heat Shields also help with cabin heat. Higher levels of heat shield will slow the rate at which cabin temperature builds up.

Heat sinks can be purchased at TL2 systems, for 30 Cr.

3rd Party Interfaces
====================
Purchase notification callbacks
-------------------------------
To have Ship Config callback a function when equipment is purchased, use this interface:

    var sc = worldScripts.ShipConfiguration_Core;
    if (sc) {
        sc.$addCallBack(this.MyFunctionName.bind(this));
    }

In this example, the function "MyFunctionName" will be caused, with the context set to the functions' JS file.

Ships
-----
Equipment Space and Power to Weight ratio:
	Overriding the calculation of equipment space and the power to weight ratio for a particular ship can be done in two ways.

	1. Via Javascript
	To add an override for a particular ship type, add the code to a "startUp" script similar to the following:

		var sc = worldScripts.ShipConfiguration_Core;
		if (sc) {
			sc._shipSpaceExceptions["Fer-de-Lance"] = [18];
			sc._shipPowerToWeight["Fer-de-Lance"] = [1.5];
		}


	2. Via scriptInfo in shipdata.plist
	To add an override directly in the shipdata.plist file, add the following lines to the "script_info" section:

		"script_info" = {
			"equipment_space" = 18; // how much default equipment space the ship has
			"power_to_weight" = 1.5; // how powerful is the ship compared to its weight? default of 1, values of 2 or above will mean weight doesn't have as much effect
		};

	(You can change the "18" and "1.5" to whatever value is appropriate for the ship).

Non-standard primary roles:
	If your ship is only defined with a non-standard role (ie. your ship doesn't have one of the core roles attached to it when it is spawned), by default the ship will be given the standard, default level of equipment. However, you can still have the appropriate level of equipment for your ship by adding your ship role to the translation list in either of the following ways:

	1. Via Javascript
	To add a translation for your primary role, add this code to a "startUp" script similar to the following:

		var sc = worldScripts.ShipConfiguration_Core;
		if (sc) {
			// make the primary role "my_ship_role" be equivalent to the core role "trader"
			sc._NPCEquivalents["my_ship_role"] = "trader";
		}

	2. Via scriptInfo in shipdata.plist
	To add an override directly in the shipdata.plist file, add the following lines to the "script_info" section:

		"script_info" = {
			// make the primary role "my_ship_role" be equivalent to the core role "trader"
			"role_translation" = "my_ship_role|trader";
		};


Equipment
---------
Overriding the definition of equipment space and weight for a particular piece of equipment can be done in two ways.

1. Via Javascript
Add the following code to a "startUp" script:

    var sc = worldScripts.ShipConfiguration_Core;
    if (sc) sc._equipmentMatrix["EQ_MY_EQUIPMENT_KEY"] = [2.0,2.0];

The first value is space, the second is weight, both in tons.

2. Via scriptInfo in equipment.plist
To add an override directly in the equipment.plist file, add the following lines to the "script_info" section:

    "script_info" = {
        "equipment_space" = 2.0; // value in tons
        "equipment_weight" = 2.0; // value in tons
    };

Setting both values to zero will mean the equipment is ignored by the system.

Standard logic:
    Missiles take no space, but weigh at least 0.1t.
    Pylon mounted items take no space, but add weight.
    Equipment that uses cargo space won't use equipment space, but weight might not be 1:1. That is, a 5t cargo spot might weigh 8t.
    Weapons (lasers) generally take no space, but increasing power and/or range means more weight. Uber weapons (designed for capital ships) may actually use equipment or cargo space.

Equipment Heat
--------------
It is possible to add a heat value into the heat calculation for when OXP equipment is in operation by using the "player.ship.script.$addHeat" and player.ship.script.$removeHeat" methods. The following script should be used as a template for OXP equipment scripts:

	"use strict";
	this.name        = "MyEquipmentOXP_ScriptName";
	this.description = "Activation and control script for equipment with heat properties.";
	this.licence     = "CC BY-NC-SA 3.0";

	this._inOperation = false;  // the equipment may use a different method for determining when it is engaged or not.
	this._heatAmount = 0.8;		// centralised value for heat exchange delta.
								// 0.8 will make the cabin temp rise very slowly. lower numbers may not be visible on their own.
								// ie if this is the only piece of equipment generating heat.
								// higher numbers will make heat rise more quickly.

	this.playerWillEnterWitchspace = function() {
		// assuming the equipment will cease operation during a jump
		if (this._inOperation == true) {
			this._inOperation = false;
			player.ship.script.$removeHeat(this._heatAmount);
		}
	}

	this.equipmentDamaged = function(equipKey) {
		if (equipKey == "EQ_MY_EQUIPMENT_KEY" && this._inOperation == true) {
			this._inOperation = false;
			player.ship.script.$removeHeat(this._heatAmount);
		}
	}

	this.activated = function() {
		// assuming the equipment is started and stopped by the "n" Activate key
		if (this._InOperation == true) {
			this._inOperation = false;
			player.ship.script.$removeHeat(this._heatAmount);
			return;
		}
		this._inOperation = true;
		player.ship.script.$addHeat(this._heatAmount);
	}

Also see the "shipconfig_witchdriveheat.js" file for another example of applying cabin heat.

Special Note
============
Parts of this OXP borrows heavily from Capt Murphy's set of "Breakable equipment" OXP's, specifically:
    Breakable Energy Unit
    Breakable Engines
    Breakable Shield Generators
    Breakable Witchdrive
Most of the logic from those OXP's is incorporated in this OXP, and therefore those OXP's have been flagged as incompatible with this one. To use this OXP you must remove those OXP's from your AddOns folder, or via the in-game manager.

Additionally, redspears "Masslock Compensators" and "Power to Engines" OXP's, as well as strangers "Hard Way" OXP, manipulate the speed of the ship at different times after launch, which interferes with the functionality of this OXP. They have been flagged as incompatible for the moment until a solution can be implemented.

Requirements
============
The Equipment Storage OXP is a requirement for this pack.
The Ship's Library OXP is also a requirement, so the Handbook can be viewed in game.

License
=======
This OXP is released under the Creative Commons Attribution - Non-Commercial - Share Alike 3.0 license. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/

Some code borrowed from Thargoids "IronHide Armour" OXP, and from CommonSenseOTB's "Custom Shields" OXP.

Rocket image from http://simpleicon.com/rocket.html
Thermometer image from http://simpleicon.com/temperature_3.html
Chat image from http://simpleicon.com/chat-2.html.
Grating image courtesy of Milosh Andrich (Iratemus@yahoo.com) from http://milosh--andrich.deviantart.com/art/Sci-fi-Texure-pack-05-335817650
Heat sink deployed sound from "Big Door Closed" MP3, sourced from http://soundbible.com/1586-Big-Door-Closed.html Public Domain.
Booster heat warning sound from "School Fire Alarm" MP3, sourced from http://soundbible.com/2022-School-Fire-Alarm.html Attribution 3.0

Discussion
==========
This OXP is discussed at this forum link: http://bb.oolite.space/viewtopic.php?f=4&t=17842

Version History
===============
1.5.5
- Extra protection against NaN values when determining direction of attack on NPC's.
- Fixed conflict with Manual Witchspace Alignment, where heat build up could increase continually if a witchspace jump is manually cancelled when not aligned.

1.5.4
- Darkened overlay images for better compatibility with Oolite 1.92.

1.5.3
- Fixed reference error in equipment damage process.
- Update overlay images for 1.91.

1.5.2
- Added some additional equipment items.
- Added option to suppress/hide the Equipment Specifications F4 interface screen.
- Fixed issue where older HUD's that don't define certain HUD elements would have the comms log and console log positions changed on launch after visiting the F3 Equip Ship screen.

1.5.1
- Fixed bug where damage to heat shielding would make the cabin temperature zero degrees (brrrr).
- Fixed issue where yaw performance was not being impacted by the type of thruster installed.

1.5
- Added "Ship Configuration Handbook" to the Ship's Library (which is now a requirement).
- Moved all text into descriptions.plist or missiontext.plist for easier localisation.
- Sound now plays when a fuel leak occurs.
- Improved method of turning HUD on/off.
- Fixed issue where sometimes equipment of the same type isn't removed when purchasing new items.

1.4.4
- Small improvements to application of armour and booster variables to ship object.

1.4.3
- Fixed invalid JS function name.

1.4.2
- Added some additional items to the ignore equipment list.

1.4.1
- Fixed issue for ships of mass > 500000, where dumping heat sinks would increase cabin temp instead of reducing it.

1.4.0
- Added check for situation where the heat sync control mode becomes out of sync with the associate equipment item.
- Added two missing flags from config options to save game, so they will be restored on game load.
- Overridden default equipment items (Fuel Scoops, Heat Shields and Fuel Injectors), when added by other means, were not getting the additional Ship Configuration item at the same time.
- Fix for code that calculates the weight of weapons when no predefined weight is set (Oolite 1.90 now required).
- Moved core equipment overrides into defined plist.
- Added interface to allow 3rd party functions to be called back when Ship Config equipment is purchased.
- Bug fixes.

1.3.8
- Added ShipVersion equipment items to exclusion lists.
- Fixed some issues where JS errors could occur if the player ship was destroyed.

1.3.7
- Corrected compatibility issue with Email system and armour repair items being recorded as equipment removals.

1.3.6
- Deploying the last heatsink was causing Oolite to crash.
- Fixed issue where HUD was not being restored after viewing the Ship Configuration screen.

1.3.5
- Tweaks to the control of the F3 HUD for simpler integration with Xenon HUD (and any other HUD that might want to integrate with Ship Config).
- Identified "Masslock Compensators" and "Power to Engines" OXP's as conflicting, and marked them in the manifest.

1.3.4
- Better use of new functions available in later versions of Oolite.

1.3.3
- Correction to cabin heat buildup calculation broken by update 1.3.2 :(

1.3.2
- Adjusted what happens to cabin heat in a nova system, to make it less deadly.
- More fixes for improved compatibility with Coluber CH01 HUD.

1.3.1
- Fixed issue with the F3 HUD occasionally causing issues with Xenon UI and the Coluber CH01 HUD.
- Tweaks to some equipment item names to prevent text overlapping on the F5 screen.

1.3.0
- Equipment storage system made into separate OXP, which is required by this one.

1.2.8
- Bug fixes.

1.2.7
- Ship energy is set to ship max energy whenever this value is updated.
- Tweaks to info string for settings in Library Config, to prevent text truncation.
- Updates to some zoom override values.
- Improved script protection for when the player ejects.
- Improved compatibility with Fuel Injection Cruise Control OXP.

1.2.6
- Starting the docking computer while a hyperspace countdown is active will now successfully disengage the heat buildup.
- Cancelling and then restarting a jump countdown will now display the correct restart time value immediately when restarted.
- Fixed issue with current page number on equipment specifications screen.
- Fixed issue where selling equipment from storage was giving player a credit bonus in some circumstances.
- Fixed issue with "%%" appearing in messages relating to transferred equipment being lost to pirates.
- Fixed issue where selling equipment was not applying correct refund percentage.
- Added missing "+heat" notice for Class 19A energy banks.
- Location of stored equipment was not being displayed correctly after equipment transferred to local system.
- Added flag to Library Config to control whether restrictions will be applied to NPC ships.

1.2.5
- Specialised HUD for the F3 screen will now only update the two custom HUD properties when the F3 screen is displayed.

1.2.4
- Equipment that cannot be sold at a station because of its equivalent tech level will now be displayed in the sell equipment list, but unselectable and with "Low TL" in the cost column.
- Equipment that cannot be sold because other equipment depends on it will now be displayed in the sell equipment list, but unselectable and with "Required" in the cost column.
- Fixed bug with assessing cargo space of unknown equipment items that take up cargo space.
- More script protection for when the player ship is destroyed.
- Code refactoring.

1.2.3
- Adjusted equipment space of Night Adder.

1.2.1
- Removed debug message when selling equipment.
- Fixed HUD switching issue when using HUD Selector.

1.2.0
- Improved handling of player ship death scenarios.
- Added extra equipment items to the ignore equipment list.
- Added specialised HUD for the F3 screen to show equipment and cargo space remaining. Can be disabled via Library Config.
- Updated EquipmentSpecifications.ods file with all current equipment keys specifically recognised.
- Value for "Disable booster sound" setting now saved between sessions.

1.1.3
- Fixed transmit date on Storage Facility payment emails.
- Bug fixes.

1.1.2
- Fixed issue with missing header text on Ship Configuration main menu.
- Adjusted default equipment space for Fer-de-Lance.
- Fixed some invalid ship reference errors during an escape pod sequence.
- Extended the length of time cabin heat warning messages are displayed for.
- Storing equipment for the first time at a station will now incur a deposit fee.
- Fixed issue with cargo weight/space not being including in storage costs.
- Fixed issue with incorrect/misleading labels on cargo storage menu items.
- Code refactoring.

1.1.1
- Fixed bug that was preventing weapon in a starboard mount from being sold.

1.1.0
- Fixed bugs with incorrect amounts being refunded to the player when equipment is sold.
- Fixed issue with incorrect refund amounts being displayed to the player on the "Sell Equipment" page.
- Fixed issue where the ship size price factor was being incorrectly applied to fuel scoops, injectors and heat shields, and all other standard or OXP equipment items on the "Sell Equipment" page.
- Equipment items can only be sold at stations where the can actually be bought as well.
- Non-removable Ship Config equipment (eg Engines, Thrusters), when swapped for another unit, will only refund the price of that unit at the main station, to prevent exploitation.
- Station equipment price factor was not being correctly applied to equipment buy/sell prices.
- Better handling of player ship destruction.
- Tweaks to weight values of engines, thrusters and electrical bus.
- Corrected equipment space values for Adder and Krait in readme and on Wiki page.
- Changed default equipment refund percentage back to 85%.

1.0.0
- Scripted equipment damage was being aggressively repaired by the armour.
- Bus overload timer was being reset while running.

0.9.2
- New equipment items (ie. equipment purchased but not yet exposed to space travel) that are sold/exchanged will now be refunded at 100% of their cost, rather than the default 90%. This means you can swap items in and out to see the impact on ship stats, without having to take a loss on every exchange.
- When setting a course to a target system, F7 screen will now display the new destination.
- Equipment specification interface screen now includes TL required for purchasing equipment, and all equipment items are now being shown (not just the ones available in the current system). Also removed some unnecessary items from the list.

0.9.1
- Adjustment to Ore Processor equipment space requirements.
- Added missing equipment items from Ore Processor OXP.
- Added additional equipment items to the ignore list.
- Code refactoring.

0.9.0
- Forward and aft armour can now be different classes.
- Fixed issue with the armour equipment item not being removed when 100% damaged.
- Purchasing other ship armour (eg IronHide) will now refund the cost of any existing Ship Config armour before removing it.
- Improved code for processing expended heat sinks.
- Added some additional OXP equipment items.
- Bug fixes.

0.8.2
- Corrected minor issue with equipment.plist and fuel scoops.
- Fixed issue with heat not being applied to NPC ships correctly. 
- Consistency adjustments to equipment.plist.
- Added "display_color" property to some equipment items (Oolite v1.85/86 only).
- Bug fixes.

0.8.1
- Fixed issued with cargo not being able to be scooped.

0.8.0
- Added fuel scoop classes 1-4 to configuration menu.
- Armour repairs now won't generate an "Equipment removed" email.
- Code refactoring.
- Bug fixes.

0.7.2
- Custom scripts will now be attached correctly when a new ship is purchased.

0.7.1
- Fixed faulty LMSS integration.

0.7.0
- Added ability to sell laser weapons from the "Sell Equipment" page.
- Added ability to put laser weapons into storage.
- Fixed script error that could occur when player ejects.
- Tweaked the amount of heat dumped with a heat sink.
- Fixed an issue with large player ships where heat could be added, rather than dumped, when a heat sink is deployed.

0.6.7
- Fixed issue where the core "EQ_HEAT_SHIELD" equipment item was not being added to the ship, meaning that any equipment item that required a heat shield was not able to be installed via the F3 screen (eg PlanetFall Landing Capability).
- Adjusted the heat insulation factors for the heat shielding equipment.

0.6.6
- Updated method for determining player's next target system, to use new property "nextSystem" (when available in 1.85/6).
- Bus overload chance will slowly decrease during flight the longer the player goes without being hit.
- Tweaked what happens when a bus overload occurs, making it less likely that 3-5 items are damaged almost all at once.
- Added ship roles from Keeper's YAH Haulers to NPC configuration.
- Added ship roles from YAH to NPC configuration.
- Added equipment from In-System Taxi OXP.
- Fixed issue with equipment items that take up cargo space causing mis-calculations of the available cargo space.
- Checking for an overloaded state now happens more frequently when docked, to cater for scenarios where equipment is added outside the equip ship screen (F3).
- Code refactoring and bug fixes.

0.6.5
- Improvements to the heat sink deployment method.
- Correction to issues with the timer for heat sink detonation control.

0.6.4
- Adjusted space/weight components of UPS Police Scanner and UPS Universal Scanner.
- Fixed issue with core heat shield equipment not being added in the background whenever one of the new heat shield items is purchased.

0.6.3
- Removed some debug messages.
- Removed all unnecessary debug-mode checks.
- Added equipment items from "Vector" OXP.
- Added equipment items from "Ring Racers" OXP.
- Prevented sale of any equipment item that has a zero cost amount (as they are likely to be mission-OXP-related).

0.6.2
- Added logic for NPC's to turn off cloaking devices if their cabin temperature gets too high.
- Added logic to check whether installing stored equipment has worked before removing it from the storage array.
- Fixed incorrect monkey patching on shipDied and shipRemoved events.

0.6.1
- More equipment items can be transferred to storage, including things like MFD's and targeting enhancements.
- Removed incorrect restriction for the military shield enhancement (it is not actually dependant on the standard shield boosters).
- Added equipment space override for Asp Mark II Special.
- Armour repair amounts are now in-line with the original cost of the item.
- Fixed issue with equipment price in some OXP stations being ludicrously expensive.

0.6.0
- Added class "A" energy banks, that only take half the space of standard units, but also increase cabin heat.
- Added class "D", "E" and "F" engines that only take half the space of class "A", "B" and "C" engines, but they also increase cabin heat.
- Added class "D", "E" and "F" thrusters that only take half the space of class "A", "B" and "C" thrusters, but they also increase cabin heat.
- Fixed Javascript error when escape pod is used.
- If the Email System is present, adjusted method used to send emails when selling equipment.
- Changed the equipment space setting for escape pods, as these would be built into the architecture of the ship, not in the equipment racks.
- Added a tech level factor to equipment prices, so equipment should be cheaper in hi-tech systems, and more expensive in low-tech systems.
- Adjusted the used equipment sale reduction from 15% to 10%.
- Adjusted the heat build up from using hyperdrives to be variable based on the class level of hyperdrive.
- Added conflicting status with Redspear's Equipment by Ship Class OXP.
- Made compatible with Hyperspace Hanger OXP.
- Shields, Shield Boosters and Military Shield Enhancement can now be damaged in any order.
- Fixed issue with multiple passenger berths not being correctly reflected in weight calculations or display screens.
- Fixed issue where damaged shields would continue to decharge even after repairing them.
- Fixed issue where, if the Military Shield Enhancement and the Shield Boosters were damaged, you couldn't repair the former without repairing the latter, but time and credits would be deducted if you tried.
- Fixed equipment naming convention issue.
- Bug fixes.

0.5.0
- Added equipment space extensions to allow for more equipment without using cargo space, but with weight and cabin temp penalties.
- Adjusted equipment space settings for fuel injectors.
- Turned off some debug messages.
- Toned down colour of storage facility background overlay image.
- Fixed further compatibility issues with Ship Respray.
- Fixed further compatibility issues with Combat Simulator.
- Changed background overlay image during sell negotiations.

0.4.4
- The impact of damaged boosters was not being applied correctly. It wasn't making any difference if they were damaged.
- Determination of player's hyperspace destination now considers the presence of the ANA.
- Fixed error when not checking if a timer exists before trying to turn it off.
- Adjusted weight/space settings for boosters.
- Made compatible with "Hyperdrives" OXP.
- Really really fixed the issue with the HUD disappearing after viewing the config screens.

0.4.3
- Was not correctly reading values in script_info from shipdata.

0.4.2
- Fixed spelling error in manifest.plist.

0.4.1
- Fixed small bug that could occur if the amount of used equipment space exactly equals the available space.
- Removed debug message when purchasing a new ship.
- Fixed issue with HUD not becoming visible again when launching while viewing the ship configuration screen..

0.4.0
- Adjusted heat shielding insulation strength for type 3 and 4 heat shields, making them more useful, particularly for sun-skimmers. Also added types 5 and 6 for additional heat shield options.
- Fixed issue where the default level of heat insulation was being reset if heat shield equipment was not specifically installed on a ship.
- Adjustments to manifest.plist.
- Changed short range chart selection range to 7.5ly, rather than 15.
- Better handling of interstellar space conditions.
- Disabled ship configuration F3 item at police/navy stations (repairs are still possible at these stations, though).
- Fixed issue with emails sent when selling equipment not displaying the correct refund amount.
- F3 "Ship configuration" item now has a cost of 0 (zero).
- Added the possibility of having a mis-jump when entering hyperspace with high heat levels.
- Fixed issue with equipment overload state when returning from a combat simulation.

0.3.0
- Included the ability to store most equipment items in a local storage centre, and then retrieve that item at a later date. Also includes ability to sell equipment items directly from storage, or to transfer equipment items between storage facilities.
- Cargo can also be stored in the main station storage facility, and transferred between facilities.
- Included the ability to sell the cloaking device, or any equipment item that has an effective tech level >= 16, through a negotiation process.
- Added warning sounds/notifications when ship temperature reaches critical levels.
- Improved compatibility with the Single-Use witchdrive OXP.
- Added a random element to the process of adding equipment to NPC's, so not all ships of the same role will have the same equipment.
- Fixed issue where some column headings were not appearing correctly on the main Ship Config screen and the Electrical Bus sub-menu.
- Fixed issue with invalid reference error when energy equipment is damaged.
- Fixed issue with selling of passenger berths not working.
- Removed the Breakable Torus Drive code and the incompatibility flag, moved OXP reference to "optional_oxps". If you like this feature you can install that OXP directly.
- Removed the station equipmentPriceFactor from equipment price calculations, to avoid the loophole of buying equipment at the main station and selling it at a Rock Hermit for massive profits.
- Fixed bug with armour damage-point calculations that was preventing any damage to equipment from taking place until armour was mostly gone.
- Prevented smuggling compartments from being stored.
- Added some additional role translations.
- Changed "==" comparisons to "===" for performance improvements.
- Equipment refund price set to 85% of original price.
- Turned off free upgrades, turned on equipment installation time.
- Added SniperLock equipment to ignore list.

0.2.0
- Added new equipment configuration item "Boosters" which give a boost to engines and thrusters (allowing your ship to reach higher speeds), but also generate cabin heat.
- Now compatible with Ngalo's NShields and NPC Equipment Damage OXP's.
- Fixed issue where buying a new ship was not resetting the stored equipment values on the configuration display.
- Adjusted the weights of the electrical buses.
- NPC fuel injectors now won't be upgraded if the auto-weapons routine didn't install them in the first place.
- Added equipment items from Solar Harvester OXP and Single-Use Witchdrive OXP.
- Improved the equipment space calculation, so that ships with more than 35t of cargo space will get at least 20t of equipment space, plus some extra.
- Added means by which non-standard primary roles can be translated into core roles so that appropriate equipment is applied to each ship, rather than just the default equipment.
- Added some additional equipment space exceptions.
- Added some additional zoom factors for various ship types.
- Turned off debug messages.
- Adjustments to code design to allow for NPC equipment failure.
- Bug fixes.

0.1.3
- Further adjustments to Separated Lasers and Sniper Gun space and weight amounts as supplied by Norby.
- Added more NPC config possibilities.
- Removed the "playerRescuedEscapePod" event, because it was unnecessary and it wasn't firing when I thought it would anyway.
- Fixed spelling mistake on F3 screen description.
- Added ability to allow third party OXP equipment to add their own heat delta value into the cabin heat calculation when in operation.
- Added witchdrive jump heat buildup to heat calculations.

0.1.2
- Fixed issue with cabin temp when heat shield is damaged.
- Adjusted "Separated Lasers" weight values.
- Fixed issue with ships that have 0 cargo (eg Asp) attempting to be given EQ_EQUIPSPACE_0.
- Fixed issue with "thrust" not being set along with "maxThrust".
- Fixed issue with JS objects not being available when player ejects.

0.1.1
- Added some additional equipment items to the "No equipment space" list.
- Added equipment items from Separated Lasers, Multiple Lasers, Sniper Gun, Trail Detector, Tionisla Reporter, Headlights, FarPlanets.
- Configured the heat sink and the breakable torus drive entity to not get ship configuration.
- Adding in missing JS file for the breakable torus drive.
- Fixed issue with the cleanup routine for heatsinks causing a Javascript error.
- Added missing ";" in shipdata.plist.
- Code improvements.

0.1.0
- Fixed display issues on config screen where one header line was being overwritten.
- Fixed NPC shield mechanics.
- Added a flag to allow use of previous NPC config setup, based on role inclusion. To switch back to using role inclusion, set "this._useExclusions = false" in "shipconfig_npc.js".
- Selling damaged equipment items will now only refund half the cost of the item.
- Added bus overload chance to ship configuration screen.
- Included fuel injector class level in bus overload calculation, as they use the engines electrical bus.
- Added bus overload factor to temperature calculation.
- Added additional energy bank options, now going up to 25 banks.
- Rebalanced energy bank power couplings, reducing the number of classes to 8 (approx 3 banks per coupling level).
- Updated space/weight definition for Missile Machine from Armoury.oxp to better reflect what this device is.
- Tweaked TL availability for Class 4 Hyperdrives.

0.0.13
- Fixes to NPC equipment routines and heat sink parameter location for consistency with player and NPC ships.

0.0.12
- Config is now applied to all ships, including ones with "auto_weapons" set to false. Config can be switched off for a ship by adding a "no_config = 'yes'" to the script info for a ship.
- Laser use, laser strikes, fuel injector use and cloaking device use will now heat up the cabin, which applies to NPC's as well. New equipment "Heat Sinks" allow for a percentage of cabin temperature to be dumped.
- Added 7 classes of armour that will absorb damage before equipment. If IronHide armour or HardShips armour is installed, Ship Configuration armour items will not be available.
- Added integration with Custom Shields and NPC Shields.
- Fixed spelling mistake on "Equipment Specification" screen.
- Adjusted space/weight requirements for gravity scanners and small and large dishes, from Telescope OXP, based on descriptions.
- Moved most static text to descriptions.plist.
- Fixed missing variable declaration in bus overload code.
- Fixed issue on configuration screen where incorrect text was being displayed when no fuel injectors or heat shields were installed.
- Removed all the "EQ_*_REPAIR" items from equipment.plist, as I figured out how to make the core repair items display properly.
- Fixed issue with "getCargoCapacity" routine, which would return a "NaN" value for some ships.
- Fixed issue with "Unknown escape code in string" errors appearing in log file.
- Configured NPC equipment system, and created templates for most roles.
- Further fixes to the issue where equipment items that take up cargo space were throwing out the available space calculations.
- Updated screenID's to enable BGS background sounds.
- Cleaned up sound function to avoid the need to check for BGS.
- Updated check for "Allow Big GUI".
- Toned down overlay images.
- Code refactoring.

0.0.11
- Fixed Java script bug when dumping cargo.
- Added police roles to NPC list.
- Fixed spelling mistake for the heat shield when applying base equipment.
- Fixed issue where equipment items that take cargo space were incorrectly adjusting the maximum cargo space available for equipment.
- Added hyperdrive names, courtesy of Redspear.
- Added passenger berth equipment item to matrix (although it isn't necessary now that the bugs above have been fixed).
- Damaged core items now appear red on the Ship Configuration main menu.
- Code refactoring and cleanup.

0.0.10
- Fixed issue with equipment space overload status showing with "0t" used cargo space.
- Fixed issue where, after purchasing class 3 or above fuel injectors or heat shields, then saving and loading the game, class 2 items would also be installed.
- Fixed issue where cargo space was being returned to the player after a save/load sequence.

0.0.9
- Added more plumbing for doing specific NPC role configurations.
- Reworked the power to weight ratios to make larger ships harder to move, and smaller ships easier to move. So you can still put everything into an Anaconda, but you won't turn it into a Cobra.
- Fixed issue with adding default equipment, where the calculation for the engine power coupling was in some situations returning invalid configurations.

0.0.8
- Fixed bug in $addEquipmentDataFromScriptInfo routine that was applying equipment weight value from script_info to equipment space and overwriting whatever had been entered for space.
- Fixed issue where some Cobra Mark III models have a different mass.
- Fixed issue with Ship Respray, where cargo space was disappearing when a respray was purchased.
- Added current class levels to main menu items to make current installed items more visible.

0.0.7
- In an "overloaded" state, you can now switch between selling equipment and changing configuration in order to free up space.
- Fixed issue with the installed equipment list, where player ships with no missiles defined was causing an error.
- Fixed issue where you could install a much lower power coupling regardless of the equipment attached to it.
- Adjusted layout of interface screen.
- Adjusted position of "Ship Configuration" item on F3 screen so that fuel will come before it.
- Adjusted the thruster percentages to give them more range.

0.0.6
- Fixed issue where NPC's were not getting adjustments applied, and where occasionally the wrong piece of kit was showing up on the player.
- Changed minimum techlevel for doing configuration changes to 2, so you can't do config changes at Rock Hermits.
- Fixed incorrect text on repair item for breakable torus drive.
- Code refactoring.

0.0.5
- Added equipment items from "Laser Cannons".
- Added better checking for unknown lasers.

0.0.4
- Really fixed the energy draining away issue.

0.0.3
- Disabled the "overheating engine" code as it wasn't working as intended.
- Fixed issue (hopefully this time for sure!) where energy was being drained away.
- Fixed issue (hopefully) with being able to purchase multiple items of the same type.
- Adjusted engine upgrade speed values.
- Fixed missing ";" in shipdata.plist.

0.0.2
- Price of upgrades now scaled to ship size (so an engine upgrade for a Boa costs more than an engine upgrade for a Transporter).
- Changed layout of ship config screen to be more intuitive.
- Added a flag to make all upgrades free during testing period.
- Fixed issue (hopefully!) where energy was being drained away on launch.
- Adjusted thrust and speed values for engine upgrades to be more noticeable.
- When cargo is removed to make space for equipment, it will now be sold, rather than just removed.
- Changed power-to-weight ratio for Transporters.
- Changed shield upgrades to be in multiples of 64.
- Changed Class 4 hyperdrive spin time to 5 seconds.
- Moved salvaged equipment (from Anarchies OXP) into the ignore list, as these items are removed on purchase anyway.
- IF BGS is in use, now using the BGS hull bang noise when damage occurs.
- Added logic to cool engines down if you've run them in overload for a period of time.
- Bug fixes.
- Code refactoring.

0.0.1
- Initial Alpha release
