RPGツクール2000/自作戦闘
自作フロントビューを作る
■【初級02】戦闘開始
(更新:2016/05/21)


フロントビュー形式の自作戦闘システムの中で、
戦闘を開始する部分のイベントを設定します。


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



☆使用する変数

変数
番号 名前 使用内容 初使用ページ
0001 マップID 戦闘終了後に元のフィールドマップへ戻る時に使用。 【02】戦闘開始
0002 X位置 戦闘終了後に元のフィールドマップへ戻る時に使用。 【02】戦闘開始
0003 Y位置 戦闘終了後に元のフィールドマップへ戻る時に使用。 【02】戦闘開始
0004 遭遇した敵番号 戦う敵の番号を設定する。
1=スライム、2=こうもり。
【02】戦闘開始
0005 敵の表示位置:X 敵のX表示位置をドット数で設定。 【02】戦闘開始
0006 敵の表示位置:Y 敵のY表示位置をドット数で設定。 【02】戦闘開始
 
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】戦闘開始
 
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】戦闘開始
 
0059 敵:+経験値 敵を倒した時に獲得する経験値を設定。
【02】戦闘開始
0060 敵:+お金 敵を倒した時に獲得するお金を設定。
【02】戦闘開始

【変数の一覧表を開く】

※イベントを設定する前に上記の番号の通りに変数の名前を付けておけば、
 イベント設定が効率良く行えるようになります。


変数の一覧には未使用の変数番号が多くありますが、
あとで使用する変数番号もありますので、
一覧表に書かれた変数番号で設定してください。

なお、戦闘開始時に、
◆変数の操作:[0011〜0060]代入,0
の設定があるため、変数0060番までの未使用の変数番号を、
この自作戦闘以外のイベントで使用する事はお勧めできません。



変数は使用する用途に合わせて10番単位(20番単位)に分けて使用します。
変数番号 使用用途
0001〜0010 戦闘システム全体で使用。
0011〜0020 ダメージ量の計算などに使用。
0021〜0040 主人公の能力値など、主人公に関する情報を記憶。
0041〜0060 敵キャラの能力値など、敵キャラに関する情報を記憶。

こうする事で、
主人公に関する数値がおかしい → 変数0021〜0040番の値を調べる。
変数0013番は何に使っている? → ダメージ量の計算に使っている。
などと、変数の使用状況を把握しやすくなり、デバッグの作業効率も上がります。

また使用する用途に合わせて変数の番号を連番にしておく事で、
◆変数の操作:[0021〜0040]代入,0
などと、一括で変数の値を初期化したい時にも楽に行う事ができます。



☆敵の番号について
変数[0004:遭遇した敵番号]には、戦う敵キャラの番号を設定します。

今回は、
変数[0004]の値が「1」の時 → スライム
変数[0004]の値が「2」の時 → こうもり
とします。



☆敵の出現イベントを作る
自作戦闘の場合、敵が出現するイベントも自作する必要があります。

敵が出現する設定は、
マップイベントを調べたり触れたりする事で戦闘が開始するタイプと、
主人公が歩いていると戦闘が開始するタイプの2種類があります。



★マップイベントを調べたり触れたりする事で戦闘開始
マップイベントに向かって決定キーを押したり、
マップイベントに触れた時に戦闘が開始するイベントを設定します。


戦闘処理の動作テストを行う場合は、
パーティーの初期位置の1つ下のマスに設置すると良いでしょう。

■マップイベント「敵キャラ」
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:敵キャラと分かる絵
◆効果音の演奏:戦闘1<戦闘開始を表す効果音
◆現在の場所を記憶:[0001],[0002],[0003]<戦闘画面から戻る時の位置を記憶
◆変数の操作:[0004:遭遇した敵番号]代入,1<1=スライム、2=こうもり
◆画面の消去:フェードアウト<画面を真っ暗にする
◆場所移動:戦闘用のマップ(019,000)<戦闘用のマップへ移動




★主人公が歩いていると戦闘開始
主人公が歩いていると定期的に敵が出現するように設定する場合は、
自作エンカウントを設定する事になります。

自作エンカウントの作り方は、自作エンカウントを作るのページで紹介しています。
【自作エンカウントを作るのページを開く】

自作エンカウントを作るのページに、
◆戦闘の処理:スライムx2
の設定がありますが、これを、
◆効果音の演奏:戦闘1<戦闘開始を表す効果音
◆現在の場所を記憶:[0001],[0002],[0003]<戦闘画面から戻る時の位置を記憶
◆変数の操作:[0010:乱数]代入,乱数[1〜2]<1=スライム、2=こうもり
◆画面の消去:フェードアウト<画面を真っ暗にする
◆場所移動:戦闘用のマップ(019,000)<戦闘用のマップへ移動
などと変えてください。

なお、自作エンカウントを作るのページに書かれている変数番号は、
0001番 → 0101番」などと変数番号を変えて設定してください。



☆戦闘処理を準備するイベントを設定
戦闘処理を準備するイベントを設定します。

主に以下のイベント設定を行います。
・主人公の歩行グラフィックを透明にする。
・主人公や敵キャラの能力値を変数に記憶させる。
・敵グラフィックをピクチャーで表示。
・画面を表示。
・敵キャラの名前を表示。


戦闘用のマップへ移動して来る前に画面の消去を実行しているので、
この戦闘用のマップへやってきた時には、画面は真っ暗な状態になっています。
そのため、戦闘画面の準備中をプレイヤーに見られる事はありません。

