3DダンジョンRPGエディタを作るスレ (579レス)
1-

521
(1): 520 2015/12/19(土)20:41 ID:u/NtzQZv(1) AAS
仮にそうだとして、環境が整えば、そういうゲームを作りたいと言う人は、今でも残っているのかな?
522: 520 2015/12/25(金)22:32 ID:RLVlGygE(1/2) AAS
反応がない。やはり誰も見ていない廃墟スレのようだ。

ならば気兼ねなく、女神転生'風'の3DダンジョンRPG製作技術について語るスレとして、
ここを再利用させてもらうことにしようと思う。
523: 520 2015/12/25(金)22:57 ID:RLVlGygE(2/2) AAS
最初に、女神転生’風’をもう少し具体的にする必要がありそうだ。

ファミコンの頃から続くシリーズのゲームなので、簡単には言い表せないかもしれないが、
・疑似3D表現された迷宮内を探索する
・悪魔(敵)とは戦うだけでなく、交渉次第で仲魔にできる
・仲魔複数体を合体させて、強い仲魔を作ることができる
という要素が特徴的である、と記憶している。

プレイヤーキャラをレベルアップし、資金をためて武装強化するとともに、
仲魔の協力を得ながら迷宮内のイベントを片付けつつ進み、
最後のボスを倒す、というのはRPGの定番とも言える流れであろう。
524: 520 2015/12/26(土)12:11 ID:V44X/Fk5(1/3) AAS
次に、ゲーム性の観点から整理すると、
(1)3D表現された迷路の中を探索し、所定のフラグを立てるゲーム
(2)戦闘等で得た資金・資源をもとにパーティの戦力(持久力)を強化しながら、
 その維持に要するコストを賄う経営的ゲーム
が融合したゲームであると言える。

(1)には、ストーリー的設定や、謎解き要素を絡めて飽きさせないことが求められる。
プログラミング的には、古典的でオーソドックスな方法で実装できそうである。
ただし、昔と違って、方眼紙に地道にマッピングしながらプレイする時代ではないようなので、
快適に探索できるようなサポート要素が必要かもしれない。

(2)は、戦闘で経験値を集めてレベルアップ、資金を貯めて武装強化など、
省8
525
(1): 520 2015/12/26(土)22:58 ID:V44X/Fk5(2/3) AAS
このようなゲームを制作するにあたり、上の(1)と(2)を分離して検討することにする。

まず、(1)迷路探索&フラグ立てゲームのパートについては、
最初にそのゲームのストーリーや世界観を設定し、可能であれば
攻略の流れがわかるプロットを準備するべきである。

それにより、必要なマップの規模や複雑さなどの要件が決まり、
探索可能な迷路の作成、編集作業が始められる。

同時に素材(テクスチャマッピング用や、イベント用の挿絵、BGM等)の
必要数が見積もられ、ゲームの雰囲気に合うものを集めるか、
依頼することもできるようになる。

このパートでの成果の目標は、3Dダンジョンを歩き回り、
省9
526
(1): 520 2015/12/26(土)23:23 ID:V44X/Fk5(3/3) AAS
疑似3D表示ダンジョンのマップエディタの開発の難易度については、
マップデータの形式が自分で決められる程度のプログラミング能力があれば、
それほど難しいものではない。

実際、このスレッドでも過去にマップエディタを発表された方が複数いたようである。

注意する点としては、マップデザイナーが、イベントやフラグの扱いをカスタマイズ
できる仕組みをどのように実装するかという問題と、階層やエリアをまたぐ移動を
どのような方法でマップデータに含めるかという問題かもしれない。

これらについては、エディタ上ではとりあえず、そうした問題が発生する地点をマークし、
そこに立ち入った際、どのようにしてほしいか記述できる仕様になっていれば、
探索プログラムを組む際に改めてコーディングしてもよい。
省4
527: 520 2015/12/30(水)04:31 ID:QkM8ubds(1/2) AAS
引き続き、(2)の戦闘パートについて検討する。
戦闘には、ランダムエンカウントのザコ戦と、ストーリー(プロット)上の特定場面(地点)
で発生するボス戦とあるが、まずはザコ戦について述べる。

この部分の存在意義は、
a) プレイヤーパーティの戦力(持久力)を試し、その時点での探索限界を設定する障壁
b) プレイヤーパーティの戦力増強の資する資金、経験値、アイテム等の収入源
c) ボス戦に向けた、魔法や特殊攻撃などのチュートリアル
等である。

a) は、消耗による焦燥感や恐怖を煽る要素である。
これがなければ迷路探索は単なるフラグ探しとなってつまらないものになるため、
省11
528: 520 2015/12/30(水)04:50 ID:QkM8ubds(2/2) AAS
戦闘システムの実装については、そのルール設定に依存するが、
オーソドックスなパーティ型ターン制バトルの場合、
(0) 戦闘に参加するメンバー(プレイヤー側、敵側)の初期状態を定義する
  また、その状況をプレイヤーに開示する。
