← 技術資料

ステージスクリプト命令リファレンス

ステージのイベントスクリプトで使う命令・条件命令・コンテキストマーカー・イベントの種類・変数・出撃データの項目の一覧。ミニステージを書くときに。

更新 2026-10-07

ステージの各イベントは 16 ビットのワードの並びです。命令コード 3D31〜3D79 のあとにその引数が続き、条件命令 3E00〜3E1D が条件ブロックを作り、コンテキストマーカー 3DD0〜3DDB が現在の主人公のルートや選択肢に応じて実行する部分を選び、FFFF でイベントが終わります。ミニステージでは命令を {"op": "3D45", "args": [1]} のように書き、条件命令とマーカーも同じ書き方です。

このページは config/data/original-jp-v1.json の stage_scripts テーブルから生成しています。「コードで確認」はゲームの処理関数から意味を確認済み、「構造を確認」は読み書きする場所は分かっているものの、役割はまだ完全には分かっていないことを示します。

各項目の根拠(どのゲームコードに基づくか)とゲーム内での検証結果は中国語で記録しています。各項目から中国語のページの該当箇所へリンクしています。

イベントの種類

イベントの種類によって、いつ判定されるかと 4 つの発動条件(header)の読み方が決まります。

種類 名前 判定のタイミング 発動条件
0 ターン開始 フェイズ 0 1. ターン数:現在のターン ≥ この値
2. フェイズ:現在のフェイズ 8010F5E8 と一致すること(1 味方 / 2 敵)
3. 予約
4. 予約
1 遅延カウント(3D52 で開始) フェイズ 0 1. 初期状態:実行時に 3D52 が 0xFD に書き換える
2. フェイズ:実行時に 3D52 が書き換える。4 = 任意
3. 予約
4. 予約
2 ユニット撃破/退場 常時 1. 条件変数:100〜115 の場合、変数が 3 の間は発動しない(8009DE7C が各ステージ開始時に 100〜114 を 3 にし、スクリプトが 0 を書くと有効になる)。それ以外の番号は調べない。0 は条件なし
2. キャラクター:このキャラクターが乗る機体の HP 割合が 0 になる
3. 予約
4. 予約
3 HP が割合を下回る 常時 1. キャラクター:キャラクター 138 は特例:機体の HP < 11 のときだけ続行
2. 割合:HP% ≤ この値 かつ出撃中
3. 予約
4. 予約
4 交戦イベント(戦闘後、フェイズ 7) フェイズ 7 1. キャラクター A:0 = 任意
2. キャラクター B:0 = 任意
3. 予約
4. 予約
5 交戦イベント(戦闘前、フェイズ 4) フェイズ 4 1. キャラクター A:0 = 任意
2. キャラクター B:0 = 任意
3. 予約
4. 予約
6 敵全滅 常時 1. 最終ターン:現在のターン(0 起算)≤ この値 のときだけ発動。8009E834 はこの値 < 現在のターンで戻る
2. フェイズ:4 = 任意
3. 予約
4. 予約
7 陣営の残り数 常時 1. 陣営の選択:2 → 第三勢力の数 0x9B2、それ以外は敵の数 0x9B1
2. 上限数:残り数 ≤ この値
3. フェイズ:4 = 任意
4. 条件変数:100〜115 の場合、変数が 3 の間は発動しない(8009DE7C が各ステージ開始時に 100〜114 を 3 にし、スクリプトが 0 を書くと有効になる)。それ以外の番号は調べない
8 エリア到達(3D57 で有効化) フェイズ 0、フェイズ 1、フェイズ 2、フェイズ 6 1. ターンまたはモード:数値 = 現在のターン ≥ この値。0xFF = 到達で発動。0xFE = 味方が全員離脱
2. 対象:N×1000 + キャラクター(または 500 + 陣営。21 = リストで最初に出撃中のキャラクター)
3. x の範囲:x0×10 + 幅
4. y の範囲:y0×10 + 高さ
9 説得(0x992、フェイズ 6) フェイズ 0、フェイズ 1、フェイズ 2、フェイズ 6 1. 説得する側:800A4634 が登録順に、未実行・条件成立・両者が上下左右に隣接している最初の枠を探し、engine+0x992 に書き込む
2. 相手:相手の陣営は問わない
3. 条件変数:0xFFF8(−8)は条件なし。それ以外は 変数 == 条件値 のときだけ「説得」が出る。ステージをまたぐ多段階の説得はこれでつなぐ
4. 条件値
10 登録のみ(ポーリングしない) なし 1. 予約
2. 予約
3. 予約
4. 予約
11 登録のみ(ポーリングしない) なし 1. 予約
2. 予約
3. 予約
4. 予約
12 開幕イベント(フェイズ C1) engine+4 = 0xC1 1. 予約
2. 予約
3. 予約
4. 予約
13 フェイズ C2 イベント(初期配置) engine+4 = 0xC2 1. 予約
2. 予約
3. 予約
4. 予約
14 終了イベント(フェイズ C3、3D4A の後) engine+4 = 0xC3 1. 予約
2. 予約
3. 予約
4. 予約

