Top > STEP19 デバッグ&調整
HTML convert time to 0.107 sec.


STEP19 デバッグ&調整

Last-modified: 2013-04-20 (土) 17:44:07

ここでは、ゲームが一通り完成してからの不具合を見つけ修正していく「デバッグ」作業の効率的な進め方を考えたり、「戦闘バランスの調整」やゲームに細かい要素の追加などをしていきます。

 

【INDEX】


 

デバッグのコツ

「デバッグ」は安心してプレイしてもらえる作品を作るために非常に重要です。どんなに良い作品でも、不具合(バグ)が残っていると楽しめなくなってしまいます。
不具合もゲームの進行に大きな影響を及ぼすものから、台詞の誤字脱字といった細かいものまで、色々発生する可能性があります。
こういったゲームに限らずですが、はじめから何の問題も発生せずに一発で完璧なものが仕上がることはありえませんので、何度も繰り返しチェックを行って、できるだけ不具合を修正していく努力が必要です。
大きな不具合はすぐに気付くでしょうが、大きいものだけに修正が大変かもしれません。台詞の誤字脱字は細かいものですが、重要なシーンでそういうものが残っていた場合に、プレイしている方から見ると萎えてしまいますので、放置しておくわけにはいきません。
こうした不具合を見つけ修正を行って行く「デバッグ」は地味な作業ではありますが、なるべく効率的に進めていける方法を考えていきたいと思います。

デバッグに便利な機能

ウディタには「テストプレイ」時のみ有効な「デバッグ」用機能がいくつ備わっています。
機能を把握して、活用していきましょう。

 
  • 「各種情報表示」 ■対応キー:[F8]
    現在読み込まれているファイル情報(各種画像ファイル、各種サウンドファイル)と使用ピクチャ番号を表示します。
    また、並列処理で実行中の「コモンイベント」番号も表示されます。
     
    画像の表示やサウンドの再生が行われていない場合に、ファイルがきちんと読み込まれているのかを確認するのに便利です。
    step19-001.jpg
 
  • 「変数情報表示」 ■対応キー:[F9]
    「通常変数」「予備変数」「システム変数」の「番号」・「変数名」・「格納されている値」を一覧を表示します。
    画面表示後に何かしらキーを押すかマウスでクリックすると次ページへ表示が切り替ります。
     
    これは「通常変数」に設定してある「フラグ」の状態を確認することができますので、ゲームの進行がうまく処理されているか確認するのに欠かせない機能です。
    また、「予備変数」「システム変数」にもゲーム状態を表す重要な情報が設定されていますので、こういったデータを確認できるのも非常に便利です。
    step19-002.jpg
 
  • 「データの再読込」 ■対応キー:[F11]
    現在のプレイヤーの位置を保持したまま、
    「マップデータ」「コモンイベント」「ユーザデータベース」「タイルセット」をファイルから再読み込みします。
     
    これも非常に便利な機能です。
    マップに使用しているマップチップ画像を変更した場合や、マップに配置した「イベント」の位置や内容を変更した場合も一からテストプレイすることなく、変更内容を反映し確認することができます。
    台詞などにちょっとした誤字脱字を見つけた場合も修正して、即時に修正結果を確認することができます。
    ゲームを起動させたままリアルタイムに修正・反映・確認ができるのが非常に便利です。
 

 

