RPGツクールMV:アイテムショップを作る

アイテムショップは、イベントの作成で作ります。

このマップの右上にアイテムショップの店員さんを置く場合を例にして、アイテムショップの作り方を説明します。マップの見た目は、アイテムショップ作りとは関係ありません。どんなマップの、どこにでも同じようにしてアイテムショップを作れます。


最初に、イベントのアイコンを押して「イベント編集モード」にします。

アイテムショップを作りたいタイルで右クリックして「新規」を選びます。

イベントの編集画面で、画像とオプション(足踏みアニメ)を設定しておきます。名前も「アイテムショップ」などわかりやすいものを付けておきましょう。アイテムショップを複数作るときは、たとえば「王国城のアイテムショップ」
「 魔王城の秘密の店」のような感じで、どこにあるショップなのか区別がつくようにしておきます。

次に、実行内容の一番上の欄でメニューを出し、新規を選びます。

3のタブのところに「ショップの処理…」というのがあるので、それを選びます。

すると、ショップで売るアイテムを選ぶ画面が出ます。

右クリックして「編集」を選ぶか、空欄をダブルクリックします。

「商品」のところから、RPGツクールで最初から用意されているアイテムが選べます。追加したいアイテムを選んでOKを押しましょう。価格は「標準」にすると、アイテムに設定されている価格がそのまま使われます。値段を変えたい場合は、指定のほうにチェックを入れて、売りたい値段を右の欄に入れます。

最初から選べる、4つのアイテムを全部登録してみました。下にある「購入のみ」にチェックを入れると、アイテムを買うことはできるけど、売ることができないお店になります。

選んだ画像が表示され、アイテムショップ(店員さん)ができました。テストプレイしてみましょう。

店員さんに話しかける(スペースキーを押すかマウスでクリックする)と、ちゃんと4つのアイテムを売ってくれます。お金がないので、どれも買えませんが…

これでアイテムショップ自体はできてるのですが、店員さんが何も言わないのは少し味気ない感じがします。そこで、ショップの処理に入る前に、店員さんが「いらっしゃいませー」というようにしてみます。

店員さんの上で右クリックして「編集」を選び、イベントの編集画面を出します。ショップの処理という項目があるので、その上で右クリックして「新規」を選びます(編集ではありません)。すでに登録されている「処理」の上で右クリックして「新規」を選ぶと、その処理の直前に別の処理を追加できます。

「文章の表示」を選んで…

こんな感じで、顔とセリフを入れてみました。

ついでに、ショップの処理の後にもこんな「文章の表示」の処理を追加してみました。

実行内容はこんな感じになります。テストプレイしてみましょう。

ちゃんと挨拶してくれるようになりました。

ショップの処理になったあとで、ショップの画面から「やめる」を選ぶと…

「また、よろしくねー!」と言ってくれます。ちゃんと店員さんが対応してくれている感じになりましたね。

もし、処理を入れる場所を間違ってしまったら、位置を変えたい処理の上で右クリックして「切り取り」を選んで、次に移動させたい場所で右クリックして「貼り付け」することで移動できます。

例えば、こんな感じでショップの処理の後に、いらっしゃいませーが入ってしまったとしましょう。これをショップの処理の前に移動させたいときは、

「切り取り」のメニューを使って切り取ります。

「ショップの処理」を選んで、貼り付けます。

すると、こんな感じで「貼り付け」をした処理の直前に、さきほど「切り取り」した処理がコピーされます。これで、処理の順番を変えることができます。

なお、売るアイテムを新しく作りたいときは、データベースの画面の「アイテム」のタブで新しく作る必要があります。これについては、別の記事で説明します。

武器ショップも作る

ついでに武器のお店も作ってみましょう。やり方は、アイテムショップを作るときと同じで、違うのは商品を選ぶ画面で「武器」を選ぶところです。

武器のチェックを押すと、最初からある4つの武器を選べるようになります。

全部の武器を登録してみました。ついでに防具も登録してみましょう。防具を追加したいときは、商品の画面で「防具」を選びます。

防具も最初から4種類用意されています。

全部登録していました。武器と防具を同時に売ることもできます。もちろん、このリストに登録すれば、アイテムも一緒に売ることもできます。

店員さんのセリフも入れてみました。