命令

3D31 · ワールドマップ:地点に配置(3D32 と同じ処理)

引数(1 ワード) · コードで確認 · 処理関数 0x800A0E64

  1. 地点 — world_location

根拠(中国語)

3D32 · ワールドマップ:地点に配置

引数(1 ワード) · コードで確認 · 処理関数 0x800A0E64

  1. 地点 — world_location

根拠(中国語)

3D33 · ワールドマップ:目的地へ移動

引数(1 ワード) · コードで確認 · 処理関数 0x800A0EFC

  1. 地点 — world_location

根拠(中国語)

3D34 · マップ切り替えと位置へのスクロール(マップ番号, x, y, 種類)

引数(4 ワード) · コードで確認 · 処理関数 0x8009F6FC

  1. マップ番号 — map:マップ番号(base:map_assets。8010F5EE に書き込む)
  2. x — x:マス x
  3. y — y:マス y
  4. 種類 — raw:未解明

根拠(中国語)

3D35 · カメラを位置へスクロール(位置, 待機フラグ)

引数(2 ワード) · コードで確認 · 処理関数 0x800A03E8

  1. 位置 — position:上位バイト x/下位バイト y。0x40〜0x44 は 3D54 で記憶した位置からの相対
  2. 待機フラグ — raw:未解明

根拠(中国語)

3D36 · 画面振動(強さ)

引数(1 ワード) · コードで確認 · 処理関数 0x8009F880

  1. 強さ — raw:未解明

根拠(中国語)

3D37 · マップエフェクト表示(エフェクト番号, 位置)

引数(2 ワード) · コードで確認 · 処理関数 0x8009FF2C

  1. エフェクト番号 — raw:未解明
  2. 位置 — position:上位バイト x/下位バイト y。0x40〜0x44 は 3D54 で記憶した位置からの相対

根拠(中国語)

3D38 · 待機(フレーム数)

引数(1 ワード) · コードで確認 · 処理関数 0x800A00F0

  1. フレーム数 — count:カウント

根拠(中国語)

3D39 · 効果音を再生

引数(1 ワード) · コードで確認 · 処理関数 0x8009FA4C

  1. 効果音 — se:効果音番号

根拠(中国語)

3D3A · BGM 再生(0 = 停止)

引数(1 ワード) · コードで確認 · 処理関数 0x8009FA70

  1. 曲 — bgm:曲番号

根拠(中国語)

3D3B · フェードイン/アウト(モード)

引数(1 ワード) · コードで確認 · 処理関数 0x8009F948

  1. モード — raw:未解明

根拠(中国語)

3D3C · ユニットを位置へ移動(パイロット, 位置)

引数(2 ワード) · コードで確認 · 処理関数 0x800A0360

  1. パイロット — actor:キャラクター番号(base:actors)
  2. 位置 — position:上位バイト x/下位バイト y。0x40〜0x44 は 3D54 で記憶した位置からの相対

根拠(中国語)

3D3D · 出撃(–, –, –, 機数:0 = 母艦選択、200 = 全自動、それ以外 = 出撃選択の上限, 基準グループ)

引数(5 ワード) · コードで確認 · 処理関数 0x800A09D0

  1. 予約(原作スクリプトは基準座標 x を写す) — raw:未解明
  2. 予約(原作スクリプトは基準座標 y を写す) — raw:未解明
  3. 引数(原作スクリプトでは常に 0) — raw:未解明
  4. 機数(0 母艦/200 自動/それ以外は上限) — raw:未解明
  5. 基準グループ — group:出撃データのグループ番号

根拠(中国語)