また、「テストプレイ」時だけでなく、通常使える機能にも「デバッグ」に有効なものがあります。

 
  • サブキー、戦闘中に押すと戦闘が高速化 ■対応キー:[Cキー] [Shift]
    戦闘バランスの調整をしたり、通しプレイをしてイベント進行を確認したりする場合に、戦闘に掛かる時間というのはけっこう多くなってきます。この機能を使って多少短縮することで、全体的な「デバッグ」時間も短縮されます。
 
  • 「画面サイズの変更」(ウィンドウモード時のみ) ■対応キー:[F4]
    下記の3種類の画面サイズに切り替えていきます。
    ・320×240(ゲームの画面解像度が「320×240」でグラフィックモードが「3Dモード」の場合のみ)
    ・640×480(デフォルトサイズ)
    ・疑似フルスクリーン(ディスプレイに合わせた最大のサイズ、処理がやや重くなります)
     
    画面サイズを変更することで見えてくる不具合というのもあります。
    例えば、
     マップチップが欠けている:「マップチップ画像」がうまくマップに配置されていない。
     キャラの見た目的な動きがおかしい:「キャラチップ画像」のパターン配置が間違っている。
     画像に不自然なゴミが?:画像自体の塗り残しや消し忘れなど。
    といったものを発見できる可能性があります。大きく表示した際は細かいところを、小さく表示した際は全体の広い範囲で確認しやすいと思います。
 
  • 「ポーズ」 ■対応キー:[F10]
    画面の動きを一時停止します。
     
    イベント中の動作なども一時停止しますので、イベント中のキャラクターの動きを確認したりできます。
 
  • 「ゲームのリセット」 ■対応キー:[F12]
    タイトル画面(ゲーム開始位置)に戻る。
     
    これも「デバッグ」でよく使う機能になると思います。
    「ゲーム開始位置」からの再開なので、「ゲーム開始位置」を特定のイベントの近くに設定し、動作を確認してはリセットでまた「ゲーム開始位置」から再開して確認というかんじです。
    [F11]「データの再読込」でも補える部分はあるのですが、対応できない部分もあるので、両方をうまく使っていきましょう。
 
  • 「スクリーショットの撮影」 ■対応キー:[PrintScreen][ScrollLock][Pause]
    ※一部環境では[PrintScreen]が機能しない場合があります。また、ノートパソコン等のキーボードの場合は「Fn」キーを押しながらでないと[PrintScreen]キーが押せません。
    撮影されたゲーム画面の画像はGame.exeがあるフォルダに保存されます。
     
    こちらはチームで作業を進める際に、「デバッグ」してくれるメンバーからの不具合報告などに便利です。
    言葉や文字で足りるものもありますが、やはり画面を見るのが一番わかりやすいので、伝えにくい不具合などはこの機能でゲーム画面を保存して、活用しましょう。
 

その他の操作方法については、逆引き辞典 ウディタでの操作を参照してください。

 

 

もう一つ、「マップエディタ」上で設定できる「ゲーム開始位置に設定」「デバッグ」にたいへん役立ちます。
通常は「タイトル画面」など、そのままの意味でゲームが開始される場所に設定しますが、ここが最初にプレイヤーキャラが配置される場所になりますので、作ったばかりの特定のイベントの目の前に「ゲーム開始位置に設定」を設置し、テストプレイですぐにイベントの動作確認ができたりします。
あとは新しく作ったマップを確認する際にも、そのマップ上に「ゲーム開始位置に設定」を設定すれば、既存のマップとの場所移動設定をしていなくても、ゲーム内で新しいマップの確認ができます。
今回の制作で「タイトル画面」を最後の方で制作したのも、こういった手法で「ゲーム開始位置に設定」を変更しながら制作していたためだったりします。
この「ゲーム開始位置に設定」の活用方法もぜひ習得しましょう。
step19-003.jpg

デバッグの進め方

「デバッグ」の進め方は色々あると思いますが、参考例で筆者の手順をご紹介します。

 

都度都度で動作確認しながら、ゲームが一通り完成した状態とします。

まずはゲームをはじめからおわりまで淡々とプレイしていく「通しプレイ」を何度かやってみます。
「通しプレイ」では、いらなくなったプリント用紙の裏側とボールペンを用意して、細かい誤字脱字から、イベント上の動作の不具合、演出のタイミングなど、問題がある部分をかたっぱしから、紙に書き出していきます。
どうしても気になったものは、途中で修正する作業をしてしまうのですが、基本的には「ゲームクリア」まで修正作業はせずに不具合の洗い出しだけに専念します。

 

数回か「通しプレイ」→「修正」を繰り返したら、今度は「イレギュラーな操作」をしてみます。
RPGで言うと、ストーリー上はAという街に行かなければならないのに、Bという街に行ってみたり、通常は選ばないような選択肢を実行してみたり、といった行為です。
こういうのをやると、倒していないはずのボスモンスターを倒したことになって、街の人が感謝の台詞を行ってくれたり、死んだはずのNPCが生き返っていたりと主にストーリー上のおかしな問題が発覚していきます。
主にストーリー上の「フラグ管理」がきちんと出来ていないのが、原因ですが、ひどい状況に驚き・大笑しながら・そしてため息をついて、淡々と修正していきます。
場合によっては台詞を追加したり、新たなイベントを用意する必要がありますので、けっこう時間が掛かる可能性があります。

 

