「P は Python の P <実戦編>」
〜やるぞ作るぞRPG!〜
NP-6 ダンジョンに始まってダンジョンに終わる
もしかしたら、最近のゲーマーはダンジョン(Dungeon)という言葉をご存知無
いかもしれませんね。
ダンジョンというのは、ダイレクトには「地下牢」という意味ですが、ダイ
ダロスが幽閉されたラヴィリントス(迷宮)のイメージから転じて、ゲームで
は地下迷宮を意味し、さらに拡大解釈されて、地下でなくとも閉鎖空間の冒険
場所をすべてダンジョンと呼ぶようになりました。
※ダンジョン以外はフィールド(野外)とシティー(都市)で、どちらもRPGの
冒険の舞台の定番ですね。ファンタジー以外なら、宇宙とかもあるけど・・・
とゆーか、初代RPGはDungeons and Dragons(通称D&D(R))という名称なので、
そこから広まったともいえますが・・・
<実戦編>1でも少し書きましたが、もともと複数人数が集まって、紙と鉛筆
を用いて手計算でプレイしていたRPGですが、日本ではWizardryのようなコンピ
ュータでRPGを「シミュレートする」ゲームが先に輸入されてしまったので、「RPG
はコンピュータゲーム」というイメージを持っておられる方も多いかと思いま
す。
実は、日本でもこういった「紙と鉛筆」タイプのRPGが流行った時期があった
んですけどねぇ・・・もうすっかり影をひそめちゃったなぁ・・・(私は今で
も時々、コンベンションとかに参加してプレイしにいきますけどね)
もし、RPGを自分でデザインして見たいという方は、是非この「紙と鉛筆」タ
イプのRPGのゲームマスターを体験してみてください。
ゲームマスターは、シナリオを作成し、ゲーム進行を管理する、言わばコン
ピュータRPGのコンピュータの役割です。
コンピュータRPGでコンピュータが一体何をやっているのか、ということが実
感できますし、シナリオを自作したりマスタリング(実際にプレイを管理する
こと)したりすることで、ゲーム作りに欠かせないものを沢山学ぶことになり
ます。
閑話休題。
ダンジョンの話題ですが、コンピュータRPGでダンジョンを扱う場合、非常に
簡単な立方体の組み合わせを考えることが多いと思います。
※ナチュラルダンジョンという、なんか和製英語のような(でも実際は英語のRPG
用語で出てきます)言葉は、人工物でない洞窟のようなダンジョンを指しま
す。紙と鉛筆でプレイする場合はこんなのでもなんとか出来ますが、コンピ
ュータではいきなり難しくなるか、座標式でなくなるので、ここでは話題に
しません。
この立方体を使うダンジョンの方式には、ブロックダンジョンとウォールダ
ンジョンの2種類があります(こちらは両方とも和製英語です☆)
ブロックダンジョンは、ダンジョンをブロックを組み合わせるようにして設
計するタイプで、一番薄い壁の部分でも、1ブロック分の厚さを必要とします。
図にすると、こんな感じでしょうか・・・
■■ ■■
■ ■
■
■ ■
■■ ■■
それに対して、ウォールダンジョンは壁の組み合わせでダンジョンをデザイ
ンする方法で、Wizardryなどはこちらの方法をとっています。
ウォールダンジョンのほうが格好は良いのですが、1ブロックに対して壁2
枚を設定しなければならない上に、管理がややこしいので、気楽にRPGを作りた
いのなら、ブロックダンジョン方式をまずはお勧めします。
※ダンジョンを使わない、位相幾何的マップのみのRPG(ZORKなど)もあります。
位相幾何的マップというとなんだか難しそうだけど、要するに場所と場所を
結ぶ通路(パス)のみを設定して、その場所からドコへいけるかだけを指定
するタイプのマップのことです。アドベンチャーゲームなんかは基本的にコ
レですね。
ブロックダンジョンでは、ブロック単位でイベントを埋め込むわけですが、
イベントが全く無くても、通行可能(通路や空間)か不可能(壁)かのデータ
だけは必要です。
ちなみに、それを設定するだけでも、どれくらいのデータを必要とするかと
いえば・・・20×20の10階分としても、ざっと4000データとなります。
これだけのデータを文字で書き込むとなると面倒なので、必然的に視覚的
なマップエディタが必要となります。
マップデータの形式は結局そのシステムに左右されるので、マップエディタ
は当然自作、ということになるでしょう。
マップもそうですが、RPGはデータの打ち込みが命ですので、様々なデータ入
力用エディタを自作することになります。
エディタ作りの段階で力尽きるか、あるいはエディタ作りの中から様々なア
イディアを生み出していくかは、製作者次第です。
ちなみに、マップデータとして埋め込むべきイベントとしては、特別イベン
トを除けば、トラップやトレジャーの設定、シークレットドアや一方方向通路
などがあります。
※モンスターとの遭遇確率などは、フロアをブロック単位で管理したほうがよ
いと思われます。
トラップとしては、ダメージトラップ(ピット)、シュート(下の階に落と
される)、テレポート、ターンフロア(行動を起こす毎に方向が変化する・・・
うっとうしいだけなので、今はあまり流行らない)などがあるでしょう。
どちらにせよ、オブジェクトで管理していなかった頃は、ずいぶん苦労して
作ったと思われます(そのせいかどうかは知りませんがAppleII版Wiz#1は、デー
タタイプの豊富なPascalで書かれていました)
ダンジョン製作は地味な作業ですが、ゲーム作りの9割以上がこういった地
味な作業なので、製作自身はいずれ苦痛になってきます。
そうなってくると、頼みの綱は、プレイヤーからの期待だけです。
プレイヤーを喜ばせる、という最大の楽しみ以外を求めてゲームを作り始め
ても、結局は挫折することが多いと思われます。
なぜゲームをつくるのか?・・・それをお忘れなく。
機械伯爵