RPGツクール2000/自作戦闘
自作フロントビューを作る
■【初級04】主人公の行動実行
(更新:2016/05/21)


フロントビュー形式の自作戦闘システムの中で、
主人公の行動を実行するイベントを設定します。


このページは続きとなっているページです
このページは、自作フロントビューを作るから続いているページです。
制作内容も自作フロントビューを作るのページからご覧頂かないと、
分からないような作りになっています。
【自作フロントビューを作るのページを開く】
※最初のページにてサンプルデータのダウンロードができます。



☆使用する変数
この色の変数は、今回のページで初めて登場した変数です。

この色の変数は、これまでのページに登場していて、
今回の設定で使用する変数です。

この色の変数は、これまでのページに登場していて、
今回の設定では使用しない変数です。

変数
番号 名前 使用内容 初使用ページ
0001 マップID 戦闘終了後に元のフィールドマップへ戻る時に使用。 【02】戦闘開始
0002 X位置 戦闘終了後に元のフィールドマップへ戻る時に使用。 【02】戦闘開始
0003 Y位置 戦闘終了後に元のフィールドマップへ戻る時に使用。 【02】戦闘開始
0004 遭遇した敵番号 戦う敵の番号を設定する。
1=スライム、2=こうもり。
【02】戦闘開始
0005 敵の表示位置:X 敵のX表示位置をドット数で設定。 【02】戦闘開始
0006 敵の表示位置:Y 敵のY表示位置をドット数で設定。 【02】戦闘開始
 
0011 HP± 敵や主人公のHPが減る量、または増える量を設定します。 【04】主人公の行動実行
0012 防御力 ダメージ量を算出する時に使用。 【04】主人公の行動実行
0013 必殺 会心の一撃を出す確率を算出する時に使用。
1=会心の一撃。
【04】主人公の行動実行
0014 確率計算用 命中率や逃走成功率を算出する時に使用。 【04】主人公の行動実行
0015 敏捷性 命中率や逃走成功を算出する時に使用。 【04】主人公の行動実行
0016 打撃関係度 特殊技能のダメージ量を算出する時に使用。 【04】主人公の行動実行
0017 精神関係度 特殊技能のダメージ量を算出する時に使用。 【04】主人公の行動実行
0018 数値分散度 特殊技能のダメージ量を算出する時に使用。 【04】主人公の行動実行
0019 回復量算出 ヒール(HP回復)を使用した時に回復量を算出する時に使用。 【04】主人公の行動実行
0020 逃走成功率アップ 逃走失敗した時に、次回の逃走率を上げる時に使用。
【04】主人公の行動実行
 
0021 主人公:HP 主人公のHPを設定。 【02】戦闘開始
0022 主人公:最大HP 主人公の最大HPを設定。 【02】戦闘開始
0023 主人公:MP 主人公のMPを設定。 【02】戦闘開始
0024 主人公:最大MP 主人公の最大MPを設定。 【02】戦闘開始
0025 主人公:攻撃力 主人公の攻撃力を設定。 【02】戦闘開始
0026 主人公:防御力 主人公の防御力を設定。 【02】戦闘開始
0027 主人公:精神力 主人公の精神力を設定。 【02】戦闘開始
0028 主人公:敏捷性 主人公の敏捷性を設定。 【02】戦闘開始
0029 主人公:必殺率 主人公の必殺率を設定。 【02】戦闘開始
 
0031 主人公:行動内容 主人公の行動内容を代入。
1=攻撃、2=特殊技能、3=逃走。
【03】主人公の行動決定
0032 主人公:行動詳細 主人公の行動詳細(実行する特殊技能の番号)を代入。 【03】主人公の行動決定
 
0041 敵:HP 敵のHPを設定。 【02】戦闘開始
0042 敵:最大HP 敵の最大HPを設定。 【02】戦闘開始
0043 敵:MP 敵のMPを設定。 【02】戦闘開始
0044 敵:最大MP 敵の最大MPを設定。 【02】戦闘開始
0045 敵:攻撃力 敵の攻撃力を設定。 【02】戦闘開始
0046 敵:防御力 敵の防御力を設定。 【02】戦闘開始
0047 敵:精神力 敵の精神力を設定。 【02】戦闘開始
0048 敵:敏捷性 敵の敏捷性を設定。 【02】戦闘開始
0049 敵:必殺率 敵の必殺率を設定。 【02】戦闘開始
 
0051 敵:行動内容 敵の行動内容を代入。
1=攻撃、2=様子を見る、3=逃走、4=防御。
【04】主人公の行動実行
 
