WOLF RPGエディター(ウディタ)[3.175]/基本システム【サイトトップへ戻る】
■コモンイベント[164:X[戦]行動実行結果算出]の解説
(更新:2023/04/24)


コモンイベント[164:X[戦]行動実行結果算出]について解説します。


ショートカット
■コモンイベント[164:X[戦]行動実行結果算出]って何?
■スロットに関して
■[入力の数/結果を返す]について
■コモンイベント呼び出しの一覧
■セルフ変数の一覧
■イベントコマンドの解説

基本システムに関する説明は別ページに記載しています。
【基本システムに関する説明ページを見る】

コモンイベントの一覧と補足説明のページも用意しています。
【コモンイベントの一覧と補足説明のページを開く】


  
■コモンイベント[164:X[戦]行動実行結果算出]って何?

コモンイベント[164:X[戦]行動実行結果算出]は、
ダメージや回復の処理を実行する前に可変DB[10:×┏ 戦闘一時ステータス[基]]の情報を更新したり、
全体攻撃(全体回復)で次に誰を対象にするのかを決定したり、
技能のアニメーション表示やアイテム使用時のSEを鳴らしたり、
ダメージや回復を行う処理を呼び出したりします。



可変DB[10:×┏ 戦闘一時ステータス[基]]の更新は、
コモンイベント[146:X[戦]一時ステ計算<初期化>]
コモンイベント[147:X[戦]一時ステ計算<装備補正>]
コモンイベント[148:X[戦]一時ステ計算<状態補正>]を呼び出して実行。

次のターゲットの決定は、コモンイベント[163:X[戦]敵・味方行動対象算出]を呼び出して決定。

技能を使用した際のアニメーションの表示は、コモンイベント[183:X[戦]技能エフェクト描画]を呼び出して実行。

ダメージ処理や回復処理は、コモンイベント[165:X[戦]┗単体処理]を呼び出して実行します。



ユーザーDB[0:技能]項目[18:発動回数/武器の影響]の設定が「[-1]武器依存 [武器効果も発動]」の場合は、
8つの装備欄(武器欄1つ+防具欄7つ)を1つずつ処理するため、
呼び出し元となるコモンイベント[197:X┃┗◆1行動ループ]から
このコモンイベント[164:X[戦]行動実行結果算出]が8回呼び出され、
[-2]武器数×2 [武器効果も発動]」の場合は、16回呼び出されます。

武器依存では無い場合は、ユーザーDB[0:技能]項目[18:発動回数/武器の影響]に設定された回数だけ、
コモンイベント[197:X┃┗◆1行動ループ]からコモンイベント[164:X[戦]行動実行結果算出]が呼び出されます。


▲トップへ戻る▲


  
■スロットに関して

このページにある「スロット」とは、可変DB[10:×┏ 戦闘一時ステータス[基]]データIDの事を言っています。

スロットの番号は、主人公の場合はパーティの並び順で一人目から「0、1、2…」と付けられ、
敵キャラの場合はユーザーDB[13:敵グループ]項目[0〜6]項目ID+10で「10、11、12…」と付けられます。

ユーザーDB[13:敵グループ]項目[0〜6](項目[3]に設定した敵キャラの場合はスロット[13]になる)


▼スロット(可変DB[10:×┏ 戦闘一時ステータス[基]]のデータID)


なお、
可変DB[11:×┣ 属性耐性計算結果]
可変DB[12:×┣ 状態耐性計算結果]
可変DB[13:×┣ 状態リスト]

の3つも可変DB[10:×┏ 戦闘一時ステータス[基]]と同じくスロットで処理しています。


▲トップへ戻る▲


  
■[入力の数/結果を返す]について

コモンイベント[164:X[戦]行動実行結果算出][入力の数/結果を返す]の設定は、
基本システムが必要に応じて自動的に行いますので、基本システムの利用者は何も設定する必要はありません。

▼数値1/コモンセルフ0「処理番号」

今回処理する可変DB[14:×┣ コマンド処理リスト]データIDを設定。
▼数値2/コモンセルフ1「武器の指定」

ユーザーDB[0:技能]項目[18:発動回数/武器の影響]の設定が武器依存であるかどうかを設定。