そして、再び「通しプレイ」を数回行い、問題がなさそうというところで完成とします。
こだわり出すと、終わらないところもあったり、だんだんプレイしていて、ここをこうしたいとかああしたいとかの願望も出てきてしまいますので、ある程度妥協して、一度完成としましょう。

 
 

大雑把にですが、このような流れで「デバッグ」を進めています。
基本はやっぱり何度もプレイするということに尽きますね。

 

紙とボールペンという部分は、最近はPCモニターも大画面のものが安くなってますから、ゲームとテキストエディタを並べて、テキストエディタに不具合を書いていくのも良いと思います。
チームで制作している場合は「デバッグ」期間を決めて、この日まで不具合を上げてもらい、修正期間を設け上がった不具合をまとめて修正し、最新版の「デバッグ」というのを繰り返しですね。当たり前ですが、チーム作業の場合はスケジュールというのが大事です。

デバッグメニューの作成

「デバッグ」はなるべくプレイヤーと同じ状況でプレイすることで、不具合の状況を的確に把握することができますが、プレイ時間が長めになるRPGなどでは、「通しプレイ」を数回するだけで、何時間~何十時間ととても時間が掛かってしまいます。
そこで、「デバッグ」時間を短縮するために、ある程度「デバッグ」が楽になるような機能をゲーム内に盛りこんでおきます。
例えば、ストーリー部分の進行だけ見て行きたくてプレイする時は、ザコ敵との戦闘はしたくないですし、ボスとの戦闘も楽にしたいものです。そういう場合は、「雑魚敵が出現しなくなる機能」や「味方キャラの強さが最高になる機能」というのを付けておくと、非常に楽です。

 

今回は以下の機能を盛り込んだ「デバッグメニュー」を実際に作っていきます。

  • 「ワープ」:特定の場所に瞬時に移動させます。
    今回は「村の入り口」、「森の入口」「森の奥」、「フィールド」の4ヶ所に移動できるようにします。
  • 「フラグON/OFF」:特定のフラグのON/OFFを切り替えます。
    フラグのON/OFFは安易に行うと、ゲーム進行がおかしくなる可能性がありますので、今回は問題が少なそうな「森入った」、「薬草入手」の2つのフラグを対象とします。
  • 「戦闘」:特定の敵グループと戦闘を発生させます。
    今回は「スライム×1」と「森のボス」と戦闘できるようにします。
    これは後の内容で、大幅な改造をします。
  • 「全回復」:HP/SP/状態異常を全回復します。
  • 「ザコ敵出現OFF」:ザコ敵を出現しないようにします。
    もう一度実行すると出現するようになります。

この「デバッグメニュー」はゲーム中にキーボードの[D]キーを押すことで表示されるようにします。

 

それでは、さっそく作っていきましょう。
どのマップにいても呼び出せるようにしたいため、「コモンイベント」で作っていきます。
「コモンイベントエディタ」を開き、「102番」を選択、名前「デバッグメニュー」とします。
起動条件「並列実行(常時)」とすることで、常にこの「コモンイベント」の内容を実行することができます。
ゲームを本公開する段階になったら、「デバッグメニュー」は表示されないようにしなければいけませんので、起動条件「呼び出しのみ」に変更しましょう。
step19-004.jpg

 

キーボードの[D]キーが押されたらという処理を作っていきます。

 

「その他1」タブで、「キー入力受け付け」にチェックをし、代入先「このコモンイベントセルフ変数0」キー種を「キーボード全キー」とします。

[tip]ウディタ2では?
 イベントコマンド「キー入力」

これで、キーボードからどのキーが押されたか調べることが出来ます。
押されたキーのキー番号が「コモンイベントセルフ変数0」に格納されます。キーボードのキー番号についてはキーコードを参照してください。
step19-005.jpg

 

「条件(変数)」タブで、「「コモンイベントセルフ変数0」が 132([D]キーのキー番号) と同じ」とします。
これで、キーボードの[D]キーが押されたらという処理ができました。
step19-006.jpg

 

次は「メニュー」を表示していきます。

 

