TOPへ

今日からはじめるRPGツクールVX講座

第15回 「ダンジョンに仕掛けを作ろう」

初心者向けRPGツクールVX講座、第15回目です。
第14回では、魔王城のマップを描いて、そこにワナを置いてみました。
今回は、プレイヤーが「魔王城」の奥に進むためにクリアしなければならない仕掛けを作っていきます。

STEP36.魔王城の仕掛けをイメージする

プレイヤーが簡単に先へ進めないようにするにはどうすればいいでしょうか? ひとつは魔物の洞窟で作ったような鍵つき扉を置くといった仕掛けが考えられます。そこで、同じ扉でも魔王城では少し凝った仕掛けに挑戦してみたいと思います。

魔王城・1階の仕掛けを考えてみました。

  • 2階へ続く階段の前に鍵穴のない扉がある
  • 鍵穴のない扉は1階に点在する3つの石版を壊すことで消える

まず2階へ続く階段の手前の通路に鍵穴のない扉を作り、先へ進めないようにします。1階の3箇所に石版(イベント)を配置して、それらを調べることで壊せるようにします。そして3つの石版すべてを壊した時点で鍵穴のない扉が開く(扉のイベントが消える)ようにします。ここで重要となるのが、3つの石版をすべて調べた(壊した)という判断をどのように行なうかということです。

最初に思い浮かぶのはスイッチを使うことです。しかし、スイッチが判断できるのははON/OFFの区別のみです。これではそれぞれの石版が壊れたか壊れていないかの判断しかできません。3つすべてが壊されたことを判断するのに使うのが“変数”です。“変数”については次のステップから説明していきますが、『RPGツクールVX』をマスターするにあたって必須とされる要素のひとつです。仕組みさえわかってしまえば非常に便利なものなので、がんばって覚えてしまいましょう。

STEP37.変数の使い方を覚えよう

それでは“変数”を使ってイベントを組んでみる前に、その概念について説明しておきましょう。

“変数”の仕組み

第4回にて「スイッチとはゲーム内で行なわれた処理を記録しておくための目印」という説明をしました。“変数”も役割としてはスイッチと同じく「ゲーム内で行なわれた処理を記録しておくための目印」です。スイッチと大きく違うのは、スイッチはON/OFFのふたつの状態しか記憶できないのに対して、変数はその中に数値を記憶しておくことができる点です。

変数を操作する際の基本は、中学校の数学で習う“代入”です。0001番の変数を例に説明します。変数0001番の初期状態は「0」です。ここで、イベントコマンドを使って「変数0001番に5を代入する」という命令を実行したとします。するとゲーム内では「変数0001番の中にある数値は5である」として参照できるようになります。そのあとで「変数0001番に7を代入する」という命令を実行すれば、今度は「変数0001番の中にある数値は7である」として参照できるようになります。また、数値として扱っているので、変数の中の数値に対して、任意の数値を足したり(加算)、引いたり(減算)、かけたり(乗算)、割ったり(除算)することもできます。

たとえば初期状態の変数0001番(中の数値は「0」)に「1を足す」という命令を実行すると、実行後の変数0001番の中の数値は「1」になります。もういちど「1を足す」という命令を実行すればさらに「1」が加算されて、変数0001番の中の数値は「2」になります。変数とは「数を覚えておけるスイッチ」という風に覚えておくとよいでしょう。

これだけの説明では、変数がどういうものなのかピンとこない人も多いと思います。そこで実際にイベントを組みながら使い方を学んでいくことにしましょう。

変数で壊された石版の数を数える

変数とは「数を覚えておけるスイッチ」であると説明しました。これは具体的にいうと特定のアイテムの所持数や特定の行動の回数を数えて、変数の中に覚えておけるということです。ちょっとだけピンときたでしょうか?そうです。プレイヤーが壊した3つの石版の数を、この変数を使って覚えておけば(数えれば)よいのです。それではどのような操作で数えればよいのか、実際に組みながら説明します。

石版のイベントを新規作成

壊せる石版のイベントを組んでいきます。

[モード]を[イベント]にします。


●イベントの新規作成

1枚目の石版は「魔王城・1階」(045,035)に置きます。ここにカーソルを合わせて右クリック、ポップアップメニューから[イベントの作成]を選びます。


