Published on: 2022-07-18
艦隊の移動処理は味方/敵共通。
ただし、敵は移動中に目的地を変更できる。敵の目的地決定処理は敵の戦略を参照。
以降、「距離」とは3次元空間上のユークリッド距離、即ち sqrt(dx^2 + dy^2 + dz^2)
を指すものとする。
移動命令はコスモスクリーン上で惑星を指定することで行う。
このとき、(艦隊エネルギー) > (現在地から目的地への距離)
でなければカーソル移動ができない。つまり、ある惑星への移動命令を出すためには、経路上の全惑星においてこの式が成り立っていなければならない。
味方艦隊/敵艦隊は毎ターン以下のように移動する。
まず現在位置から目的地への距離を求める。このとき (移動力) >= (距離)
なら目的地の座標へ移動する。
(移動力) < (距離)
の場合、到達までの所要ターン数を ceil((距離) / (移動力))
で求める。
そして x, y, z 各方向について、残り移動距離を所要ターン数で切り捨て除算した値を移動量とし、その量だけ移動する(符号は目的地に近づく方向とする)。
いずれの場合も、移動元から移動先への距離と同じ量のエネルギーを消費する。計算誤差のため、惑星間の距離と実際の総消費エネルギーは必ずしも一致しない。