「選択肢」タブで、「デバッグメニュー」の機能名を入力していきます。
これで、各「選択肢」ごとの分岐が作られます。
step19-007.jpg

 

各機能ごとの分岐が作られましたので、あとは各機能ごとに処理を入力していくだけです。

 

まずは「ワープ」から見ていきます。
「選択肢」タブで、「ワープ」先の名称を入力していきます。
これで、各「ワープ」先ごとの分岐が作られます。
step19-008.jpg

 

各分岐に「ワープ」先「場所移動」する処理を入れていきます。
「ワープ」機能の処理はこれで完了です。
他の機能もそうですが、「デバッグ」用の機能なので、特に余計な演出はせずに目的の処理だけを実行する簡素なものにします。
step19-009.jpg

 

「フラグON/OFF」も同様に「選択肢」タブで、操作する「フラグ」の名称を入力していきます。
これで、各「フラグ」ごとの分岐が作られます。
step19-010.jpg

 

今度は選ばれた「フラグ」の値を判断して、「1:フラグが立っている場合」、「0:フラグが立っていない場合」に分岐させていきます。
step19-011.jpg

 

「1:フラグが立っている場合」は「フラグ」を「0」にします。
step19-012.jpg

 

「0:フラグが立っていない場合」は「フラグ」を「1」にします。
step19-013.jpg

 

「戦闘」も同様に「選択肢」タブで、戦闘をする「敵グループ」の名称を入力していきます。
これで、各「敵グループ」ごとの分岐が作られます。
step19-014.jpg

 

「その他2」タブで、「コモンイベント24:バトル発生」を呼び出して、戦闘させる敵グループ番号を選択します。

[tip]ウディタ2では?
 イベントコマンド「コモンイベント」の「コモンイベント28:バトルの発生」

step19-016.jpg

 

「全回復」「その他2」タブで、「コモンイベント4:回復・ダメージ処理」を呼び出して、処理内容を「完全回復」、誰に?を「パーティ全員」にします。

[tip]ウディタ2では?
 イベントコマンド「コモンイベント」

step19-017.jpg

 

「ザコ敵出現OFF」は、まずは専用のフラグを作成する必要があります。
一旦、「システムデータベース」を開いて、「14:通常変数名 データ10番」「フラグ:ザコ敵出現OFF」を追加します。
step19-018.jpg

 

また、「フラグ:ザコ敵出現OFF」が機能するように、マップ上に配置してあるザコ敵が出現するすべてのイベント内容を修正していきます。
起動条件「フラグ:ザコ敵出現OFF」を「0:フラグが立っていない場合」とするだけです。
これで「フラグ:ザコ敵出現OFF」が「0:フラグが立っていない場合」のみイベントが実行され、「1:フラグが立っている場合」はイベントが実行されません。
step19-024.jpg

 

「コモンイベントエディタ」に戻り、「フラグON/OFF」機能で行った処理と同様に「フラグ」の値を判断して、「1:フラグが立っている場合」、「0:フラグが立っていない場合」に分岐させていきます。
step19-019.jpg

 

「1:フラグが立っている場合」は「フラグ」を「0」にします。
step19-020.jpg

 

「0:フラグが立っていない場合」は「フラグ」を「1」にします。
step19-021.jpg

 

以上で、「デバッグメニュー」が完成しましたの、「OK」「更新」ボタンを押して「コモンイベント」を保存します。
step19-023.jpg

 

こちらが「デバッグメニュー」の全処理です。
分岐が多いので、長くなっていますが、処理自体は単純なものになっています。
step19-022.jpg

 

テストプレイで問題なく「デバッグメニュー」が表示されました。
step19-025.jpg

 

今回の「デバッグメニュー」で実装した機能以外にも、ウディタの「基本システム」でできることなら色々な機能を実装させることが出来ます。不自由に感じることがあったら、解決する機能を実装していく形で発展させていける項目だと思います。

 

また、ウディタの公式HPにある「WOLF RPGエディター コモンイベント集」には「デバッグ」機能に特化した「コモンイベント」がいくつか登録されていますので、そういったものを利用してみるのも良いと思います。

戦闘バランスの調整