武器依存の場合は、今回の処理は可変DB[10:×┏ 戦闘一時ステータス[基]]項目[18〜25]に設定されて
いる武器の中で、どの武器を使って処理するのかを設定。
この可変DB[10:×┏ 戦闘一時ステータス[基]]項目[18〜25]の設定は、
元々可変DB[0:主人公ステータス]項目[28〜35]にあった設定を複製したものになります。
[-1]通常処理 ユーザーDB[0:技能]項目[18:発動回数/武器の影響]が武器依存では無い時
[0]武器欄の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[18:装備中の武器]の武器で処理
[1]防具欄1の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[19:装備中の防具1]の武器で処理
[2]防具欄2の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[20:装備中の防具2]の武器で処理
[3]防具欄3の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[21:装備中の防具3]の武器で処理
[4]防具欄4の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[22:装備中の防具4]の武器で処理
[5]防具欄5の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[23:装備中の防具5]の武器で処理
[6]防具欄6の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[24:装備中の防具6]の武器で処理
[7]防具欄7の武器を使用 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[25:装備中の防具7]の武器で処理
▼数値3/コモンセルフ2「カウンター抑制?」

カウンターを発動させるかどうかを設定。
連続攻撃の時には、最後の一撃のみに「[0]通常(カウンター有り)」を設定し、
連続攻撃の途中の場合は「[1]カウンター抑制」を設定します。
[0]通常(カウンター有り) カウンターの発動をチェックする
[1]カウンター抑制 カウンターは発動させない


▲トップへ戻る▲


  
■コモンイベント呼び出しの一覧

コモンイベント[164:X[戦]行動実行結果算出]を呼び出しているコモンイベント、
またはコモンイベント[164:X[戦]行動実行結果算出]から呼び出しているコモンイベントの一覧です。

コモンイベント[164:X[戦]行動実行結果算出]を呼び出しているコモンイベント
コモンイベント(ID順) 処理内容
197:X┃┗◆1行動ループ 各キャラクターが戦闘行動を行う時に呼び出されます。

コモンイベント[164:X[戦]行動実行結果算出]から呼び出しているコモンイベント
コモンイベント(ID順) 処理内容
146:X[戦]一時ステ計算<初期化> 可変DB[10:×┏ 戦闘一時ステータス[基]]の初期化などを実行。
147:X[戦]一時ステ計算<装備補正> 装備による能力値の増減を、
可変DB[10:×┏ 戦闘一時ステータス[基]]に設定。
148:X[戦]一時ステ計算<状態補正> 状態異常による能力値の増減を、
可変DB[10:×┏ 戦闘一時ステータス[基]]に設定。
163:X[戦]敵・味方行動対象算出 次に誰をターゲットにするのかを設定。
165:X[戦]┗単体処理 ダメージ処理、回復処理、状態異常の回復・付与などを処理。
174:X[戦]味方欄_座標算出 指定した並び順にいる主人公のステータス画面の表示位置を取得。
175:X[戦]敵キャラ_座標算出 指定した並び順にいる敵キャラの表示位置を取得。
183:X[戦]技能エフェクト描画 アニメーションを表示。

【コモンイベント呼び出しの一覧を別ウィンドウで表示】


▲トップへ戻る▲


  
■セルフ変数の一覧

コモンイベント[164:X[戦]行動実行結果算出]のセルフ変数の一覧です。

