Planet siegt: Im Kampf genutzte Munition wird zuerst aus dem Lager der Sternenbasis genommen. Es ist auch die Sternenbasis, die zuerst Schaden nimmt.

Fighters_lost =
   Min(Fighters_launched_in_combat, Base_fighters)

Der Torpedovorrad, der im Kampf benutzt wird, wird aus allen am Lager befindlichen Typen zusammengestellt. Deshalb muss die Basis auch Torpedos aller Typen abgeben, wenn sie im Kampf Torpedos feuert. PHost nutzt dafür folgenden Algorithmus:

Torpedo_costs =
   Torps_fired * Torp_money_cost(Torp_type)

Repeat
   For i:=1 To 10     (Schleife über alle Torpedotypen)
      If (Torps_in_storage(i) > 0) And (Torpedo_costs > Torp_money_cost(i))
         Einen Torpedo des Typs type i entfernen
         Torpedo_costs um Torp_money_cost(i) verringern 
      EndIf
   EndFor
Until die innere Schleife keine weiteren Torpedos entfernen kann

Damit wird versucht, die Verluste gleichmäßig über alle Typen zu verteilen.

Endzustand: Ein Planet kann pro Zug an mehreren Kämpfen teilnehmen. Nachdem diese alle überstanden sind, werden die Auswirkungen des Schadens ermittelt.

Base_damage_after_combat =
   Base_damage + Damage_taken
   ...wenn das 100 oder mehr sind, wird die Basis zerstört

Base_defense_after_combat =
   Trunc(Base_defense * Damage_taken / 100)

Max_base_tech =
   Max(1, Trunc((100 - Base_damage_after_combat) / 10))

Defense_after_combat =
   Trunc(Planet_defense * Damage_taken / 100)

Max_base_tech ist der höchste Techlevel, den die Sternenbasis nach dem Kampf noch haben kann. Techlevels, die diese Grenze überschreiten, werden entsprechend gesenkt.

This is a testing version.
It may be incomplete, and have more bugs (or features) than the public live version at planetscentral.com.