3D3E · 会話 · 表示モード 0

引数(1 ワード) · 会話の表示モード 0 · コードで確認 · 処理関数 0x8009F654

  1. テキスト — text:テーブル 0 のテキスト番号

根拠(中国語)

3D3F · 会話 · 表示モード 1

引数(1 ワード) · 会話の表示モード 1 · コードで確認 · 処理関数 0x8009F670

  1. テキスト — text:テーブル 0 のテキスト番号

根拠(中国語)

3D40 · 会話 · 表示モード 2

引数(1 ワード) · 会話の表示モード 2 · コードで確認 · 処理関数 0x8009F68C

  1. テキスト — text:テーブル 0 のテキスト番号

根拠(中国語)

3D41 · 会話 · 表示モード 3

引数(1 ワード) · 会話の表示モード 3 · コードで確認 · 処理関数 0x8009F6A8

  1. テキスト — text:テーブル 0 のテキスト番号

根拠(中国語)

3D42 · 会話 · 表示モード 4

引数(1 ワード) · 会話の表示モード 4 · コードで確認 · 処理関数 0x8009F6C4

  1. テキスト — text:テーブル 0 のテキスト番号

根拠(中国語)

3D43 · 会話 · 表示モード 5

引数(1 ワード) · 会話の表示モード 5 · コードで確認 · 処理関数 0x8009F6E0

  1. テキスト — text:テーブル 0 のテキスト番号

根拠(中国語)

3D44 · 選択肢を表示(ウィンドウ枠, 選択肢の数, 選択肢テキスト)

引数(3 ワード) · コードで確認 · 処理関数 0x8009FA94

  1. ウィンドウ枠 — raw:未解明
  2. 選択肢の数 — count:カウント
  3. 選択肢テキスト — text:テーブル 0 のテキスト番号

根拠(中国語)

3D45 · 出撃データのグループを配置(登場)

引数(1 ワード) · コードで確認 · 処理関数 0x8009FC04

  1. グループ — group:出撃データのグループ番号

根拠(中国語)

3D46 · ユニット退場(キャラクターまたはグループ, 即時)

引数(2 ワード) · コードで確認 · 処理関数 0x8009FDC4

  1. キャラクターまたはグループ — actor_or_group:500 未満はキャラクター番号、500 以上はグループ(値 − 500)
  2. 即時 — bool:スイッチ

根拠(中国語)

3D47 · 会話ウィンドウを閉じて 32 フレーム待機

引数なし · コードで確認 · 処理関数 0x800A013C

根拠(中国語)

3D48 · 会話ウィンドウを閉じる

引数なし · コードで確認 · 処理関数 0x800A0194

根拠(中国語)

3D49 · スクリプト戦闘演出(戦闘テーブル A, 戦闘テーブル B)

引数(2 ワード) · コードで確認 · 処理関数 0x800A10F0

  1. 戦闘テーブル A — battle_entry
  2. 戦闘テーブル B — battle_entry

根拠(中国語)

3D4A · ステージクリア処理

引数なし · コードで確認 · 処理関数 0x800A01CC

根拠(中国語)

3D4B · 次のシーン番号を設定(500 = 8010F5F2 を復元)

引数(1 ワード) · コードで確認 · 処理関数 0x800A0260

  1. シーン番号 — scene:シーン番号

根拠(中国語)

3D4C · ゲームオーバー

引数なし · コードで確認 · 処理関数 0x800A02E0

根拠(中国語)

3D4D · ワールドマップから戦場へ切り替え

引数なし · コードで確認 · 処理関数 0x800A031C

根拠(中国語)

3D4E · ウィンドウを閉じて 1 フレーム譲る

引数なし · コードで確認 · 処理関数 0x800A0468

根拠(中国語)

3D4F · ユニット撃破(キャラクターまたはグループ)

引数(1 ワード) · コードで確認 · 処理関数 0x8009FE9C

  1. キャラクターまたはグループ — actor:キャラクター番号(base:actors)

根拠(中国語)

3D50 · 機体の変形(キャラクター, 元の機体, 変形後の機体)

引数(3 ワード) · コードで確認 · 処理関数 0x800A04AC

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 元の機体 — unit:機体番号(base:units)
  3. 変形後の機体 — unit:機体番号(base:units)

根拠(中国語)

3D51 · MAP 兵器を発射(キャラクター, 機体, MAP 兵器, 方向, –)