0059 敵:+経験値 敵を倒した時に獲得する経験値を設定。
【02】戦闘開始
0060 敵:+お金 敵を倒した時に獲得するお金を設定。
【02】戦闘開始

【変数の一覧表を開く】



☆主人公の行動を実行するイベントを設定する
決定した主人公の行動を実行するイベントを設定します。

■マップイベント「メインシステム」
◆注釈:-----------------------------------------------------------
:  :戦闘準備
:  : 

〜記載省略(前ページから変更なし)〜
◆注釈:-----------------------------------------------------------
:  :主人公の設定
:  : 

〜記載省略(前ページから変更なし)〜
◆注釈:-----------------------------------------------------------
:  :敵の設定
:  : 

〜記載省略(前ページから変更なし)〜
◆注釈:-----------------------------------------------------------
:  :戦闘開始(敵の名前を表示)
:  : 

◆文章:\N[11]が出現!\|\^

◆ラベルの設定:1番
◆注釈:-----------------------------------------------------------
:  :主人公の行動選択
:  : 

◆イベントの呼び出し:主人公の設定[1]
◆注釈:-----------------------------------------------------------
:  :主人公の行動実行
:  : 

◆イベントの呼び出し:主人公の設定[2]<主人公の行動を実行するイベント処理を呼び出す
◆条件分岐:変数[0031:主人公:行動内容]が3<逃走が成功した時
 ◆〜この中のイベントは後で設定します〜
:分岐終了

◆注釈:-----------------------------------------------------------
:  :敵全滅チェック(戦闘終了)
:  : 

◆注釈:-----------------------------------------------------------
:  :敵の行動選択&実行
:  : 

◆注釈:-----------------------------------------------------------
:  :パーティー全滅チェック
:  : 

◆指定ラベルへ飛ぶ:1番




■マップイベント「主人公の設定」
2ページ目に主人公の行動を実行するイベントを設定します。

主人公が攻撃した時の敵のダメージ量や逃走成功率の計算処理は、
YADOTで紹介している以下のページの計算処理を使って行います。
【通常攻撃のダメージの計算処理のページを開く】
【通常攻撃の命中率の計算処理のページを開く】
【特殊技能の効果量の計算処理のページを開く】
【逃走成功率の計算処理のページを開く】

ピクチャーの移動オプション(ウェイト)の設定は、
設定が有ったり、無かったりしますので、注意してください。
◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒(W)←設定有り
◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒  ←設定無し


文章の表示速度(消える速度)が速すぎる場合は、最後の制御文字\.の数を増やしたり、
瞬間表示の制御文字\>\<の設定を外すなどして、表示速度を調整してください。

▼1ページ目
◆注釈:-----------------------------------------------------------
:  :行動選択処理
:  : 

〜記載省略(前ページから変更なし)〜


▼2ページ目
◆注釈:-----------------------------------------------------------
:  :行動実行処理
:  : 

◆変数の操作:[0011〜0013]代入,0<数値を初期化
◆注釈:-----------------------------------------------------------
:  :「攻撃」の処理
:  : 

◆条件分岐:変数[0031:主人公:行動内容]が1<行動が「攻撃」の時
 ◆注釈:-----------------------------
 :  :ダメージ量の算出
 :  : 

 ◆変数の操作:[0011:HP±]代入,変数[0025]の値
 ◆変数の操作:[0011:HP±]除算,2
 ◆変数の操作:[0012:防御力]代入,変数[0046]の値
 ◆変数の操作:[0012:防御力]除算,4
 ◆変数の操作:[0011:HP±]減算,変数[0012]の値
 ◆変数の操作:[0011:HP±]乗算,乱数[80〜120]
 ◆変数の操作:[0011:HP±]除算,100
 ◆変数の操作:[0013:必殺]代入,乱数[0〜999999]
 ◆変数の操作:[0013:必殺]剰余,変数[0029]の値

 ◆条件分岐:変数[0013:必殺]が1<会心の一撃である時
  ◆変数の操作:[0011:HP±]乗算,3
  ◆
 :分岐終了
 ◆条件分岐:変数[0051:敵:行動内容]が4<敵が防御中
  ◆変数の操作:[0011:HP±]除算,2
  ◆
 :分岐終了
 ◆注釈:-----------------------------
 :  :命中率の算出
 :  : 

 ◆変数の操作:[0014:確率計算用]代入,100
 ◆変数の操作:[0014:確率計算用]減算,90<通常攻撃の命中率(90%)を設定
 ◆変数の操作:[0015:敏捷性]代入,変数[0048]の値
 ◆変数の操作:[0015:敏捷性]乗算,100
 ◆変数の操作:[0015:敏捷性]除算,変数[0028]の値
 ◆変数の操作:[0015:敏捷性]減算,100
 ◆変数の操作:[0015:敏捷性]除算,2
 ◆変数の操作:[0015:敏捷性]加算,100
 ◆変数の操作:[0015:敏捷性]乗算,変数[0014]の値
 ◆変数の操作:[0015:敏捷性]除算,100
 ◆変数の操作:[0014:確率計算用]代入,100
 ◆変数の操作:[0014:確率計算用]減算,変数[0015]の値
 ◆変数の操作:[0014:確率計算用]加算,乱数[0〜99]
 ◆条件分岐:変数[0014:確率計算用]が99以下
  ◆変数の操作:[0011:HP±]代入,0<ダメージ量をゼロにする
  ◆
 :分岐終了

 ◆注釈:-----------------------------
 ◆条件分岐:変数[0013:必殺]が1(オプション:ON)
  ◆文章:\>\N[11]に会心の一撃!!\<\.\.\^
  ◆
 :それ以外の場合
  ◆文章:\>\N[11]に攻撃!\<\.\.\^
  ◆
 :分岐終了
 ◆戦闘アニメの表示:剣A,敵の表示位置<敵の位置に通常攻撃の戦闘アニメを表示
 ◆