完成したイベントはこんな感じです。テストプレイしてみましょう。

武器ショップができました。店員さんも、ちゃんと対応してくれてます。

武器と防具の両方とも売ってます。お金がなくて買えませんが…

何も買わなくても挨拶してくれます。武器や防具も新しく作ることができますが、これも別の記事で紹介する予定です。

倒れたメンバーを復活してくれるシスターを作る

戦闘で味方がやられて戦闘不能になったときに、復活する方法がないとゲームを進める上で困ってしまいますよね。アイテムで復活させるというのも良いですが、たいていのゲームでは復活してくれる人(シスターとか神官とか)が用意されています。ここでは、倒れたメンバーを復活してくれるシスターを置いてみます。

シスターも、イベント編集モードで作ります。シスターを置きたい場所で右クリックして「新規」を選びます。

画像を選んで、オプションで足踏みにしています。ここでは画像を左向きのものを選んでますが、置く場所によって画像の向きは一番よいものを選んでください。

倒れた状態から復活させるには「ステートの変更」をいう処理を選びます。ステートというのは、キャラクターに起こる何か異常な状態(ステート)のことを言います。キャラクターは倒されてしまうと「戦闘不能」という状態(ステート)になります。この状態になっていると、そのキャラクターは戦うことができなくなります。この「戦闘不能」の状態を消す(解除する)ことができれば、倒れた状態から復活して、また戦うことができるようになるわけです。

「ステートの変更」を選ぶと「誰の」「どの状態(ステート)」を変更するかを選べます。「操作」のところにある「付与」は、その状態にするという意味で、「解除」は、その状態がない状態に戻すという意味です。

シスターには、パーティ全員の戦闘不能を解除してもらいたいので、下のように設定します。

これで、誰が倒れても復活してくれます。(全員倒れたらゲームオーバーですけどね)

雰囲気を出すために、それっぽいセリフも作りましょう。

こんな感じにしてみました。さて、テストプレイをしてみたいところですが…さすがに、誰かを戦闘不能にするには時間がかかって大変なので、シスターと逆の「誰かを絶対に戦闘不能にしてしまう」というテスト用の悪魔も用意してみます。

間違ってしゃべらないように、少し行きにくい場所においておきます。作り方はシスターとほぼ同じですが、違うのは「戦闘不能」を解除するのではなく「付与」するところです。

パーティ全体を戦闘不能にするとゲームオーバーになるので、2番目にいるキャラを必ず戦闘不能にするようにしてみます。(ごめんねテレーゼ!)

こんな感じです。テスト用なのでセリフは付けてません(付けても良いです)。

シスターと悪魔の両方が配置されました。ではテストプレイをしてみましょう。

話しかけると、一見何も起こりませんが…

テレーゼが倒れてます!恐るべき悪魔!

この状態で、シスターのところに行って話しかけると…

やはり何も起らないように見えますが、

ちゃんと戦闘不能から戻っています。でもHPは1になってます。もしHPも回復させたければ、戦闘不能のステータスを変更したあとに、さらにHPの増減という処理を入れて、HPを回復させる必要があります。ここでは、シスターは復活させるだけの役目にすることにして、回復は「宿屋」でやってもらうことにします。

これで、復活するということ自体はできてるのですが、画面の上で何も起らないので、何かしてくれた感じが少ないですよね。そこで「画面のフラッシュ」をいう効果を入れて、何かした感じを出してみます。

戦闘不能を解除する直前に、画面がピカピカと光るようにしてみます。

光らせるには、この「画面のフラッシュ」を使います。

光らせる色を変えたり、光っている時間の長さを変えたりできます。ここでは、ひとまず何も変更しないでどうなるか試してみましょう。

こうなりました。ではテストプレイしてみましょう。

写真ではわかりにくいですが、画面が白くなって、1秒かけて元に戻ります。こうすると、何となくシスターに何かされた感じがでますよね。

効果音(SE)を付けると、さらにそれっぽくなります。効果音は「SEの演奏」で追加できます。

いろいろな効果音が用意されているので、聞いてみてよさそうなものを選びます。

ここでは、Recovery というのを選んでみました。英語の単語としては「回復」とか「復活」みたいな意味です。