引数(5 ワード) · コードで確認 · 処理関数 0x800A051C

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 機体 — unit:機体番号(base:units)
  3. MAP 兵器 — weapon
  4. 方向 — raw:未解明
  5. – — raw:未解明

根拠(中国語)

3D52 · 遅延カウントイベントを開始(枠, ターン数, フェイズ)

引数(3 ワード) · コードで確認 · 処理関数 0x800A05D0

  1. タイプ 1 の枠 — event_slot_type1:このシーンのタイプ 1 イベントの登録順
  2. ターン数 — count:カウント
  3. フェイズ — side:フェイズ 1 味方 / 2 敵 / 3 第三勢力(4 = 任意)

根拠(中国語)

3D53 · 遅延カウントイベントを停止(枠)

引数(1 ワード) · コードで確認 · 処理関数 0x800A0638

  1. タイプ 1 の枠 — event_slot_type1:このシーンのタイプ 1 イベントの登録順

根拠(中国語)

3D54 · キャラクターの位置を記憶

引数(1 ワード) · コードで確認 · 処理関数 0x800A0678

  1. キャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3D55 · 精神コマンド発動/キャラクターへカメラ切り替え(キャラクター, 精神番号または 30)

引数(2 ワード) · コードで確認 · 処理関数 0x800A0714

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 精神番号 — spirit

根拠(中国語)

3D56 · 緑の目標エリアを表示(座標 A, 座標 B, –)

引数(3 ワード) · コードで確認 · 処理関数 0x800A0780

  1. 座標 A — raw:未解明
  2. 座標 B — raw:未解明
  3. 予約 — raw:未解明

根拠(中国語)

3D57 · エリア到達イベント枠を有効化(枠, 値)

引数(2 ワード) · コードで確認 · 処理関数 0x800A0BD0

  1. タイプ 8 の枠 — event_slot_type8:このシーンのタイプ 8 イベントの登録順
  2. 値 — bool:スイッチ

根拠(中国語)

3D58 · ユニットの所属変更(キャラクター, 変更先の陣営)

引数(2 ワード) · コードで確認 · 処理関数 0x800A0C14

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 変更先の陣営 — raw:未解明

根拠(中国語)

3D59 · 出撃不可(キャラクター。500 以上は 500 + 機体番号)

引数(1 ワード) · コードで確認 · 処理関数 0x800A0C80

  1. キャラクターまたは 500 + 機体 — raw:未解明

根拠(中国語)

3D5A · 部隊編成(キャラクター, 引数, 機体, モード/旧機体)

引数(4 ワード) · コードで確認 · 処理関数 0x800A0B3C

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 引数 — raw:未解明
  3. 機体 — unit:機体番号(base:units)
  4. モード/旧機体 — raw:未解明

根拠(中国語)

3D5B · 資金を加算:引数 × 1000

引数(1 ワード) · コードで確認 · 処理関数 0x800A0D24

  1. 千単位 — value:数値

根拠(中国語)

3D5C · 合体/分離(キャラクター, 1 = 合体、0 = 分離)

引数(2 ワード) · コードで確認 · 処理関数 0x800A0D68

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. モード — raw:未解明

根拠(中国語)

3D5D · 合体ロボの形態を設定(1 = 合体、0 = 分離, 系統 0 = ダンクーガ、1 = コン・バトラーV)

引数(2 ワード) · コードで確認 · 処理関数 0x800A1010

  1. 形態 — raw:未解明
  2. 系統 — raw:未解明

根拠(中国語)

3D5E · 部隊名入力画面を開く

引数なし · コードで確認 · 処理関数 0x800A1050

根拠(中国語)

3D5F · 全パイロットの気力 −30(下限 50)

引数(1 ワード) · コードで確認 · 処理関数 0x800A1078

  1. 引数 — raw:未解明

根拠(中国語)

3D60 · 味方部隊を隊列に並べる(開始 x, 開始 y, 1 列の数)

引数(3 ワード) · コードで確認 · 処理関数 0x800A10AC

  1. x — x:マス x
  2. y — y:マス y
  3. 1 列の数 — count:カウント

根拠(中国語)

3D61 · 「味方全滅で敗北」判定を一時停止(スイッチ)

引数(1 ワード) · コードで確認 · 処理関数 0x800A1328

  1. 停止 — bool:スイッチ

根拠(中国語)

