ステージ自動生成用の部屋作り【コミカルサラ・FPS開発進捗】
こんばんは!
今回は開発中のローグライトFPS「コミカルサラ」の進捗報告で
ステージの自動生成処理に使うパーツ(部屋)の作成作業に着手した
という内容になっております。
本作はローグライトFPS(=ローグライク的なランダム性のあるFPS)なのでステージは自動生成なのですが、最近その自動生成の元となるパーツ(=部屋)作りの作業に入りました。ここではその辺について詳しく書いてみようと思います。
あとついでにフォロワーさん向けに、今後の主な目標や販売価格についてのお話もありますのでご興味があればぜひご覧いただければと思います。
ステージの自動生成処理について
はじめに、こういう記事をご覧の皆さんは自動生成というキーワードがお好きだと思うのでコミカルサラにおけるステージ自動生成処理の概要を書いておきます(※確か以前の記事にも書いたけどおさらいということで…)。
まず今作で採用している自動生成処理のアイデアはシンプルです。予め手動で作っておいた部屋をゲーム実行時にランダムに組み合わせるだけです。
このとき部屋は任意の形状で構わないのですが、複雑な形状だと作るのが大変になっちゃうので本作に限って言えば基本形は次の3パターンと決めています。
- 入口と出口が直線上に1つずつある部屋
- L字型の部屋
- T字型の部屋
もちろん↑の画像のような小さな部屋だけだと単調ですから広さや高さを変更したり、段差や障害物を増やしたりするなどします。
試しに基本形に多少のバリエーションを混ぜてにステージを自動生成してみると次のような感じになります(※下記はデバッグ用に色を付けてありスタートが赤、ゴールが緑、脇道が紫となっています)。
ここでは部屋のバリエーションが少なくステージがやや単調な形状になってしまっていますが、まあコミカルサラは本格的なダンジョンRPGではなくあくまでもFPSなのでこれくらいでも十分だといえます。
部屋作りは大変
というわけで自動生成処理についてはそんな感じなのですが、「ステージを自動生成するなら作るのが楽ちんだよね」となるかというと全くそんなことはありません。
むしろ単調にならないように部屋をたくさん用意する必要がありますし(※ランダム生成なのに単調だったらガッカリです)、ランダムなのでバランス調整やデバッグ作業も大変になります。…というわけでここからが本当の地獄だぜハハハ!
とりあえず現時点ではステージ1用の部屋の基本形ができたところですからこれから部屋の中身とかを考えていきます。うーん、またしても気が重い…。
Exclusive to users above "Follower"Free
ゲーム開発の進捗報告を読むことができます。また、記事にコメントしていただけるようになります。
Free