Version: 6.20
Language: English
Modified: No
Game Start: Any
Problem:
In certain cases, destroying all the components of a L/XL ship before destroying it will yield less scrap than the same ship with a lesser loadout.
How to Reproduce:
Load up a Wyvern (Mineral) with:
8x PAR M Tracking Turret Mk1s
2x TEL L Mining Turret Mk1s
7x ARG M Shield Generator Mk1s
1x SPL L Shield Generator Mk1
3x ARG L All-round Engine Mk1s
L All-round Thrusters Mk1
Load up a second Wyvern (Mineral) with:
3x ARG L All-round Engine Mk1s
L All-round Thrusters Mk1
Destroy all surface modules on each of them, and then destroy the ship.
Check the raw scrap values of each wreck.
The save file linked is a custom game with this setup.
Save File:
https://drive.google.com/file/d/1j_xiT1 ... sp=sharing
Research:
Raw scrap yields for L/XL/Stations are based on a combination of hull and material costs, with the hull being caclulated as the max hull of ship chassis + the hull of all surface components at the time the ship is destroyed.
The formula looks like this:
Code: Select all
Total ship scrap value (chassis + surface components) * (Combined max hull values (chassis + surface components) - Lost hull amount of all components) / Combined max hull values (chassis + surface components)
Solution:
Separate the concerns of the ship chassis's hull and scrap values from component hull and scrap values.
The calculations should be something like:
Code: Select all
Ship chassis scrap value + sum_of (scrap value of individual component * component hull value / component max hull value)
This would let the ship have a minimum value (that is the scrap value of the chassis), and destroyed components would only affect the added value that they bring.