主人公の能力値変数に記憶させておき、
その記憶させた変数の値を使って戦闘処理を実行します。
こうする事で、一時的に攻撃力を上げたとしても変数の値を変えるだけで済み、
戦闘終了時に主人公の攻撃力を元に戻すような処理が必要なくなります。



■イベントID0001「メインシステム」
イベント開始条件:自動的に始まる
◆注釈:-----------------------------------------------------------
:  :戦闘準備
:  : 

◆主人公の透明状態を変更:透明状態にする
◆文章オプション変更:透明,下,固定,イベント移動許可<戦闘画面用に変える
◆変数の操作:[0011〜0060]代入,0<変数の値を初期化
◆注釈:-----------------------------------------------------------
:  :主人公の設定
:  : 

◆変数の操作:[0021:主人公:HP]代入,主人公01のHP
◆変数の操作:[0022:主人公:最大HP]代入,主人公01の最大HP
◆変数の操作:[0023:主人公:MP]代入,主人公01のMP
◆変数の操作:[0024:主人公:最大MP]代入,主人公01の最大MP
◆変数の操作:[0025:主人公:攻撃力]代入,主人公01の攻撃力
◆変数の操作:[0026:主人公:防御力]代入,主人公01の防御力
◆変数の操作:[0027:主人公:精神力]代入,主人公01の精神力
◆変数の操作:[0028:主人公:敏捷性]代入,主人公01の敏捷性
◆変数の操作:[0029:主人公:必殺率]代入,20<20分の1の確率で会心の一撃を出す
◆注釈:-----------------------------------------------------------
:  :敵の設定
:  : 

◆条件分岐:変数[0004:遭遇した敵番号]が1<スライムと戦う時
 ◆主人公の名前変更:敵の名前の名前をスライムに変更<スライムの名前を設定
 ◆ピクチャーの表示:1,スライム,(160,120)<敵の画像を表示
 ◆変数の操作:[0041:敵:HP]代入,16
 ◆変数の操作:[0042:敵:最大HP]代入,16
 ◆変数の操作:[0043:敵:MP]代入,0
 ◆変数の操作:[0044:敵:最大MP]代入,0
 ◆変数の操作:[0045:敵:攻撃力]代入,12
 ◆変数の操作:[0046:敵:防御力]代入,4
 ◆変数の操作:[0047:敵:精神力]代入,8
 ◆変数の操作:[0048:敵:敏捷性]代入,8
 ◆変数の操作:[0049:敵:必殺率]代入,0<痛恨の一撃は出さない
 ◆変数の操作:[0059:敵:+経験値]代入,3<倒した時に獲得する経験値を設定
 ◆変数の操作:[0060:敵:+お金]代入,5<倒した時に獲得するお金を設定
 ◆
:分岐終了
◆条件分岐:変数[0004:遭遇した敵番号]が2<こうもりと戦う時
 ◆主人公の名前変更:敵の名前の名前をこうもりに変更<こうもりの名前を設定
 ◆ピクチャーの表示:1,こうもり,(160,120)<敵の画像を表示
 ◆イベントの位置を設定:敵の表示位置, (009,005)<敵の表示位置を空中にする
 ◆変数の操作:[0041:敵:HP]代入,20
 ◆変数の操作:[0042:敵:最大HP]代入,20
 ◆変数の操作:[0043:敵:MP]代入,5
 ◆変数の操作:[0044:敵:最大MP]代入,5
 ◆変数の操作:[0045:敵:攻撃力]代入,14
 ◆変数の操作:[0046:敵:防御力]代入,6
 ◆変数の操作:[0047:敵:精神力]代入,9
 ◆変数の操作:[0048:敵:敏捷性]代入,10
 ◆変数の操作:[0049:敵:必殺率]代入,30<30分の1の確率で痛恨の一撃を出す
 ◆変数の操作:[0059:敵:+経験値]代入,5<倒した時に獲得する経験値を設定
 ◆変数の操作:[0060:敵:+お金]代入,10<倒した時に獲得するお金を設定
 ◆
:分岐終了
◆ウェイト:0.1秒 
◆変数の操作:[0005:敵の表示位置:X]代入,敵の表示位置の画面X
◆変数の操作:[0006:敵の表示位置:Y]代入,敵の表示位置の画面Y
◆変数の操作:[0006:敵の表示位置:Y]減算,8<画面位置をマップイベントの中央にする
◆ピクチャーの移動:1,(V[0005],V[0006]),0.0秒(W)<マップイベントの位置に表示
◆画面の表示:フェードイン<真っ暗な状態を終了し、戦闘画面が見える状態にする
◆注釈:-----------------------------------------------------------
:  :戦闘開始(敵の名前を表示)
:  : 

◆文章:\N[11]が出現!\|\^
<これから戦う敵の名前を表示する
◆注釈:-----------------------------------------------------------
:  :主人公の行動選択
:  : 
◆注釈:-----------------------------------------------------------
:  :主人公の行動実行
:  : 
◆注釈:-----------------------------------------------------------
:  :敵全滅チェック(戦闘終了)
:  : 
◆注釈:-----------------------------------------------------------
:  :敵の行動選択&実行
:  : 

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





☆補足
敵のHPや攻撃力の値をランダムにしたい時には、
能力値の設定を乱数に変えてください。
▼設定例
◆変数の操作:[0041:敵:HP]代入,乱数[16〜20]



次のページへ行く>>



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

 ●自作エンカウント
 ●シンボルエンカウント


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