RPGにおいて「戦闘」はゲーム性の主たる部分になります。
ここがきちんとできていないとゲームとして面白く感じられません。
今回の制作では、「基本システム」に実装されている「戦闘」の要素である「属性」(火属性の魔法などそういったもの。属性については別コーナーSTEP+4 属性の設定にて説明しております。)を取り上げていないため、より深い「戦闘」とはなりませんが、それとは別に適度な難易度というのが重要な要素になります。
敵が極端に強すぎたり・弱すぎたりするとプレイヤーは面白いと感じてくれませんので、うまく「戦闘のバランス」を調整しなければなりません。

 

そのためには何度と無く、実際にゲーム中での「戦闘」を行い、「敵・味方・技能」など各種パラメータを調整する必要があります。

 

ただ、「戦闘バランス」を調整するにあたって、毎回マップをうろうろして「戦闘」するのは効率がよくありません。
「デバッグメニューの作成」で作った「戦闘」機能のように、任意の「敵グループ」と「戦闘」できるような環境を作るのが効率的です。
「デバッグメニュー」上ですと、毎回「デバッグメニュー」を開いて「敵グループ」を選択する必要があるため、もっとスムーズに「戦闘」が開始できるような「戦闘バランス調整用マップ」をつくってみようと思います。

戦闘バランス調整用マップの作成

今回制作する「戦闘バランス調整用マップ」というのは、接触するとすぐに「戦闘が開始されるイベント」を多数配置したマップになります。
マップ上には「戦闘イベント」だけでなく、「全回復イベント」「マップ脱出イベント」も設置してみましょう。
これで延々と「戦闘」を行い、「戦闘バランスの調整」をしていくことができます。

 

マップを新規作成します。
不要ですが、BGMも設定しておきます。
step19-030.jpg

 

「戦闘が開始されるイベント」は「敵グループ」の数分配置しますので、「ユーザーデータベース タイプ12:敵グループ」で「敵グループ」の数を確認します。

[tip]ウディタ2では?
 「タイプ13:敵グループ」

「敵グループ」の数は「10」でした。
step19-031.jpg

 

無駄に装飾してみましたが、ざっくりとマップを作ってみました。
step19-033.jpg「敵が出現するイベント」の目印。
step19-034.jpg「全回復するイベント」の目印。
step19-035.jpg「フィールドマップに移動するイベント」(脱出用)の目印。
step19-032.jpg

 

「敵が出現するイベント」の目印の上に「イベント」を設置します。
起動条件は「プレイヤー接触」です。
step19-036.jpg

 

「コモンイベント24:バトル発生」を呼び出す「イベントコマンド」を入力します。

[tip]ウディタ2では?
 「コモンイベント28:バトルの発生」

step19-037.jpg

 

はじめに作った「敵が出現するイベント」「イベントコピー」「イベント貼り付け」「C」(コピー)「V」(貼り付け)で複製していき、「コモンイベント24:バトル発生」を呼び出す「イベントコマンド」敵グループの設定だけ変更していきます。
step19-038.jpg

 

「全回復するイベント」「フィールドマップに移動するイベント」(脱出用)起動条件は「プレイヤー接触」で作成し、各機能を設定して、マップは完成となります。
step19-039.jpg

 

あとは「ゲーム開始位置に設定」をこのマップに設定してもいいですが、せっかくなので、「デバッグメニューの作成」で作った「デバッグメニュー」「戦闘」機能をこのマップに移動する内容に変更しておきます。
step19-040.jpg

 

テストプレイで動作を確認します。
step19-041.jpg

 

これで、「戦闘バランス調整用マップ」は完成しましたので、地道に「戦闘」をしながら、各種パラメータを調整していくのみです。
各種パラメータの設定方法についてはこちらを参照してください。
「STEP11 技能・ステータス状態の設定」「STEP12 敵の設定」「STEP13 味方の設定」
また、「デバッグに便利な機能」で説明した「データの再読込」(■対応キー:[F11])を活用すれば、「技能・ステータス状態の設定」「敵の設定」「アイテムの設定」がある「ユーザーデータベース」を編集しながら即反映できるので、より効率よく調整していくことができます。ただし、「味方の設定」がある「可変データベース」「データの再読込」(■対応キー:[F11])には対応していないので、注意が必要です。

 

