Fürs Protokoll habe ich das jetzt am Computer durchsimuliert. Vielleicht hilft es dem ein oder anderen beim Balancing der Raumkämpfe.
Ich nehme als Beispiel ein Schiff mit Scale 5 und Security 4 (wie das meiner Spieler). Dieses feuert auf ein Schiff mit Scale 3, Shields 9, Resistance 3, also zB einen B'Rel class Bird of Prey. Der Angriff erfolgt aus idealer Distanz und trifft (ohne Zusatzerfolge oder sonstiges Momentum). Versatile setze ich primär zum Senken der Resistance ein. Nach 10.000 Schadenswürfen erhalte ich in Abhängigkeit von weapon system (Phaser, Disruptor, Polaron Beam) und delivery method (Cannon, Bank, Array) folgende durchschnittliche Anzahl von breaches:
phaser cannons yield average 1.58 breaches (maximum 2 breaches)
phaser banks yield average 1.42 breaches (maximum 2 breaches)
phaser arrays yield average 2.93 breaches (maximum 4 breaches)
disruptor cannons yield average 1.64 breaches (maximum 2 breaches)
disruptor banks yield average 1.46 breaches (maximum 2 breaches)
disruptor arrays yield average 2.47 breaches (maximum 4 breaches)
polaron beam cannons yield average 1.58 breaches (maximum 2 breaches)
polaron beam banks yield average 1.40 breaches (maximum 2 breaches)
polaron beam arrays yield average 2.82 breaches (maximum 4 breaches)
Mit einem Angriff kann man normalerweise höchtstens 2 breaches erzeugen (Schaden > 5 und Schilde auf 0 senken wenn man gut würfelt).
Generell sind Arrays deshalb immer am besten, da sie durch den zweiten Hit mit einem Angriff bis zu 4 breaches verursachen können.
Im Durchschnitt hebt das die Anzahl an breaches bei Phasern und Polaron beams auf fast 3. Disruptor Arrays fallen etwas ab, da hier die Resistance des verteidigenden Schiffes nicht so einfach gesenkt werden kann (Piercing oder Versatile fehlt).
Fazit:
Für anspruchsvolle Kämpfe den Gegnern einfach Phaser oder Polaron Beam arrays verpassen. Die stechen statistisch deutlich hervor.
Ansonsten sind die Unterschiede (1.40 bis 1.64 breaches pro Angriff) aber nicht so weltbewegend.
Hier noch der python Code für die interessierten:
import numpy as np
def roll_effect(ndice):
x = 0
efx = 0
for i in range(ndice):
tmp = np.random.randint(1,7)
if tmp < 3:
x += tmp
elif tmp >= 5:
x += 1
efx += 1
return x, efx
def roll_damage(damage, resistance, shields,
versatile=None,
vicious=None,
piercing=None,
spread=None):
breaches = 0
dam, eff = roll_effect(damage)
if vicious is not None:
dam += eff*vicious
if piercing is not None:
resistance = max(0, resistance - piercing * eff)
if versatile is not None:
if resistance > 2:
resistance = max(0, resistance - 2*versatile)
elif resistance > 0:
resistance -= 1
if versatile > 1:
dam += versatile - 1
else:
dam += versatile
# update shields and breaches
eff_dam = dam - resistance
if shields <= eff_dam and eff_dam > 0:
breaches += 1
if eff_dam >= 5:
breaches += 1
shields = max(0, shields-eff_dam)
if spread is not None and eff > 0:
# second hit
dam2 = np.ceil(dam * 0.5) + max(0, eff-1)
eff_dam = dam2 - resistance
if shields <= eff_dam and eff_dam > 0:
breaches += 1
if eff_dam >= 5:
breaches += 1
shields = max(0, shields-eff_dam)
return breaches
np.random.seed(2342)
nrolls = 10000
# attack ship
scale_att = 5
sec_att = 4
base_dam = scale_att + sec_att
# defense ship
shields_defense = 9
scale_defense = 3
resistance_defense = scale_defense
for weapon_type in ("phaser", "disruptor", "polaron beam"):
for delivery_method in ("cannons", "banks", "arrays"):
versatile = None
spread = None
vicious = None
piercing = None
damage = base_dam
if weapon_type == 'phaser':
versatile = 2
if weapon_type == 'disruptor':
vicious = 1
if weapon_type == 'polaron beam':
piercing = 2
if delivery_method == 'cannons':
damage += 2
if delivery_method == 'banks':
damage += 1
if delivery_method == 'arrays':
spread = True
breaches = []
for i in range(nrolls):
breaches.append( roll_damage(damage, resistance_defense, shields_defense,
versatile=versatile,
vicious=vicious,
spread=spread,
piercing=piercing) )
breaches = np.array(breaches)
av_breaches = np.average(breaches)
max_breaches = np.amax(breaches)
print(f"{weapon_type:15s} {delivery_method:10s} yield average {av_breaches:5.2f} breaches (maximum {max_breaches:d} breaches)")
Man muss aber der Fairness halber aber auch dazu sagen, dass ein Scale 5 Schiff mit Security 4 (also 9 Würfeln) auch ziemlich brachial auf Kampf ausgelegt ist (was für ein Föderationsschiff schon nicht ganz der Standard ist).
Zum Vergleich:
Selbst das Flaggschiff der Föderation, die Enterprise-D kommt mit ihren Arrays gerade mal auf 8 (Scale 6 + Security 2)
und selbst die Defiant hat nur 8 Würfel für ihre Arrays (Scale 3 + Security 5) und die ist tatsächlich ein darauf ausgelegtes Kriegsschiff.
Gerade bei letzterer sieht man ja auch sehr eindrucksvoll, wie sie mit den feindlichen Schiffen reihenweise den Boden aufwischt.
Wenn ihr also auf einem, für den Kampf optimierten Schiff spielt, ist es doch auch nicht weiter verwunderlich, wenn die Feinde (deutlich kleinere noch dazu) links und rechts zerplatzen.
Wenn du das Balancing bemängelst, dann solltest du dem Kriegsschiff deiner Crew vielleicht auch ein vergleichbares Kriegsschiff als Gegner gegenüber stellen, damit sie das als eine Herausforderung erleben.
Vielleicht wäre ein Vor'Cha Kreuzer oder wenigstens ein K'Vort Class BoP etwas angemessener.