3D62 · キャラクターの差し替え(キャラクター → キャラクター)

引数(2 ワード) · コードで確認 · 処理関数 0x800A1224

  1. 元のキャラクター — actor:キャラクター番号(base:actors)
  2. 新しいキャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3D63 · 着地/飛行の切り替え(キャラクター)

引数(1 ワード) · コードで確認 · 処理関数 0x800A1264

  1. キャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3D64 · 同乗パイロットを降ろす(キャラクター。500,500 = アイシャがマナミの母艦へ移る)

引数(2 ワード) · コードで確認 · 処理関数 0x800A12CC

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. モード — raw:未解明

根拠(中国語)

3D65 · 勝利/敗北条件を設定(勝利条件, 敗北条件)

引数(2 ワード) · コードで確認 · 処理関数 0x800A1360

  1. 勝利条件 — victory_condition
  2. 敗北条件 — defeat_condition

根拠(中国語)

3D66 · 会話中にカメラを話し手へ移さない(スイッチ)

引数(1 ワード) · コードで確認 · 処理関数 0x800A13A4

  1. 話し手を追わない — bool:スイッチ

根拠(中国語)

3D67 · 機体強化/合体演出(演出番号)

引数(1 ワード) · コードで確認 · 処理関数 0x800A13F0

  1. 演出番号 — raw:未解明

根拠(中国語)

3D68 · カメラを選択中のユニットへ戻す

引数なし · コードで確認 · 処理関数 0x800A1458

根拠(中国語)

3D69 · ユニットの行動状態を設定(キャラクター, 1 = 行動可能、0 = 行動不能)

引数(2 ワード) · コードで確認 · 処理関数 0x800A14A4

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 行動状態 — raw:未解明

根拠(中国語)

3D6A · ゴッドマーズ合体処理(モード)

引数(1 ワード) · コードで確認 · 処理関数 0x800A14E4

  1. モード — raw:未解明

根拠(中国語)

3D6B · 選択マークの切り替え(キャラクター, 機体, 1 = 付ける、0 = 外す)

引数(3 ワード) · コードで確認 · 処理関数 0x800A158C

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 機体 — unit:機体番号(base:units)
  3. スイッチ — raw:未解明

根拠(中国語)

3D6C · 機体の改造段階を設定(機体, 段階)

引数(2 ワード) · コードで確認 · 処理関数 0x800A15D0

  1. 機体 — unit:機体番号(base:units)
  2. 段階 — value:数値

根拠(中国語)

3D6D · 現在のフェイズを 1(味方フェイズ)にする

引数(1 ワード) · コードで確認 · 処理関数 0x800A1610

  1. 引数 — raw:未解明

根拠(中国語)

3D6E · ユニット退場(キャラクター)

引数(1 ワード) · コードで確認 · 処理関数 0x800A1644

  1. キャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3D6F · 武器を解放(武器番号)

引数(1 ワード) · コードで確認 · 処理関数 0x800A1680

  1. 武器番号 — raw:未解明

根拠(中国語)

3D70 · 同乗キャラクターを乗せる(パイロット, 同乗キャラクター)

引数(2 ワード) · コードで確認 · 処理関数 0x800A16BC

  1. パイロット — actor:キャラクター番号(base:actors)
  2. 同乗キャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3D71 · エンディングへ(戻らない)

引数なし · コードで確認 · 処理関数 0x800A02B8

根拠(中国語)

3D72 · ワールドマップの移動手段を設定(乗り物番号)

引数(1 ワード) · コードで確認 · 処理関数 0x800A0FCC

  1. 乗り物番号 — raw:未解明

根拠(中国語)

3D73 · 部隊分割:既定のリストで選択(1 = リスト A、0 = リスト B)

引数(1 ワード) · コードで確認 · 処理関数 0x800A16FC

  1. リスト — raw:未解明

根拠(中国語)

3D74 · 部隊分割の選択マークをすべて外す

引数なし · コードで確認 · 処理関数 0x800A1924

根拠(中国語)

3D75 · 母艦の搭載ユニットを発進(キャラクター。艦長なら全搭載ユニット、999 = 46 ブライト)

引数(1 ワード) · コードで確認 · 処理関数 0x800A197C

  1. キャラクター(艦長なら全機発進、999 = 46) — actor:キャラクター番号(base:actors)

根拠(中国語)