画面がフラッシュするより前に音を出します。後にすると、画面のフラッシュが終わってから音がして、ちょっと間抜けな感じになります。

写真では全然わかりませんが、音が出るようになっています。音があってないなと思ったら、イベントの編集で別の効果音を選びましょう。

ちなみに、誰も倒れてない状態で話しかけても、シスターは同じように「恵あれ」をしてくれます。もちろん、何も起きませんが…

宿屋を作る

最後に、HPとMPを全快してくれる宿屋を作りましょう。宿屋だけは、なぜかイベントの簡易作成で作れます。

イベント編集モードにして、宿屋の店員を置きたい場所で右クリックして、イベントの簡易作成から「宿屋」を選びます。

宿屋の店員の画像を選び、料金を決めます。

これで、できました。テストプレイしてみたいところですが、最初の時点でキャラクターのお金がないのと、HPやMPが満タンでは回復したかわかりません。そこで、HPとMPを減らしつつ、100Gくれる悪魔を作ります(シスターのところで作った悪魔の再利用でもいいです)。

とりあえず、ここに作ります。すでに悪魔がいる場合は、編集しなおすのでも良いです。

まずは所持金を増やす処理を入れます。

100G増えるようにします。次に、HPとMPを減らします。

HPの増減という処理で、HPを増減します。

操作を「減らす」にして、オペランドの定数を100にします。これで、パーティメンバーのそれぞれのHPが100ずつ減ります。「戦闘不能を許可」にチェックをしないでおけば、HPが100ない時でも0以下にはなりません(1になります)。

MPのほうも100減らしてみます。

MPは減っても戦闘不能になったりはしないので、戦闘不能に関係するチェックはありません。

こうなりました。ではテストプレイしてみましょう。

悪魔に話しかける前はこうです。

スペースを押すかマウスでクリックして話しかけると…

100ずつ減ってますね。調子にのって何度も話しかけると…

死にそうになってます! MPは0になってますね。お金も増えてます。HPとMPを売るとお金をくれるなんて、まさしく悪魔ですね!

それはともかく、これでテストができるようになったので、宿屋に行ってみましょう。

宿屋の店員さんに話しかけて、「はい」を選んでみます。

画面が真っ暗になって、音楽が流れましたでしょうか。これでステータスを確認してみると、

ちゃんと回復してますね。お金も10G減ってます。もし、お金がないときに話しかけると、お金がないよと言われます。

お金がないときは泊めてもらえないという処理は、条件分岐という命令を使って実現しています。これについては、「スイッチと条件分岐」という記事で説明する予定です。

さて、宿屋は一応できたのですが、セリフに顔が表示されないし、画面上で歩いてもいないので、ちょっと味気ないことになっています。イベント編集モードで編集して、顔とアニメーションを付けておきます。

セリフも事務的なので、ちょっと変えてみます。

お金が足りないときのセリフにも顔をつけます。オプションで「足踏みアニメ」にするのも忘れないように。

こんな感じになりました。試してみましょう。

エルフのお姉さんがお出迎えしてくれました。

おおっと、お姉さん厳しいね!

もちろん10G以上持っていれば、ちゃんと泊めてくれます。こんな感じで、宿屋も作ることができます。

これで、ショップや宿屋などの作り方についての説明は終わります。

RPGツクールMV:お城に入れるようにする(複数マップ)

初級編ではマップはひとつだけで、魔王城などに入ることができませんでした。ここでは、魔王城や王国のお城のところまで行くと、王国のお城の中や魔王城の中に入れるようにする方法について説明します。

城に入れるようにするには、まず王国の城の中という新しいマップを作る必要があります。そして、外のマップとお城のマップをイベントを使ってお互いに移動できるようにします。そうすることで、城の中に入れるようにでききます。

まず、新しいマップを作る(複数のマップを作る)方法について説明します。

マップの編集をする画面で、右下のMAP001という項目がある表(シマシマのところ)でマウスの右ボタンをクリックし、出てくるメニューから「新規」を選びます。

そうすると、マップの設定というウィンドウが出てきますので、表示名と名前のところを「王国のお城」にしておきます。名前は何でもいいのですが、わかりやすい名前にしておいたほうが良いでしょう。「表示名」のほうは、ゲーム中にプレイヤーがこのマップに入った時に表示される名前です。普通は「名前」と同じにしておけばよいですが、あえて地名を伏せたいときには、表示名を「???」にしたり、何も入れないでおいたりします。