こちらは「デバッグ」作業の参考に。
「戦闘」をしつつ敵のパラメータを調整する際にバランスよく組めるよう、一度パラメータを「Excel」に写して、全体を見ながら調整を行った際の画面になります。
ウディタの設定画面では全体のバランスがわかりにくいので、全体を見て各種パラメータの調整を行う場合は、入力作業の手間はかかるのですが、「Excel」のような表計算ソフトを使うとたいへん便利です。
step19-049.jpg

アイテムの追加

「ゲームバランスの調整」として、「アイテム」を2種類追加していきます。

「毒けし」アイテム

「STEP11 技能・ステータス状態の設定」「ステータス状態 毒」を及ぼす敵の「技能」を作成しましたが、「ステータス状態 毒」を回復する方法が「自宅のベッドでの回復」と「森の泉での回復」しかありませんので、「ステータス状態 毒」を回復する「アイテム」を作っていきます。
「アイテム設定」の詳細については「STEP10 アイテム&お店の設定」を参照してください。

 

追加する「アイテム」の詳細はこちら。

アイテムの種類アイテム名値段効果入手場所
消耗品毒けし30「ステータス状態 毒」を回復する道具屋
 

「ユーザーデータベース」を開き、タイプ「2:アイテム」「データ4番」に「毒けし」を追加していきます。基本的な設定は「下級キズ薬」などの回復アイテムと同様にして、「回復するステータス」で「毒」と設定すれば「毒けし」アイテムの完成です。
step19-026.jpg

 

あとは、村の「道具屋」に商品として追加すれば完了です。
商品の追加の仕方は「STEP10のお店設定」を参照してください。

「ワープ」アイテム

今度は少し変り種の「アイテム」で、使用することにより村にワープできる「アイテム」を作っていきます。
これは予め「ワープするイベント」を作っておき、「アイテムを使用した時」「ワープするイベント」が呼び出されるという仕組みで実現できます。

 

追加する「アイテム」の詳細はこちら。

アイテムの種類アイテム名値段効果入手場所
消耗品村への道しるべ50村に瞬時に移動することができる道具屋
 

まずは、「ワープするイベント」を作成していきましょう。
この「イベント」はどこからでも呼び出せる「コモンイベント」で作っていくことにします。
「マップ」に設置された「イベント」「マップイベント」を設定することも出来ますが、その「マップイベント」がある「マップ」でしか機能しないものになります。

 

「コモンイベントエディタ」を開き、「103番」に「ワープアイテム」を追加します。
step19-027.jpg

 

こちらが全処理内容になります。
画面を白くフラッシュさせたり、トランジションを使用したりしていますが、「STEP8のマップの移動設定」と同様に単純に「場所移動」をするイベントです。
step19-028.jpg

 

完成しましたら、「OK」「更新」ボタンを押して「コモンイベント」を保存します。
step19-023.jpg

 

続いて、「アイテム設定」をしていきます。
「ユーザーデータベース」を開き、タイプ「2:アイテム」「データ5番」に「村への道しるべ」を追加します。基本的な設定は「下級キズ薬」などの消耗アイテムと同様にして、

  • 使用可能な場面を「マップ時だけ」。
  • 効果タイプ「イベント起動」
  • イベント番号指定「500103」
    イベント番号指定マップイベントの場合は「0~」コモンイベントの場合は「500000~」と指定しますので、「コモンイベント103番:ワープアイテム」を指定するには「500000+103」で「500103」となります。

これで、「ワープ」アイテムの完成です。
step19-029.jpg

 

あとは、村の「道具屋」に商品として追加すれば完了です。
商品の追加の仕方は「STEP10のお店設定」を参照してください。

「アイテム入手イベント」作成

「コモンイベント」を作成して行った「STEP18 お宝イベントを作ろう」の内容が多少難しい内容になってしまいましたので、こちらではより簡単な「アイテム入手イベント」の作成を行っていきます。

 

「アイテム入手イベント」は、そのままツボや宝箱を調べると、アイテムを発見入手する「イベント」となります。
「アイテムを入手させる機能」「コモンイベント0:アイテム増減」「コモンイベント1:武器増減」「コモンイベント2:防具増減」を呼び出すことで実現できます。
あとは、何度も同じ場所で「アイテム入手イベント」が発生しないよう「フラグ」を作っておく必要があります。

 