3D76 · 処理関数なし

引数なし · コードで確認

根拠(中国語)

3D77 · 処理関数なし

引数なし · コードで確認

根拠(中国語)

3D78 · 何もしない(到達不能)

引数なし · コードで確認 · 処理関数 0x800A01BC

根拠(中国語)

3D79 · 何もしない(到達不能)

引数なし · コードで確認 · 処理関数 0x800A01C4

根拠(中国語)

条件命令

条件命令は ACC レジスタと変数を判定・設定します。「開始」はブロックを始め、偽のときは対応する「ブロック終了」(3E1D)まで飛ばします。ブロックは入れ子にできます。

3E00 · ACC = 0

引数なし · 種類:文 · コードで確認 · 処理関数 0x800A2388

根拠(中国語)

3E01 · キャラクターの HP 割合 < しきい値(かつ出撃中)なら ACC = 値

引数(3 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A1FBC

  1. キャラクター — actor:キャラクター番号(base:actors)
  2. 割合 — value:数値
  3. ACC の値 — value:数値

根拠(中国語)

3E02 · 変数 ≠ 値 なら

引数(2 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A207C

  1. 変数 — flag:2 ビット変数 0〜199
  2. 値 — value:数値

根拠(中国語)

3E03 · 変数 = 値 なら ACC = 値 2

引数(3 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A20C4

  1. 変数 — flag:2 ビット変数 0〜199
  2. 値 — value:数値
  3. ACC の値 — value:数値

根拠(中国語)

3E04 · 現在のターン < ターン数 なら ACC = 値

引数(2 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A2344

  1. ターン数 — value:数値
  2. ACC の値 — value:数値

根拠(中国語)

3E05 · 常に真(未実装)

引数なし · 種類:開始 · コードで確認

根拠(中国語)

3E06 · ACC = !(レベル[キャラクター A] < レベル[キャラクター B])

引数(2 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A22CC

  1. キャラクター A — actor:キャラクター番号(base:actors)
  2. キャラクター B — actor:キャラクター番号(base:actors)

根拠(中国語)

3E07 · 常に真(未実装)

引数なし · 種類:開始 · コードで確認

根拠(中国語)

3E08 · ACC = 値 なら

引数(1 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A23C4

  1. 値 — value:数値

3E09 · ACC ≥ 値 なら

引数(1 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A23EC

  1. 値 — value:数値

3E0A · ACC ≠ 値 なら

引数(1 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A2438

  1. 値 — value:数値

3E0B · ACC ≥ 値 なら

引数(1 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A23EC

  1. 値 — value:数値

根拠(中国語)

3E0C · ACC < 値 なら

引数(1 ワード) · 種類:開始 · コードで確認 · 処理関数 0x800A2414

  1. 値 — value:数値

3E0D · ACC = 撃墜数[キャラクター]

引数(1 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A228C

  1. キャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3E0E · 変数 = (変数 + 1) mod 4

引数(1 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A2198

  1. 変数 — flag:2 ビット変数 0〜199

3E0F · 変数 = (変数 − 1) mod 4(0 以下なら 3)

引数(1 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A220C

  1. 変数 — flag:2 ビット変数 0〜199

3E10 · 選択肢の結果 = 1 番目 なら

引数なし · 種類:開始 · コードで確認 · 処理関数 0x800A2394

根拠(中国語)

3E11 · 選択肢の結果 = 2 番目 なら

引数なし · 種類:開始 · コードで確認 · 処理関数 0x800A23A4

根拠(中国語)

3E12 · 選択肢の結果 = 3 番目 なら

引数なし · 種類:開始 · コードで確認 · 処理関数 0x800A23B4

根拠(中国語)

3E13 · 変数 = 値

引数(2 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A2158

  1. 変数 — flag:2 ビット変数 0〜199
  2. 値 — value:数値

根拠(中国語)

3E14 · ACC = 値

引数(1 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A2138

  1. 値 — value:数値

3E15 · ACC = 陣営のユニット数

引数(1 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A24FC

  1. 陣営 — faction:陣営 0 味方 / 1 敵 / 2 第三勢力

根拠(中国語)

3E16 · ACC = 交戦相手のキャラクター(引数のキャラクター以外)

引数(1 ワード) · 種類:文 · 構造を確認 · 処理関数 0x800A2478

  1. キャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3E17 · ACC = engine+0x9B6(符号付きバイト)

引数なし · 種類:文 · 構造を確認 · 処理関数 0x800A2460

根拠(中国語)

3E18 · ACC = 現在のシーン番号

引数なし · 種類:文 · コードで確認 · 処理関数 0x800A2570

根拠(中国語)

3E19 · engine+0x998 = engine+0x9A8

引数なし · 種類:文 · 構造を確認 · 処理関数 0x800A2590

根拠(中国語)

3E1A · ACC = engine+0x998

引数なし · 種類:文 · 構造を確認 · 処理関数 0x800A25A0

3E1B · ACC = キャラクターの出撃状態(0 不在 / 1 出撃中 / 3 退場済み)

引数(1 ワード) · 種類:文 · コードで確認 · 処理関数 0x800A1F7C

  1. キャラクター — actor:キャラクター番号(base:actors)

根拠(中国語)

3E1C · 無条件ブロック開始(常に真)

引数なし · 種類:開始 · コードで確認 · 処理関数 0x800A2584

根拠(中国語)

3E1D · 条件ブロック終了

引数なし · 種類:ブロック終了 · コードで確認 · 処理関数 0x800A1D60

根拠(中国語)

コンテキストマーカー

マーカーに来たとき、現在の状況に合えばそのまま続け、合わなければ次に合うマーカーかイベントの終わりまで飛ばします。

マーカー 名前 一致の条件
3DD0 共通部分(どの状況でも) 常に
3DD1 アークライト・ブルー ルート 現在の主人公
3DD2 セレイン・メネス ルート 現在の主人公
3DD3 ブラッド・スカイウィンド ルート 現在の主人公
3DD4 マナミ・ハミル ルート 現在の主人公
3DD5 リアル系主人公(3DD1/3DD2) 主人公の分類
3DD6 スーパー系主人公(3DD3/3DD4) 主人公の分類
3DD7 男性主人公(3DD1/3DD3) 主人公の分類
3DD8 女性主人公(3DD2/3DD4) 主人公の分類
3DD9 選択肢 1 番目 選択肢の結果
3DDA 選択肢 2 番目 選択肢の結果
3DDB 選択肢 3 番目 選択肢の結果

引数の種類

引数の種類は値の範囲を表します。表にない種類は各命令の引数名を参照してください。

種類 意味
actor キャラクター番号(base:actors)
text テーブル 0 のテキスト番号
unit 機体番号(base:units)
flag 2 ビット変数 0〜199
scene シーン番号
group 出撃データのグループ番号
position 上位バイト x/下位バイト y。0x40〜0x44 は 3D54 で記憶した位置からの相対
x マス x
y マス y
count カウント
frames フレーム数
se 効果音番号
bgm 曲番号
event_slot_type1 このシーンのタイプ 1 イベントの登録順
event_slot_type8 このシーンのタイプ 8 イベントの登録順
actor_or_group 500 未満はキャラクター番号、500 以上はグループ(値 − 500)
bool スイッチ
value 数値
side フェイズ 1 味方 / 2 敵 / 3 第三勢力(4 = 任意)
deploy_side 出撃データの陣営 0/1/2(3 → 0、4 → 2)
raw 未解明
faction 陣営 0 味方 / 1 敵 / 2 第三勢力
map マップ番号(base:map_assets。8010F5EE に書き込む)

変数

2 ビット(値 0〜3)の変数が 200 個あり、0x8015E818 に置かれます。条件命令で読み書きし、ステージをまたいで保持されます。

出撃データ(28 バイト)

出撃データはステージのユニット配置で、1 件 14 ハーフワード、グループ番号 999 で終わります。「ミニステージの項目」はステージ定義の deployments での項目名です。

オフセット バイト 名前 ミニステージの項目 確認の程度
+0 2 グループ番号 group コードで確認
+2 2 x x コードで確認
+4 2 y y コードで確認
+6 2 パイロット actor コードで確認
+8 1 未解明のバイト byte8 未解明
+9 1 レベル補正 level_offset コードで確認
+10 2 機体 unit コードで確認
+12 2 改造インデックス upgrade コードで確認
+14 6 未解明 raw14, raw16, raw18 未解明
+20 2 陣営 faction コードで確認
+22 2 行動フラグ behavior 構造を確認
+24 2 追加値 extra 構造を確認
+26 2 未解明 raw26 未解明