タイルセットのところを「外観」にしています。ここを「外観」にしておくと、町とかお城の中を作るときに便利なタイル(地形)が使えるようになります。家の中を作りたいときは「内装」にします(魔王の城のところで説明します)。

マップのサイズ(幅と高さ)は17と13になっていますが、ここを変えることでもっと大きなマップも作れます。ここでは両方とも20にしてますが、好きなサイズにして構いません。ただ、お城などのマップは壁が多くなるので、最初に設定されている13よりも少し縦方向(高さ)を大きくしておいたほうが作りやすいと思います。

あと、ここではBGMも設定しています。BGMがないと、寂しいお城になります。

OKを押すと、何も地形が置かれていないマップができます。あとは、初級編でマップを作った時と同じように、左側のパレットから地形(タイル)を選んで、マップを描いていきます。マップを描くときは、上のアイコンで「マップの編集」を選んでおくことを忘れないように。

大きなマップになると、ウィンドウの中に表示しきれなくなります。その場合は、上にある拡大、縮小のアイコンを使って表示されるサイズを変えるか、ウィンドウの右や下にあるスクロールバーを触って、表示する位置を変えます。

これは「縮小」です。左の+が書いてある虫眼鏡は「拡大」です。

実際に作ってみました。 基本的には、外のマップをつくときと同じです。少し注意が必要なのは、ブロック(壁)のように見えるタイルは、上や横からは入り込めないのですが、下からだけは入れるようになっています。

「壁」と言っているのは、この中央に置いたブロックです。このブロックは、上や左右からブロックに入ろうとしても。

このように、進もうとしても進めません。これは問題ないのですが、下からこのブロックに向かっていくと…

こんな感じで、壁なのに入れてしまいます。こうなることを防ぐには、壁の下に少し濃い色の壁を置きます。

これで入れなくなりました。この濃い色の壁は、下からも入れないようになっています。同じ壁に見えても、このように下から入れる壁とそうでない壁があります。これは、実は薄い色の壁にみえるタイルは、壁ではなくて屋根(壁の上の歩けるところ)を作るためのタイルだからです。たとえば、はしごなどを手前に置いたときに、上に上れるようにするために、下から入れなければ上に上ることができません。

例えば、こんな感じではしごを使って壁の上に上れるようにしたいとき、下から入れるタイルなら、

こんな感じで登れます。しかし、下から登れないタイルを屋根(屋上)にしていまうと…

このように、登れません。

ブロックに見えるものには、下から入れてしまうものがあるので、配置したあとに下から入れて(登れて)しまわないかどうか、テストしておく必要はあります。

下から入れるタイルは、パレットを見るとすぐ下にある「壁」のタイルより少し明るい色をしているので、一応見分けはつきます。

さて、魔王の城のほうも作ってみましょう。

王国のお城を作った時と同じように、マップの一覧のところでマウスを右クリックして「新規」を選びます。

名前も表示名も「魔王の城」にしました。タイルセットは「ダンジョン」にしています。BGMも設定しました。マップのサイズも幅と高さを20に変更しています。タイルセット以外は、好きなように設定して大丈夫です。

内装だと、外観のタイルセットとはまた違うタイルがいろいろあります。

いろんなタイルを置いて、魔王城っぽいものを作ってみました。

入り口を右下にして、魔王のいる場所を左上にしてみました。魔王を倒すと、すぐ右にある王女の部屋にいけるという設定にしてみました。魔方陣のある場所は、近づくと「魔王の番人」が出て、魔王の部屋に入るのを妨害するという感じの設定です。

小部屋に分かれているところは、それぞれ扉をつける予定です。空いたりしまったりする扉は、マップの編集ではなく「イベント」として作ります。

扉の作り方

扉を作りには、イベント編集モードにしてから「イベントの簡単作成」のメニューで作れます。


こうしておいてから、扉を作りたいタイルの上で右クリックします。

イベントの簡単作成のなかにある、扉を選びます。

こんなパネルがでるので、OKを押します。画像のところでダブルクリックすれば、扉の絵をかえることもできます。