(1) プレイヤーパーティとしての行動を決める。すなわち、
  戦うか、逃げるか、あるいは敵と交渉するかの選択である。
(2) 行動可能なメンバーについて、行動予定内容を設定する。
  プレイヤー側については、コマンド入力インタフェースなどを用意する。
  敵側については、選択可能な行動の中からランダムに選ぶか、
  人工知能的なものを準備する。
省11
529: 520 2016/01/03(日)13:21 ID:Ljo7IXRL(1/3) AAS
プレイヤー側の戦闘時初期状態の決定には、
キャラクターメイキングシステムとの連携が不可欠である。

ゲームの構成にも依るが、開始時のパラメータ振り分けおよび
レベルアップによる半固定パラメータの保持、更新を行うサブシステムと、
HPや状態異常などの動的ステータスの保持および更新システムが管理する
数値を、戦闘開始時に参照し、戦闘終了時に復元する形で連携させる方法がある。

この実装のポイントは、基本的なことではあるが、
プレイヤーキャラクタのパラメータおよびステータス.にかかわる多項目の数値情報を
適切な方法でプレイヤーに提示するステータス画面の作り方にあると思われる。

膨大かつ複雑な依存関係があるパラメータを単純に羅列するだけでは、
省5
530
(1): 520 2016/01/03(日)13:42 ID:Ljo7IXRL(2/3) AAS
店での買い物および.武装についても、キャラクターメイキングの範疇で検討する。
まずは、パラメータ変動効果にバリエーションのある武器、防具、アイテム等のデータベースを
整備しつつ、ストーリー上のどこでどのような武器、防具を入手できるようにするかを
バランス調整の際に検討する。
ゲーム内での実装は、対話型コマンド入力システムが基本となる。

加えて女神転生風ゲームを考えた場合、
戦闘で捕獲した悪魔を仲魔としてパーティに加える戦法や、
仲魔を合体させることで変化させるサブシステムが必要である。

なお、合体に関しては、とりあえず総当たりの表に書き表せられていれば、実装しやすい。
ここに、乱数やステータス値等の影響を絡めたシステムを入れるとすれば、
省5
531: 520 2016/01/03(日)14:04 ID:Ljo7IXRL(3/3) AAS
一方で、敵チームの戦闘時初期状態の決定は、マップのエリアコードと
連携したデータベースの参照で行うのが単純である。
敵データベースには、戦闘システムの開始と処理に必要なパラメータと、
その敵の出現エリアを設定しておく。

このデータベースは、登場する悪魔の数だけ全て設定する必要があり、
名前や数値情報以外に、プレイヤーの識別を補助するための画像、
アニメーションを用意することも考えると、その作成にかかわる作業量は
膨大になる。

実際に何種類の悪魔を用意する必要があるかというと、
多ければ多いほうが良いという考え方もあるが、
省4
532: 520 2016/01/16(土)08:16 ID:nb4XakV3(1/3) AAS
ここまでに考察したところで、女神転生風ゲームのゲームシステム面での
主要な要件は出そろったと思われる。

以後、実際に女神転生風のゲームを試しに作りながら、考察が足りない点は
その都度、検討する方向で進めてみたい。

当面の目標としては、このスレッドのタイトルに倣って、
「3Dダンジョン(迷路および謎解き)」を制作、編集、テストができる環境を整えることとする。

参考までに、現時点の画面のイメージはこのような状況である。
画像リンク[png]:amadela.web.fc2.com
533
(1): 520 2016/01/16(土)10:06 ID:nb4XakV3(2/3) AAS
3Dダンジョンに関する要求については、>>525-526で書いているが、
このプログラムを作成するに際して、より詳細な検討を加えている。

まず、迷路を保持するデータ構造について説明するため、
迷路を構成する最小単位を便宜的に「セル」と呼ぶとする。

1つのセルには、必須データとして、
・セルの座標 x、y (xは東西方向、yは南北方向)
・セルの東西南北の境界表現(壁の有無、または扉)
を持たせている。

このセルを複数集めて、1つのフロアマップを形成している。
複数のセルの管理にはリンクドリストを使用していて、
省10
534: 520 2016/01/16(土)10:38 ID:nb4XakV3(3/3) AAS
試作プログラムにおけるマップの編集について、少し工夫したことを書いておく。

このプログラムでは、ゲームプレイ時のスタイルでカーソルキーを使い、
3D迷路を歩き回ることが出来ていて、そのシステムに上乗せする形で、
・スペースキーを押すと、眼前に1つセルを作り、現在地点との間を通路でつなぐ。
・DELキーを押すと埋め戻す。
・コマンドまたはショートカットキーで、眼前に壁や扉を設置または撤去する。
・コマンドで階段表示、ダークゾーン設定およびスクリプト編集する。
という仕様になっている。