●グラフィック・オプションの設定

石版のグラフィックは「Tileset-C」にあります。[プライオリティ]は[通常キャラと同じ]にしておきます。[自律移動][オプション][トリガー]は初期設定のままでかまいません。


●イベントコマンド[文章の表示]

プレイヤーが石版を壊したことを認識できるように、メッセージで教えてあげるようにしましょう。[実行内容]の下にある「◆」のマークをダブルクリック、イベントコマンド一覧の1ページ目にある[文章の表示]を選びます。

イベントコマンド[変数の操作]の設定


●イベントコマンド一覧1ページ目

[文章の表示]の下にある「◆」のマークをダブルクリック、イベントコマンド一覧の1ページ目にあるイベントコマンド[変数の操作]を選んでください。


●イベントコマンド[変数の操作]

設定できる項目がたくさんあるので一瞬迷ってしまいますが、必要な設定は3項目だけです。


●[変数]の設定

まず[変数]です。この項目ではスイッチと同じく実際に操作したい変数を指定します。ここでは[単独]にチェックがつた状態で右にある「…」をクリック、0001番の変数を選びます。


●[変数]ダイアログ

スイッチと同じく名前をつけることができますので、名前をつけておきましょう。名前はわかりやすく「石版を壊した数」としました。


●[操作]の設定

[操作]とは、指定した変数に対して行なう操作(代入や加算など)のことです。ここでは[加算]にチェックを入れてください。


●[オペランド]の設定

聞きなれない言葉ですが、[オペランド]とは、指定した変数に対して実際に代入されたり、足したりされる数値のことです。直接数値を入力することもできますし、アイテムの所持数のようにゲーム中の情報を参照にすることもできます。ここでは“定数”にチェックを入れて、数値を「1」と入力してください。


●[変数の操作]設定後

これまでの操作で、変数[0001:石版を壊した数]に定数「1」を[加算]する設定になりました。ここで「1」を[加算]することにしたのは、プレイヤーが3つ配置する石版のうちのどれから調べるかがわからないからです。ひとつ調べるたびに変数[0001:石版を壊した数]が1増えていくようにすれば、どの石版から調べても、1枚目を調べたときに変数[0001:石版を壊した数]の数値が1に、2枚目を調べたときに変数[0001:石版を壊した数]の数値が2に、そして3枚目を調べたときに変数[0001:石版を壊した数]の数値が3になります。そして変数[0001:石版を壊した数]の数値が3になれば、石版を3枚とも調べた(すべて壊した)ことになるわけです。


●イベントコマンド一覧1ページ目

同じ内容のイベントが繰り返されないようにセルフスイッチを使って管理します。[変数の操作]の下にある「◆」のマークをダブルクリック、イベントコマンド一覧の1ページ目にあるイベントコマンド[セルフスイッチの操作]を選んでください。


●イベントコマンド[セルフスイッチの操作]

[セルフスイッチ]は「A」を、[操作]は「ON」を選びます。


●1ページ目完成

2ページ目の作成

2ページ目の役割は壊した後の石版を表現することにあります。イベントの編集画面の上の方にある[イベントページ作成]をクリックして2ページ目を新規作成します。


●出現条件[セルフスイッチ]

イベントの出現条件は[セルフスイッチ]にチェックを入れます。「A」がONとなっていればOKです。


●グラフィック・オプションの設定

「Tileset-C」から壊れた石版のグラフィックを選びましょう。[自律移動][オプション][プライオリティ][トリガー]は初期設定のままでかまいません。


●2ページ目完成

イベントをコピーして残りの石版を配置

これで石版のイベントができました。すでにお気づきの人もいるかもしれませんが、実は残りふたつの石版のイベントもまったく同じ内容となります。理由は、どの石版から調べてもいいように、いずれのイベントも変数[0001:石版を壊した数]が1増えていく内容にしているからです。またイベントの管理にセルフスイッチを使っているので、通常のスイッチを使った場合と違ってイベントごとに専用のスイッチを設定し直す必要もありません。そのため、これら3つのイベントはすべて同じ内容でもよいわけです。


●イベントの[コピー]