:分岐終了
◆注釈:-----------------------------------------------------------
:  :「特殊技能」の処理
:  : 

◆条件分岐:変数[0031:主人公:行動内容]が2<行動が「特殊技能」の時
 ◆注釈:-----------------------------
 :  :「ファイア」の処理
 :  : 

 ◆条件分岐:変数[0032:主人公:行動詳細]が1<「ファイア」を使用
  ◆変数の操作:[0023:主人公:MP]減算,4
  ◆変数の操作:[0011:HP±]代入,15<基本効果量を設定
  ◆変数の操作:[0016:打撃関係度]代入,0
  ◆変数の操作:[0017:精神関係度]代入,3
  ◆変数の操作:[0016:打撃関係度]乗算,変数[0025]の値
  ◆変数の操作:[0016:打撃関係度]除算,20
  ◆変数の操作:[0017:精神関係度]乗算,変数[0027]の値
  ◆変数の操作:[0017:精神関係度]除算,40
  ◆変数の操作:[0011:HP±]加算,変数[0016]の値
  ◆変数の操作:[0011:HP±]加算,変数[0017]の値
  ◆変数の操作:[0018:数値分散度]代入,乱数[-999999〜999999]
  ◆変数の操作:[0018:数値分散度]剰余,4
  ◆変数の操作:[0018:数値分散度]乗算,変数[0011]の値
  ◆変数の操作:[0018:数値分散度]除算,100
  ◆変数の操作:[0011:HP±]加算,変数[0018]の値
  ◆条件分岐:変数[0051:敵:行動内容]が4<敵が防御中
   ◆変数の操作:[0011:HP±]除算,2
   ◆
  :分岐終了
  ◆文章:\>\N[1]はファイアを唱えた!\<\.\.\^
  ◆戦闘アニメの表示:炎魔法・単A,敵の表示位置<敵の位置にファイアの戦闘アニメを表示
  ◆
 :分岐終了
 ◆注釈:-----------------------------
 :  :「ヒール」の処理
 :  : 

 ◆条件分岐:変数[0032:主人公:行動詳細]が2<「ヒール」を使用
  ◆変数の操作:[0023:主人公:MP]減算,3
  ◆変数の操作:[0011:HP±]代入,30<基本効果量を設定
  ◆変数の操作:[0016:打撃関係度]代入,0
  ◆変数の操作:[0017:精神関係度]代入,3
  ◆変数の操作:[0016:打撃関係度]乗算,変数[0025]の値
  ◆変数の操作:[0016:打撃関係度]除算,20
  ◆変数の操作:[0017:精神関係度]乗算,変数[0027]の値
  ◆変数の操作:[0017:精神関係度]除算,40
  ◆変数の操作:[0011:HP±]加算,変数[0016]の値
  ◆変数の操作:[0011:HP±]加算,変数[0017]の値
  ◆変数の操作:[0018:数値分散度]代入,乱数[-999999〜999999]
  ◆変数の操作:[0018:数値分散度]剰余,4
  ◆変数の操作:[0018:数値分散度]乗算,変数[0011]の値
  ◆変数の操作:[0018:数値分散度]除算,100
  ◆変数の操作:[0011:HP±]加算,変数[0018]の値
  ◆注釈:-----------------------------
  ◆変数の操作:[0021:主人公:HP]加算,変数[0011]の値<HPを回復する
  ◆条件分岐:変数[0021:主人公:HP]がV[0022]より大きい<最大HPよりHPが多い時
   ◆変数の操作:[0019:回復量算出]代入,変数[0021]の値<オーバーしたHP量を代入
   ◆変数の操作:[0019:回復量算出]減算,変数[0022]の値<最大HP量を減算
   ◆変数の操作:[0011:HP±]減算,変数[0019]の値<減算してHPが増えた量を出す
   ◆変数の操作:[0021:主人公:HP]代入,変数[0022]の値<最大HPと同じにする
   ◆
  :分岐終了
  ◆文章:\>\N[1]はヒールを唱えた!\<\.\.\^
  ◆効果音の演奏:回復1
  ◆画面のフラッシュ:(R00,G31,B31,V31),0.5秒(W)<演出用のイベント
  ◆文章:\>\N[1]のHPが\_\V[11]\_回復した!\<\.\.\^
  ◆イベント処理の中断
  ◆
 :分岐終了
 ◆