STEP15で作ったストーリーイベント用のフラグ設定と同じように、「システムデータベースエディタ」「14:通常変数名」「お宝ゲット済み」フラグをいくつか作っていきます。
step18-017.jpg

 

それでは、実際にマップ上に「アイテム入手イベント」を設置していきます。
村のマップに切り替えて、「タル」のある場所にしてみます。
step19-042.jpg

 

イベントの名前を「タル1」、起動条件「フラグ:お宝ゲット01 が 0 と同じ」(フラグ:お宝ゲット01が立っていない時)とします。
これで、「フラグ:お宝ゲット01」が立ったあとは、「アイテム入手イベント」が起動しなくなります。
step19-043.jpg

 

その他2タブを選択して、「コモンイベント0:アイテム増減」を呼び出します。

[tip]ウディタ2では?
 イベントコマンド「コモンイベント」
  • アイテム番号を「下級キズ薬」。
  • 増減数を「1」。
  • 入手メッセージを「あり[個数無し]」。

これで、「アイテムの入手」「メッセージ表示」の処理ができました。
step19-044.jpg

 

入手させたいアイテムが「武器」・「防具」の場合は、「コモンイベント1:武器増減」「コモンイベント2:防具増減」を呼び出して、あとは同じ手順です。
step19-045.jpg

 

今度は、「フラグ:お宝ゲット01」を立てます。
「変数操作」タブを選択し、代入先「フラグ:お宝ゲット01」代入演算子を「=」、代入値を「1」とします。
step19-046.jpg

 

こちらが「アイテム入手イベント」の全処理です。
同じように各場所に設置していきます。
「宝箱」を使う場合は「宝箱」が開閉する動作が必要な場合もあると思うので、「STEP18 「宝箱でお宝ゲット」イベント作成」を参考に作成してください。
step19-047.jpg

 

テストプレイで動作を確認します。
step19-048.jpg

 

これで「アイテム入手イベント」は完成しましたが、ここで一つ注意することがあります。

 

「所持アイテム数の上限」についてです。
ウディタの「基本システム」では、所持できる「アイテムの種類」の数に制限はないようです。
ただし、「アイテムの種類」ごとには「ユーザーデータベース ベースシステム設定」「アイテムの最大所持数」で設定された上限が適用されます。

 

具体的には、「下級キズ薬」「中級キズ薬」「上級キズ薬」・・・と「アイテムの種類」に関してはいくつでも所持することが出来ますが、その「アイテムの種類」一つ一つに関しては「下級キズ薬」99コまで、「中級キズ薬」99コまで・・・という制限があります。
「アイテムの種類」ごとに所持数の上限は設定できません。

 

今回、アイテムを入手させるために使用した「コモンイベント0:アイテム増減」「コモンイベント1:武器増減」「コモンイベント2:防具増減」には「所持アイテム数の上限」となっていた場合に、アイテムが上限以上に増えることはないのですが、「アイテムを入手したというメッセージ」は表示されます。また、「フラグ」の操作は別で行っているため、実際にはアイテムを入手していない(増えていない)のにアイテムを入手した「フラグ」は立ってしまいます。
自然な処理をするには、「STEP18 お宝イベントを作ろう」で行った多少難しい作り方をしなければなりません。

 

ただし、「ユーザーデータベース ベースシステム設定」「アイテムの最大所持数」の値を大きくすれば、こういったリスクも減りますので、なるべく簡単な処理で制作したい場合はこちらの設定をしておきましょう。

[tip]ウディタ2では?
 「タイプ17:システム設定」

step18-019.jpg

 

icon03.gif 続いて、「STEP20 ゲーム完成」に進みましょう。



※TOPページでの説明どおり、コメント受付を停止させていただきました。


  • あの……すごく小さな事なんですが不自然な箇所を見つけたので報告させて頂きます。「スクリーンショット撮影方法」を紹介する欄で「ゲーム画面の画像をGame.exeがあるフォルダに保存されます」とあります。「画面を」ではなく「画面が」ではないでしょうか。……細かくてすいません (--; -- さるびー? 2011-05-14 (土) 18:14:39
  • さるびーさん ご指摘ありがとうございます。修正させていただきました。 -- 管理人 2011-05-16 (月) 10:05:22