Группой независимых дронов (ГНД), я буду навывать, дронов запущеных с одного корабля и атакующих одну и туже цель (аналог группировки пушек, и лаунчеров).
Сейчас каждый дрон из ГНД обсчитываеься сервером, как отдельный объект, который имеет свои характеристики. Однако если мы обратим внимание на поведение ГНД в текущей механике, мы увижим, что все дроны ведут себя одинаково или практически одинаково.
Поэтому заменить их на супер-дрона (в клиенте отображается как ГНД) более чем логично.
Технически супер-дрон представляется собой "обычного дрона с дополнительными параметрами". Однако может заменить собой нескольких "обычных дронов".
Все дроны в ГНД имеют свои координаты, однако они по факту, в 99% случаев они летят (ну или стоят) группой. Пэтому: при формировании Супер-дрона задаем массив в котором храним постаянные и неизменяемые смещение координат для каждого члена Супер-дрона (для отображения в килиете). (вот она собстно модификация: у нас становится 1 координата супер-дрона и некоторые фиксированные (которые не перерасчитываются) смещения для отображения в клиенте)
Вектор движение кажгодого дрона в ГНД заменяем на единый весто для супер-дрона. В итоге из этого и пред. абзаца видим, что сервер будет обсчитывать перемещение в пространстве только одной точки ( а не нескольких, по числу членов ГНД),
Супер дрон стреляет из этой координаты и все свои моневры обсчитывает относительно своей главной координаты. (стрельба, расстояние до цели).
Супер-дрон имеет два режима стрельбы "Фокус" и "Беглый огонь" ( аналогично текущим для ГНД). Думаю объяснять не нужно.