:分岐終了
◆注釈:-----------------------------------------------------------
:  :「逃走」の処理
:  : 

◆条件分岐:変数[0031:主人公:行動内容]が3<行動が「逃走」の時
 ◆変数の操作:[0014:確率計算用]代入,変数[0048]の値
 ◆変数の操作:[0014:確率計算用]乗算,1000
 ◆変数の操作:[0014:確率計算用]除算,変数[0028]の値
 ◆変数の操作:[0014:確率計算用]減算,15
 ◆変数の操作:[0014:確率計算用]除算,10
 ◆変数の操作:[0014:確率計算用]加算,乱数[0〜99]
 ◆変数の操作:[0014:確率計算用]加算,変数[0020]の値
 ◆条件分岐:変数[0014:確率計算用]が100以上(オプション:ON)<逃走成功した時
  ◆文章:\>無事に逃げ出した!\<\.\.\^
  ◆効果音の演奏:逃走

  ◆
 :それ以外の場合<逃走失敗した時
  ◆変数の操作:[0031:主人公:行動内容]代入,0
  ◆変数の操作:[0020:逃走成功率アップ]加算,10
  ◆文章:\>逃げ切れなかった!\<\.\.\^

  ◆
 :分岐終了
 ◆イベント処理の中断
 ◆
:分岐終了
◆注釈:-----------------------------------------------------------
:  :敵がダメージを受ける
:  : 

◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒(W)(色調:200/50/50/100)
◆ウェイト:0.0秒
◆ピクチャーの移動:1,(V[0005],V[0006]),0.1秒(W)(色調:100/100/100/100)
◆ウェイト:0.5秒
◆条件分岐:変数[0011:HP±]が1以上(オプション:ON)<敵にダメージを与える時
 ◆効果音の演奏:ダメージ2
 ◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒(透明度:75%)
 ◆ウェイト:0.1秒
 ◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒(透明度:0%)
 ◆ウェイト:0.1秒
 ◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒(透明度:75%)
 ◆ウェイト:0.1秒
 ◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒(透明度:0%)
 ◆文章:\>\N[11]に\_\V[11]\_のダメージを与えた!\<\.\.\^
 ◆変数の処理:[0041:敵:HP]減算,変数[0011]の値
 ◆
:それ以外の場合<敵にダメージを与えられない時
 ◆効果音の演奏:回避1
 ◆文章:\>\N[11]は攻撃をかわした!\<\.\.\^
 ◆
:分岐終了





☆テストプレーを実行してみよう!
この段階でテストプレーを実行してみてください。

▼「攻撃」を選択。

         
▼戦闘アニメが表示され、敵グラフィックが点滅して、
 「ダメージを与えた」の文章が表示されれば、正常な状態です。


※まだ戦闘終了のイベントを設定していないので、
 敵のHPがゼロになっても戦闘は終了しません。




次のページへ行く>>



◎関連ページ
 ●自作戦闘とは?
 ●自作フロントビューを作る
 ○【初級:01】準備
 ┣○【初級:02】戦闘開始
 ┣○【初級:03】主人公の行動決定
 ┣○【初級:04】主人公の行動実行
 ┣○【初級:05】敵の設定
 ┣○【初級:06】戦闘終了
 ┣○【初級S】サイドビュー化
 ┗
○【初級】改良アドバイス


YADOTトップ  このサイトは何?  気紛れな空間へ戻る  メール