セルフ変数
番号 名前 使用内容
0 処理番号 今回処理する可変DB[14:×┣ コマンド処理リスト]データIDを設定。
1 武器の指定 武器依存の攻撃かどうか、
また武器依存の場合は、どの装備欄にある武器を使うのかを設定。
-1 武器依存ではない処理
0 武器欄の武器で処理
1 防具欄1の武器で処理
2 防具欄2の武器で処理
3 防具欄3の武器で処理
4 防具欄4の武器で処理
5 防具欄5の武器で処理
6 防具欄6の武器で処理
7 防具欄7の武器で処理
2 カウンター抑制? カウンターを発動させない場合は「1」を設定。
9 一時文字列 ユーザーDB[2:アイテム]項目[20:使用時SE]に設定されている
SEのファイルアドレスを取得する時に使用。
10 一時変数A データベースからの数値の取得やデータIDの取得などで使用。
11 一時変数B ユーザーDBの設定値の取得に使用。
12 一時変数C データIDの取得に使用。
16 発動スロット 可変DB[14:×┣ コマンド処理リスト]項目[0:発動者番号]を取得。
17 技能コード 可変DB[14:×┣ コマンド処理リスト]項目[3:発動技能]を取得。
設定値 行動内容
-2 逃走(敵キャラ用)
-1 何もしない
0〜9999 発動する技能(ユーザーDB[0:技能]データID
10000〜19999 アイテムを使用(下4桁はユーザーDB[2:アイテム]データID
20000〜29999 武器をアイテム使用(下4桁はユーザーDB[3:武器]データID
30000〜39999 防具をアイテム使用(下4桁はユーザーDB[4:防具]データID
18 対象者 可変DB[14:×┣ コマンド処理リスト]項目[2:受け側番号]を取得。
設定値 ターゲット
-21 敵キャラ1体が対象。(ランダムで決定)
-20 敵キャラ全体が対象。
-11 主人公1体が対象。(ランダムで決定)
-10 主人公全体が対象。
0以上 可変DB[10:×┏ 戦闘一時ステータス[基]]データIDが対象。
19 装備の有無 コモンイベント[147:X[戦]一時ステ計算<装備補正>]からの戻り値を取得。
指定した防具の装備欄に武器が無かった場合は「0」を取得し、
コモンイベント[164:X[戦]行動実行結果算出]の処理を終了。
23 次対象 コモンイベント[163:X[戦]敵・味方行動対象算出]から次のターゲットとなる
スロットを取得。
ターゲットが居ない場合は「-1」を取得し、
コモンイベント[164:X[戦]行動実行結果算出]の処理を終了。
25 アニメ表示フラグ 「1」の場合は、行動を行うたびにアニメーションを表示する。
ユーザーDB[0:技能]項目[19:アニメーション]の設定がある場合で、
武器依存ではない場合で全体攻撃(全体回復)の場合は、
1回だけアニメーションを表示し、「0」にする。
26 全体攻撃? コモンイベント[183:X[戦]技能エフェクト描画]からの戻り値で
アニメーションが全体攻撃(全体回復)だった場合は「1」を取得。
27 アニメ番号 ユーザーDB[0:技能]項目[19:アニメーション]に設定されている
アニメーションID(ユーザーDB[1:┗ アニメーション]データID)を取得。
28 対象X アニメーションを表示するX位置を設定。
29 対象Y アニメーションを表示するY位置を設定。
34 アニメ用技能番号 アニメーションを行う技能ID(ユーザーDB[0:技能]データID)を設定。
アイテム使用の場合は、使用して発動する技能IDを設定。
アイテム使用でも技能の発動が無い場合は、
セルフ[34]の数値は10000以上となり、この場合はアニメーションを表示しないが、
ユーザーDB[2:アイテム]項目[20:使用時SE]にSEのファイルアドレスが設定
されている場合は、そのSEを演奏する。
36 技能の効果対象 回復アイテムの場合は、ユーザーDB[2:アイテム]項目[9:効果対象]を取得。
0 味方一人
1 自分自身
2 味方全員
38 一時コード セルフ[10]に保存された
可変DB[14:×┣ コマンド処理リスト]項目[3:発動技能]の値を代入。

【変数の一覧を別ウィンドウで表示】


▲トップへ戻る▲


  
■イベントコマンドの解説

イベントコマンドの解説を行います。

なお、見た目で設定内容が分かるような簡単なイベントコマンドの解説は省略しています。

処理内容
9-12 今回処理する可変DB[14:×┣ コマンド処理リスト]のデータをセルフ[16〜18]に取得。
セルフ[17]セルフ[34]に複製。
13-48 アイテム使用の場合は分岐し、アイテム使用で技能が発動する場合は、
発動する技能ID(ユーザーDB[0:技能]データID)を取得。
ここで取得した技能IDは、アニメーションの表示で使用。
アイテム使用でも技能使用ではない場合はセルフ[34]を「10000以上」のままにする事で、
アニメーションが実行されなくなり、代わりにアイテム使用時のSE演奏有無の判断へ移動する。
55-131 ■ループ開始
全体攻撃(全体回復)の場合は人数分だけループし、単体の場合は1回だけ処理する。
  57-58 ▼ 対象とする相手がいる限り処理を続ける
コモンイベント[163:X[戦]敵・味方行動対象算出]から
次のターゲットのスロットをセルフ[23]に取得。
  60-105 ▼ 発動技能が「単体」なら、今のコマンドのターゲットを、今選んだスロットで上書き
▼ これは、AI側で「ランダム」になっていた対象を、一度目の攻撃対象に固定する目的がある
セルフ[10]に発動させる技能ID(ユーザーDB[0:技能]データID)を設定。
アイテム使用で技能を発動する場合は、その技能IDをセルフ[10]に設定。
回復アイテムの場合は、セルフ[10]は「10000〜19999」のままで、
ユーザーDB[2:アイテム]項目[9:効果対象]セルフ[36]に取得。
セルフ[36] 回復対象
0 味方一人
1 自分自身
2 味方全員
  106-111 セルフ[10]の値が技能ID(0〜9999)の場合は分岐し、
ユーザーDB[0:技能]項目[2:┏ 効果対象]セルフ[36]に取得。
  112-125 セルフ[23]が「0以外(ターゲットがいる)」の場合は分岐し、
ターゲットが指定した1体のみの場合はさらに分岐し、
そのターゲットのスロットを可変DB[14:×┣ コマンド処理リスト]項目[2:受け側番号]に設定。
それ以外の「自分自身」「全体」「ランダムで1体」の場合は、
コモンイベント[163:X[戦]敵・味方行動対象算出]を呼び出して決定したターゲットで処理。
  128-133 ▼  >行動対象 \cself[23]※ここは動作テストの時に【デバッグ文】に変えて使用していたらしい。
ターゲットが居ない場合は、ここで処理を終了させる。
  135-138 ▼ 対象のパラメータ再計算
ターゲットの可変DB[10:×┏ 戦闘一時ステータス[基]]を更新。
  142-164 ▼ 発動者のパラメータ再計算
発動者の可変DB[10:×┏ 戦闘一時ステータス[基]]を更新。
発動する技能でユーザーDB[0:技能]項目[18:発動回数/武器の影響]の設定が武器依存である
かどうかで分岐する。
武器依存の場合は、武器ごとに可変DB[10:×┏ 戦闘一時ステータス[基]]を更新する。
防具の装備欄も調べて、武器の装備が無い場合は、ここで処理を終了させる。
  167-219 ■条件分岐(変数): 【1】 CSelf25[アニメ表示フラグ] が 1 と同じ
 ■条件分岐(変数): 【1】 CSelf34[アニメ用技能番号] が 9999 以下
          【2】 CSelf34[アニメ用技能番号] が 19999 以下
アニメーションを表示する場合は分岐し、
さらに技能発動(セルフ[34]=9999以下)かアイテム使用(セルフ[34]=10000〜19999)で分岐。
    171-205 ▼ 技能アニメーションを表示
ターゲットの表示位置を取得し、ユーザーDB[0:技能]項目[19:アニメーション]から
アニメーションID(ユーザーDB[1:┗ アニメーション]データID)をセルフ[27]に取得。
武器依存の場合は、今回処理する武器のアニメーションIDを
ユーザーDB[3:武器]項目[5:攻撃アニメーション]からセルフ[27]に取得。
アニメーションの表示設定(セルフ[27]=0以上)がある場合は、
コモンイベント[183:X[戦]技能エフェクト描画]を呼び出して、アニメーションを表示。
全体攻撃(全体回復)の場合は、セルフ[25]に「1」を設定し、
アニメーションが1回だけ表示させるようにする。
    208-215 ▼ アイテム使用の場合 アイテム使用SEがあれば鳴らす
アイテム使用時にSEを演奏する設定がある場合は、SEを演奏する。
  220-221 ▼ 単体処理
コモンイベント[165:X[戦]┗単体処理]を呼び出して、
HP・SPの増減や状態異常の付与or回復を実行する。
  222-231 ▼ 対象がもともと単体攻撃の場合はここで終了
ターゲットを指定している場合は、ここで処理が終了する。
「味方全員[回復]」「敵全体[攻撃]」「味方一人ランダム」「敵一体をランダム」の場合は、
セルフ[18]がマイナス値であるため、ループする。


▲トップへ戻る▲



◎関連ページ

◆「基本システム」って何?
┣◆コモンイベントの一覧と補足説明
┣◆メニュー画面の処理構造
┗◆戦闘処理の処理構造

YADOT-WOLFトップ  気紛れな空間へ戻る  メール