こんな感じで4か所ほど扉を作ってみました。テストプレイをするために、パーティの初期位置を魔王の城の入り口にしましょう。

データベースの「システム」のタブの右のほうにある、初期位置の「プレイヤー」のところで、魔王の城の入り口を選びます。

こんな感じです。これでOKをしてテストプレイをすると…

魔王城の入り口に出ました。扉の前でスペースキーを押すか、扉をクリックすると…


開けて中に入れます。ちなみに、開けることはできても閉められません。閉まる扉も作れますが、それは上級編で説明します。

マップの間を行き来できるようにする

あとは、魔王城や王国の城に出入りできるようにする必要があります。先に魔王城から出られるようにしましょう。マップの切り替え(お城の出入り)には、イベントの簡易作成で「移動」の機能を使います。

城の入り口を右クリックして、イベントの簡単作成から「移動」を選びます。

移動する先が「場所」のところで選べるので、魔王城の横のタイルを選んでおきます。

ちょっとわかりにくいですが、魔王城のすぐ右のタイルを選んでます。

入り口の二つのタイルとも、同じ場所に移動するようにイベントを設定します。これでテストプレイしてみましょう。

この状態から下に進むと…

このように、城の外に出ることができます。ただし、まだ城に入るほうはできません。城に入れるようにするには、このマップの魔王城のタイルに、イベントの簡単作成で「移動」を選び、魔王城の入り口を指定する必要があります。

このように「移動」を選んで…

「場所」のところで、魔王城の入り口を指定します。

一番下のタイルではなくて、一つ上のタイルを選んでます。ここに飛ぶようにしておけば、一歩下に移動するとまた外に出られます。一番下のタイルにすると、一度上に上がってから下がるか、横に移動する必要があってやや不自然な感じになります。

これでテストプレイしてみましょう。

この状態から、魔王城のほうに移動すると…

中に入れました!

一度設定した移動先を変更したいときは、イベント編集モードにしてから、飛び先を変更したい(とび元の)タイルを右クリックして編集を選びます。


イベントの実行内容が編集できるようになるので、「場所移動」の命令のところで右クリックして「編集」を選びます。

すると場所を選ぶパネルが出ます。

イベントの簡易作成をした時と少し違うパネルになっていますが、「直接指定」の下のボタンを押して、移動先を選んでOKを押せば変更できます。

同じようにして、王国のお城の入り口から出たときも、マップの王国の城の前に移動するように、イベントの簡易作成で設定しましょう。

王国の城は、入り口が3マスありますが、どこに移動しても外に出るようにしたいところです。同じ場所に移動させたい場合は、イベントを一つ作ったあとに、イベントの「コピー」と「貼り付け」を使うことで、簡単に隣のマスにも外に出るというイベントをコピーできます。

ここに作ったイベントを、右クリックして「コピー」して、

すぐ右のタイルに「貼り付け」ます。すると、どちらのマスも同じ場所に飛ぶようになります。

三つのマス全部に貼り付けました。これで、どこに移動しても城の外に出るようになりました。

外のマップのほうからも、お城の位置に来たら、お城の入り口に移動するように設定します。

ここでも、入り口より一つ上のマスに移動するようにしておきます。

このイベントも、お城の右側のタイルにコピーしておきます。

これで、お城のどちら側に入っても、お城に入れるようになりました。あとはテストプレイして試してください。

マップの移動は、入るほうと出るほうで、別々の「移動」のイベントを作る必要があります。そこが少し面倒なところですが、入るほうと出るほうを分けて設定できるおかげで、一方通行の罠の入り口なども作れるようになっています。

移動先のキャラクターの向きを固定する

細かいところですが、お城に入った時のキャラクターの向きを、必ず上のほうを向くようにしておきます。「イベントの簡単作成」でお城に入れるようにしただけだと、

このように、お城に横方向から入ったときに、

このように、横を向いた状態でお城に入ってしまいます。気にしないというのもありですが、お城に入ったのなら上を向いているのが自然な気がします。

お城に入った時にキャラクターに上を向かせるには、お城に入るイベントの設定の中で、キャラクターの向きを指定します。

イベント編集モードにしておいてから、お城に入るイベントを設定したマス(この例ではお城のマス)で右クリックして、編集を選びます。

