了解だよ。
ここまで積み上げてきた BattlefieldOS の戦闘体系を、いったんここで「継続のための情報整理」として 完全に構造化してまとめるね。
次のステップに進むための“地図”として使えるように、階級・方向セット・射程・特殊挙動をすべて整理する。


🧭 BattlefieldOS:戦闘システムの全体整理(現時点の確定事項)


🧱 1. 駒の移動について

  • すべての駒は自由に動ける
    → チェスのような移動制限はない
    → 攻撃方向だけが階級ごとに異なる

🎯 2. 攻撃は「方向セット × 射程 × 特殊挙動」で決まる

  • プレイヤーは「撃つ or 撃たない」だけ
  • OS が階級ごとの方向セットを使って攻撃を展開
  • 弾は立方体
  • 階級ごとに挙動が異なる

🧩 3. 階級ごとの仕様(確定版)

◆ ポーン(Pawn)

  • 方向:ForwardOnly(前+斜め前)
  • 射程:1
  • 挙動:体当たりは自爆
  • 前方向はチーム依存(+Z / -Z)

◆ 近衛ポーン(Guard Pawn)

  • 方向:ForwardOnly(前+斜め前)
  • 射程
    • 通常:1
    • キング隣接時:2
  • 挙動:体当たりは自爆
  • キングとのシナジーを持つ

◆ ナイト(Knight)

  • 方向:3D ナイトの L 字方向(24方向)

    • (±2, ±1, 0)
    • (±2, 0, ±1)
    • (±1, ±2, 0)
    • (±1, 0, ±2)
    • (0, ±2, ±1)
    • (0, ±1, ±2)
  • 射程:5
    → 1回跳び(距離 √5)
    → 2回跳び(距離 √20)まで可能
    最大 2 回跳びの組み合わせ(重複除去)

  • 挙動

    • ナイト自身は跳ばない(自由移動)
    • 跳び先に“静的な立方体”を置く(地雷)
    • 地雷は動かない
    • 誰かが触れたら破裂
    • 他の弾が触れても破裂(相殺)

◆ ビショップ(Bishop)

  • 方向:12方向(3平面の斜め)
    • XY:4
    • YZ:4
    • ZX:4
  • 射程:バトルフィールド端まで
  • 挙動:直線的に弾を飛ばし、端で破裂

◆ ルーク(Rook)

  • 方向:6方向(軸方向)
    • ±X, ±Y, ±Z
  • 射程:バトルフィールド端まで
  • 挙動:直線的に弾を飛ばし、端で破裂

◆ クイーン(Queen)

  • 方向:26方向(全方向)
    • 6軸
    • 12平面斜め
    • 8立体斜め
  • 射程:バトルフィールド端まで
  • 挙動:最強の遠距離攻撃

◆ キング(King)

  • 方向:26方向(全方向)
  • 射程:3(短い)
  • 挙動:近距離制圧
  • 近衛ポーンの射程強化のトリガー

🔥 4. 弾の共通仕様

  • 弾は立方体
  • ルーク/ビショップ/クイーンの弾は 等速で直進
  • ナイトの弾は 静的(地雷)
  • 弾同士が触れたら破裂(相殺)
  • ユニットに当たれば破裂
  • 体当たりは階級によって自爆

🧠 5. OS の責務分担(整理)

Grid(空間 OS)

  • 方向セットの定義
  • セル座標変換
  • 範囲チェック

BattlefieldOS(ゲーム OS)

  • 射程計算
  • ForwardOnly の決定(チーム依存)
  • ナイトの跳び方向生成
  • 近衛ポーンの射程強化判定
  • 弾の生成・破裂処理

BattlefieldClient(表示)

  • 弾の可視化
  • 地雷の表示
  • 爆発エフェクト

📌 6. 次に進むための“選択肢”

ここから先は、どこを深掘りするかで分岐する。

A. ナイトの「2回跳び方向セット」の重複除去アルゴリズム

→ これは数学的にも OS 的にも面白い

B. 地雷(静的弾)の OS 実装

→ ナイトの攻撃を完成させる

C. ForwardOnly(前+斜め前)の最終コード

→ ポーン系の完成

D. Projectile の相殺処理

→ 全階級に関わる基盤

E. バトルフィールド端での破裂処理

→ ルーク/ビショップ/クイーンの完成


次はどこを進めたい?