「魔王城・1階」(045,035)の石版のイベントにカーソルを合わせて右クリック、ポップアップメニューから[コピー]を選びます。


●イベントの[貼り付け](010,020)


●イベントの[貼り付け](047,007)

次に、新たに石版のイベントを置きたい場所にカーソルを合わせて右クリック、ポップアップメニューから[貼り付け]を選びます。ここでは、残りふたつの石版を(010,020)と(047,007)に貼り付けました。

扉のイベントを作成する

2階へ続く階段の前に立ち塞がる、鍵穴のない扉のイベントを作ります。このイベントは2ページ構成となります。1ページ目は、壊した石版の数が3枚に満たないのときの内容。2ページ目は石版を3枚すべて壊したときの内容です。


●イベントの新規作成

イベントを置く場所は「魔王城・1階」(028,017)です。カーソルを合わせて右クリック、ポップアップメニューから[イベントの作成]を選びます。

イベントの1ページ目を作る

1ページ目は壊した石版の数が3枚に満たないのときの内容です。この場合、扉は開きません。メッセージを表示して、そのことをプレイヤーに知らせます。


●グラフィック・オプションの設定

[グラフィック]をダブルクリックして扉の絵を設定します。!Door1の下の段、右から2番目の絵を選択します。[自律移動][オプション][プライオリティ][トリガー]の設定は変更しません。


●イベントコマンド[文章の表示]

[実行内容]と書かれた下にある「◆」のマークをダブルクリックして、イベントコマンドの一覧から[文章の表示]を選択します。[文章]の枠内にカーソルを移動させてメッセージテキストを入力します。

魔物の洞窟をクリアしたプレイヤーは、この扉もカギで開くものと考えるかもしれません。そこでメッセージの中に開け方についてのヒントを表示してあげましょう。これで扉を調べたときに開け方がわかるはずです。


●1ページ目完成

イベントの2ページ目を作る

2ページ目の役割は3枚すべての石版が壊された後の状態、つまり扉が消えている状態を表現することです。イベントの編集画面の上の方にある[イベントページ作成]をクリックして2ページ目を新規作成します。


●出現条件[変数]

イベントの出現条件は[変数]にチェックを入れます。ここで参照する変数は[0001:石版を壊した数]です。[0001:石版を壊した数]の中の値が3以上になっていれば、石版は3枚壊されていることになりますので、ここでは「3」を入力します。


●2ページ目完成

イベントの出現条件以外、2ページ目の内容は設定しません。グラフィックは選択せず、[プライオリティ][自律移動][オプション][トリガー]も初期設定のままにします。これで鍵穴のない扉のイベントは完成です。

■テストプレイで確認する

最後にテストプレイでチェックしておきましょう。チェックポイントは以下の項目です。

  • 3枚の石版を壊す前に「魔王城・1階」(028,017)の扉を調べたとき、メッセージが表示されるか?
  • 「魔王城・1階」(045,035)の石版を調べたあと、石版が壊れたグラフィックに変わるか?
  • 「魔王城・1階」(010,020)の石版を調べたあと、石版が壊れたグラフィックに変わるか?
  • 「魔王城・1階」(047,007)の石版を調べたあと、石版が壊れたグラフィックに変わるか?
  • 3枚の石版をすべて壊したあと、「魔王城・1階」(028,017)の扉がなくなっているか?

石版を2枚しか壊していないのに扉が開いてしまった、石版を3枚すべて壊したのに扉が消えないといった場合には、変数の加算が正しく行なわれているか、同じイベントが繰り返されていないかを重点的にチェックしてみてください。

第15回はここまでです。 いよいよ魔王城のイベントも佳境に入ってきました。複雑なイベントを組むと、それだけデバッグも大変になってくるかと思います。そこで次回は魔王城の2階のイベントを作る前に、テストプレイで使えるデバッグ機能など、知っておくと便利な機能を紹介したいと思います。

今回のプロジェクトデータ:vx_kouza15.exe (423KB)
※RPGツクールVX体験版では[プロジェクトを開く]の機能を使うことができません。こちらのサンプルデータを読み込むためにはRPGツクールVX製品版が必要となります。あらかじめご了承ください。

目次に戻る