Предлагаю ввести некоторые изменения,
Считаю для реалистичного сражения оно должно зависеть от количества энергии на борту. Ведь без энергии не будет ни щитов ни лазеров.
1 при сражении двух флотов. Когда энергия у одной стороны закончится, остается баллистика. Начинает изменятся система боя.
начинает подсчитываться количество кораблей, если флот потерявший энергию оказывается в несколько раз слабее, его захватывает противник (абордаж), если же флот остается достаточно мощным по сравнению с противником он вполне может выиграть только за счет баллистики и бой продолжается с некоторыми каректировками (так как флот все таки остался без щитов и лазеров),
до тех пор пока у противника также не иссякнет энергия.
Дальше подсчитывается мощность обеих флотов и результат боя может иметь два варианта. 1 если количество обеих флотов оказывается примерно равна, бой заканчивается ничьей (либо продолжается только на баллистике), 2 Если один из флотов оказался в несколько раз слабее (во сколько решайте сами), он захватывается противником (абордаж). Игроки востанавливают энергию, после чего жертва может успеть смыться (если достаточно энергии), вполне резонно.
2 при нападение на планету. Здесь немного проще. Сражение идет либо пока не снесется вся оборона планеты, либо пока не закончиться энергия у флота (у планеты она постоянно производится). Дальше можно ввести несколько вариантов, (либо бой продолжиться на одной баллистике у флота), либо бой прекращается, Агрессор восстанавливает энергию, смотрит потери если они есть и решает либо продолжить либо ретироваться.