イベントの編集画面で、実行内容の「場所移動」のところで右クリックし、メニューから「編集」を選びます。

「向き」という項目があるので、ここで「上」を選んでOKを押します。これで、お城に入った時に必ず上を向くようになります。

先に作ったマップの場合、お城の中に移動するマスは二つ作ったので、今編集したイベントをコピーしてもう一方のマスに貼り付けておきます。そうしないと、王城の左のマスに行ったときは上を向くのに、右のマスから入った時は別の方向を向いてしまう、ということが起こります。

なお、イベントが設定してあるマスの上では「貼り付け」ができません。イベントを張り付けなおすときは、先に「削除」する必要があります。削除してから、

コピーして、

貼り付けます。これで右側から入っても、必ず上を向きます。

左から入っても、


ちゃんと上を向いていますね。

なお、お城の右側のマスは、お城に海から入れるようにしない限りは、下からしか入ることができないので、「向き」の設定をしなくてもお城の中では上向き以外にはなりません。ただし、船などを置いて右の海の方向からお城に入れるようにしたときには、この設定をしないと左に向いてしまうことがあります。今は問題ないけど、将来的に問題がおこりそうな場所は、先に直しておいたほうが良いです。作ってから日数がたつと、どういう設定にしたかを忘れてしまうこともあります。

マップ間の関係をわかりやすくする(マップの階層構造)

左側のマップの一覧のところにある「王国」のマップの項目と「王国のお城」「魔王のお城」の項目を見てください。

「王国のお城」という項目が、少し右よりになっているかもしません。ここまでの操作によっては、ずれて表示されていないこともあります。この、ずれて表示されているのは「王国のお城」というマップは「王国」のマップの中にあります、ということを表しています。ずれて表示されていないと…

こんな感じになります。今はそれぞれのマップに名前を付けているので「たぶん、王国というマップが一番外のマップなんだな」とわかりますが、次のようになっていたらどうでしょう。

こうなっていると、どれが外のマップだかわかりません。ずれて表示されていると、

MAP002とMAP003は、たぶんMAP001の中にあるんだな、ということが何となくですがわかります。このような、マップがどのマップの中にあるのかという構造のことを、階層構造と言います。

ここで、MAP002をMAP001 の「外側」に出すには、以下のようにします。

MAP002の項目をマウスでクリックし、そのままマウスのボタンを離さないで、一番上にある「魔王を倒して王女を救え」のところに持っていきます。すると、「魔王を倒して王女を救え」が黄色くなります。

そこでマウスのボタンを離すと、MAP002がMAP001の「外側」に出ます。今度は、逆に外に出てしまった MAP002をMAP001の「中」に入れてみます。

MAP002をマウスでクリックし、マウスのボタンを離さないままMAP001のところに持っていきます。


そこでボタンを離すと、MAP001の中にMAP002が入ります。MAP003のところでボタンを離すと、

MAP003の中に入ります。MAP003はMAP001の中にあるので、MAP002もMAP001の中に入っているという状態になります。

こんな感じで、階層構造が作られていると、より外側にあるマップの左に、 「ー」という表示が付きます。上の状態で MAP003の左にある「-」をクリックすると、

MAP003の中にあるMAP002は表示されなくなり、MAP003の左には「+」が表示されます。この「+」は、MAP003の中に見えていないけど、他のマップがあるよということを意味しています。+を押してみると、


こんな感じで、またMAP002が表示されます。今度はMAP001の左にある「-」を押してみましょう。

MAP002もMAP003も消えましたね。これは、両方ともMAP001の中にあるからです。また「+」を押してみると、

全部表示されましたね。

マップに階層構造があるときに、マップがこのようにずれて表示されているのは、あくまで人間にとって分かりやすくするものです。階層構造を作らなくても、ゲームの動作自体には違いは出ません。ただ、マップの数が多くなってくると、どのマップとどのマップがつながっていたかを覚えていられなくなります。後で見てわかりやすくするためにも、階層構造をつかってマップの外と中の関係を分かりやすくしておきましょう。

もちろん、マップの名前をわかりやすいものにしておくことも重要です。

こんな感じですね。

以上で、マップを複数作って、それぞれの間で行き来できるようにする方法の説明は終わりです。