BeeStation / NSV13

NSV13, a Ship-to-ship Combat SS13 Server
GNU Affero General Public License v3.0
115 stars 257 forks source link

The armor system for overmap ships is actually broken #2687

Closed Bokkiewokkie closed 1 week ago

Bokkiewokkie commented 1 week ago

Round ID:

I found this while coding

Testmerges:

Shut up

Details:

The armor system normally reduces damage on take_damage(), but we also do it in take_quadrant_hit(), because armour quadrants are supposed to include the reduced amount of damage. When the armour quadrants fail they will apply damage to the ship with the take_damage() proc, which re-applies the armor reduction again. By extension this means the armor reduction on structure hits is actually twice as strong. Examples of the difference: image This bug only affects overmap ships with armour quadrants, so anything that is not a fighter.