つまり、3Dマップを歩いてみて、この辺に通路を開けたいと思ったら、
スペースキーを押しながら前進すれば、好きなだけ穴を掘っていける
省12
535: 520 2016/01/19(火)22:57 ID:u9fe2fGH(1) AAS
迷路の描画については、魔法のマッパーが有効な時の俯瞰表示と、
メインウィンドウとなる疑似3D迷路の2つがある。

俯瞰表示については、フロアマップのセル群のうち、所定の範囲
(この場合、進行方向前後5マス、左右3マス)にあるものについて、
進行方向が画面上側になるように回転させて描画する。

描画する際はセル単位に相互に重ならないように描くようにすれば、
描画順序(セルの保持順序)を気にしなくてもよい。

それに対して(Zバッファを使わない)疑似3D表示については、
奥から手前に向かい、左右は両端から中央に向かって描画
する必要があるため、現在の地点座標と向いている方角から、
省8
536: 520 2016/01/20(水)23:38 ID:yqZ8gL0+(1) AAS
マップエディタでは、迷路形状データの編集と合わせて
マップ上に様々な仕掛けを配置することも重要な機能である。

仕掛けとは、ターンテーブルやワープなどの罠だけではなく、
階段によるマップ間移動や、会話イベント、宝物の配置、
店や宿などの施設の設定全般のことである。

これらの仕掛けをマップデータ中に定義する方法としては、
マップ上の該当セルにユニークな名称(ラベル)を設定するとともに、
その名称に対応する仕掛けの内容を説明した任意様式の設定資料を
併用する方法が考えられる。

仕掛けの内容は当然ゲーム内容によって変わるものであるため、
省13
537: 520 2016/01/27(水)23:34 ID:VDw6Dqmf(1) AAS
そこで、マップデータにイベントを埋め込むという発想を拡張し、
イベントやマップ情報をひっくるめて「3DダンジョンRPG」そのものを
コントロールする処理システムというものを考える。

コントロールする対象は、ターンテーブルやマップ間移動のような
迷路のトラップに関するもののほか、情報を表示するためのウィンドウシステム、
プレイヤーの入力UI、ゲームの進行を管理するフラグ等、
制御内容を容易に"記述可能"なものから順に考えている。

これにより、イベントの設置、つまり制御内容を記述しテストする作業を、
迷路の設計と並行してマップデザイナー(兼シナリオライター)一人で
完結させるのが目的である。
省6
538: 520 2016/01/28(木)22:08 ID:dhlMU4Pp(1) AAS
参考のために一例を示す。
画像リンク[png]:amadela.web.fc2.com

マップ上を移動し、このセルに踏み込んだら、
このセルのマップ情報に付帯しているスクリプトを
テストプログラムが解釈する仕掛けになっている。

上から順に、画像ファイルを指定して表示、
ウィンドウを開く、テキストを表示する(2行)、
プレイヤーのキー入力待ち、画像消去、ウィンドウ消去
を意図した記述になっている。

画像ファイルとメッセージ文字列以外は一般に定型でよいため、
省4
539: 520 2016/01/29(金)22:08 ID:iWN0LHQ9(1/2) AAS
もう少し複雑になった例を示す。
画像リンク[png]:amadela.web.fc2.com

宝箱があり、開けるかどうか聞かれ、「はい」と答えると中身を入手する
パターンである。

ウィンドウにテキストが表示されるあたりは前例と同様で、
「はい」「いいえ」の回答によって分岐する部分があることと、
魔ッ貨と宝玉の入手にかかわる内部変数操作、そして、
宝箱開封済みを示すフラグの操作で構成される。

このスクリプトはマップデータ中の該当セルに埋め込んであるが、
魔ッ貨、宝玉および取得済みフラグについては、
省6
540: 520 2016/01/29(金)22:24 ID:iWN0LHQ9(2/2) AAS
このほか、階段の昇り降りやエレベータ判定、店などに入った時の切り替えも、
同じようにマップセル中にスクリプトとして記述できる。

店や回復施設など、複雑な選択操作やデータアクセスを伴うものについては、
別途プログラマが実体を開発する必要があるが、マップ上の特定地点に
その施設を置くという指示は、マップデザイナーに委ねることができる。

また、併せてストーリー進行に関しても、フラグを併用して迷宮内の謎を解きながら
探索するというパズル性も、若干プログラミング的な思考を伴うが記述可能で、
エディタ上でテストできる環境が整った。

現在、試しにFC版女神転生のダイダロス塔(静玉をとってエレベータに乗れるまで)を
このシステムで収容できるかどうかテストしているところである。
1-
あと 39 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.023s