怪説推論 開発後記

この記事は怪説推論の開発中の苦労話とか作ったバグとか今後に活用出来そうなノウハウとかをその後の自分のためにまとめる記事です。当然のようにネタバレがちょこちょこあります。

大体いつくらいから作り出したのか

一番最初に描いたもの

8月の半ばくらいからゲームを作りたいな~と思って5年くらいで何かを作る算段を立てていたんですが、「完成品欲しいな~」と思ったのでちょうど時期だった「らいとう"ぃえん祭2024」に出す!を目標に開発やることにしたのがだいたい9月の頭あたりです。画像はその時に描いたイメージボード的なものです。カードワースでbiim兄貴リスペクトRTAなことだけはわかる。

色によって怒らせたり悲しませたりするのが決まり、黄色のはわからない系というつもりだったみたいです。下の方にハンバーガーメニューでまとめるつもりだったみたいなんですがそれマジで死ぬほどバグ出るからやめといた方が良いですよ!!って気持ちになります。

大枠は決まっていたっぽいんですが服装とかが違うのはもうちょっと時系列が違うヤツとして作る気だったからですね。初期案だとナナギしか出て来ない予定だったはずなんですが、己のやる気に関わると思ったのでカスカも出すことにしたっぽいです。

この時点で2か月で開発することが確定しており、中身はほぼ白紙、もしかしなくても→無計画。

計画を立てる

ゲーム作るか~と言ってそのまま1から文字を書き出すと、よほどの根性と時間が無ければ100%詰むことはクエストノーツのクエスト制作から学んでいるので、まずはシステムのフレームワークと大雑把なシステム的やることリストを考えることにしました。

選択肢を何個にする、アイテムを何個用意する、残機何個にする、みたいな遊びの根幹的なアレと、こういうイベントを絶対に入れる、マップ数が幾つみたいなのです。
この辺が無い状態だと、文字書きの自分は荒野で立ち尽くしてしまうので道を先に用意した感じです。

クエストノーツでクエスト作る時は↓の画像のようなシステム的やることリストを常に意識して組んでいます。そのやり方なら埋めて行く方式でイケるからいいかも~ということで今回もこういったお題リストを先に作りました。

大体この流れを一生擦り続けてクエストノーツのシナリオを作っています。
今回はこんな感じ

UIを改造しつつLight.vnについて学んでいく

これはUI改造をやっていた頃の画像です

Light.vnはデフォルトのUIがとてもリッチなのでそのまま使えなくもないんですが、私の絵は全体的にちょっとチープな感じなので噛み合わなくて死ぬのでUIを魔改造して絵柄に合わせました。

元のUI、とてもリッチなので私の絵を合わせると何か……だった

Rounded m plusは読みやすくて癖がない上にほぼすべての字を表示できる最高のフォントなんですが、私の絵とは噛み合わないので喋ってる感を得られず違和感があったのでPixel m plusをメインフォントに。名前欄は個人的に大好きなKHドット道玄坂16を採用しました。

ボイスリプレイ、クイックセーブ、クイックロード辺りは自分が使わないので抜きました。自分が使わないものはデバッグするときに積極的に触らないだろうし……そうなるとバグ見つけるの大変だからです……

本家そのままだとちょっとど真ん中すぎて読みづらく感じた&私の作り方だと文字を←に寄せた方が良さそうだったので文字を全体的に左に……というのをスクリプトを解読しながらやりました。

この解読して改造する工程で結構色々な仕様を学んだので結果的には近道になった気がします。

ゲーム本体の仕組みを作っていく

今回必要だったのは火をつけたり消したり、アイテム4種を出したり引っ込めたり、アイテムを使ったら3パターンの返答を返す処理、選択肢を選んだら数値が変動する仕組み、この辺です。

この辺でアイテムUIとかを作ってました、背景は仮の物でした

火が消える仕組み自体は9月9日辺りにLight.vnの公式鯖でチラッと見せたりしていました、他人の目が無いとおそらく締め切りを破ってそのまま終わりにすると思ったので。

この辺りで算数が出来なくて0に着地しない好感度変動を組めなくて泣きながらタイムラインの識者にクイズを出して知見を得たりしました。4人くらい答えてくれたので4人の返答を見て一番良さそうだった初期値に小数を付ける+偶数のみで増減+変動前の数値の正負によっては倍増減としました。

炎のアニメーションは工数少な目でささっと良い感じに作れたのでお気に入りです。

で、幽霊関連の設定はある程度このシステムに合わせて考えました。
変数=sadとかにして幽霊の中身の種類は4種にしても良かったんですが、変動するものを数値でないものにすると増減によるパターン性が減って今後もこのシステムを使っていくとしたら拡張性が下がりそうだったので正・負・ゼロの3パターンから判定することに。
多寡で判定するなにかも次回作とかでは作りたいですね。

怒るとか哀しむとか無とかのヤツです。喜怒哀楽にしようかと思ったんですが、喜と楽はかなり違うけど外目からあんまり区別付かないのでうーんって思ったので無に分類として3つに、こうすれば正・負・ゼロの3つと数が合うのでOK。

大体この辺りの基本システムを組むのに1か月かかりました、本文は当然のようにほぼ白紙でチュートリアルだけが存在していました。

体験版を作る

うわー!最初のタイトル画面だ!!これは後ろ姿で微妙だったのでボツにしました

システムの骨が出来たので、骨に合わせて粘土を付けてちょっと動くかチェック、という名の体験版配布をしました。体験版は身内のサーバーで数人に向けてみせる感じでやりました。
この辺りが10月頭おい!締め切りってわかってる!?

この辺を流用してチュートリアルを作っています。

この辺は全部破棄するつもりで雑に作ってるのであんまり出来が良くないです。チュートリアルで実際の操作をやれない問題はまあまあ対処したいので1.2辺りで対処出来たら良いですね。

操作自体はちゃんと出来そうなことがわかったので、ここからいよいよ本文を書くことにしました。
この辺りで締め切りは10月26日にしようと決めました。祭の締め切りは10月31日ですが審査のやり取りその他を考えるとそれくらいの余裕があるべきだからです。

キャラを考える

え!?って感じなんですが、10月入るまで本文はほぼ白紙でした。ヤバすぎ。
なんなら出てくる幽霊がどんなキャラかも全く決まってませんでした、のでシエちゃんと雨男は大分後から考えたキャラです。ナナギとカスカは最初から決まってたキャラなので特に苦労はなかったんですが……

10月2日って書いてました、この辺りまで影も形もなかった
10月4日って書いてた、この辺りまで影も形もなかった

白ワンピースの少女の逆張りで黒ワンピースの少女にしたり、幽霊の初期アバターみたいな白い女の逆張りで幽霊の初期アバターみたいな白い男にしました。

ここからこのキャラ二人の経歴をぼや~っと考えました。感情の初期値は変動するので怒る事も哀しむ事もあってそれぞれにあぶないという感じです。

名前はまんまで属性が少な目がよかったので三本足のリカちゃんとか、口裂け女の味を目指して名付けています。

文字書きだす前に死ぬほどレーティングについて考える

幽霊だしこんなもんか……で赤でべとべとにしたんですが、赤でべとべとだとあんまりにも流血すぎるのでオレンジにしてお洒落にしました。
レーティングは基準が色々と異なるんですが、Boothの辺境ではなく他の人の領地に置かせて貰うゲームになるので流石に好き放題しすぎると……マズい……ということでめっちゃ規制しました。暗転がやたら多いのも大体そのせい。時間無かったので暗転で済ませることが出来る!と前向きに考えました。

人体を切断したらCERO:Z、スカイリムはCERO:Z!!と大声で叫びながら色々修正しました。でもCERO:Aになれてるかは怪しいです。Bくらいじゃないかな……

IARCの基準とかPGの基準とかも勉強したんですが、無防備な人を攻撃したり暴力に理由が無いとレーティングが上がる話はとても興味深かったです。

ゲームのレーティングって漫画や本よりかなり厳しく、これはゲームをやってる人=自機の場合プレイヤーにとんでもないことを強いたりやらせたりするから……だろうと思っています。実際はどうなんですかね……わかりません。

とはいえめっちゃ規制しまくったので小学校高学年の自分や中学生の自分に見せてもまあ行けるラインになった気はします。私は中高生の頃の自分を喜ばせるために創作をしているのでレーティングに関して考えたのは良かったかな~と思います。

宣伝を出す

10月の12日、毎月第二土曜日のスーパーゲ制デーで告知をしました。この時点で本文は雨男編が1区間書けているくらいでマジで進捗はやばかったです。

マジでちょっとどうかと思うレベルの進捗でした。これが思ってた5倍くらい拡散してもらえて色んな人の目に入ったので「うわーーーー絶対に失敗出来ない!!このままでは死んでしまう!!!」といった強大なプレッシャーが襲い掛かってきて、締め切りを31日から26日まで早めて結果的になんとかなったのはあります。宣伝してくれた皆ありがとう。

もう死ぬほどバグが出る

Twitterを見ている人ならご存じだと思うんですが、死ぬほどバグが出まくりました。バグが出まくったことによってまあまあ精神を破壊されました。そんな……

このゲームはフリーチェーン(遊戯王)なのでありとあらゆる場所からありとあらゆるクリア分岐やゲームオーバー分岐に繋がります。危なすぎ!次はやめてください!

危ないのでどうにかします。一生自ら罠に落ち続けたり、己の嫌な予感に従って意地悪な操作をしまくり大体バグが20個見つかりました。誤字脱字は無かったです。これでもバグ少ない方だなと感じます。

一番ヤバかったのは炎を全消しするコマンドを組んだら0で止まるようにしなかったせいで無限回ループして全てが壊れるバグと、セーブロードするとロード時に全てが崩壊するバグです。

覚えておいてほしいんですが、機械は人間ほど賢くないので言われた事は全部やるし、言われなかったことはしないんですね。言われた事は全部やるによって破壊されるので道を塞ぐ処理を大体30個くらい書きました……

この辺り締め切りのヤバさとバグの多さで心が荒んでいたので回線を切って作業してました。本文を30回くらい読み返した辺りから面白さを感じ取れなくなってきてまあまあヤバかった。

SuperHexagonとヴァンサバだけが心を癒してくれました。ビカビカしたサイケ演出とノリノリすぎるくらいの音楽以外で快楽を得ることが出来ないくらいヤバかったともいう。

テストプレイを頼む

界隈が異なり、得意分野が異なり、テストプレイをお願いしたら優しくしてくれつつ建設的な意見をくれそうな色々な人たちにテストプレイを頼みました。

色々な視点での評価や意見などが欲しかったので、まあまあ顔が広いという利点を最大限活用しました。つまらないかもしれない……全員からボコボコにされる!!という恐れと致命的なバグがありそうな予感で胃が壊れそうになりましたが、お陰でほぼバグ無しになったのでは……と思います。
尚致命的なバグはありました――

致命的なバグの修正、文字待機が多すぎることから仕様の修正、本当に色々な修正をしました……ここで修正した回数がかなり多いので人の目が最もテストに関して優れていることがわかります……

私はとてつもなくプライドが高く人の意見を採用するの基本的に嫌がるタイプなんですが、この人の意見なら素直に聞けるかもという人を選出したので素直に色々な部分を直せました。ありがとう協力してくれた皆さん……

やってよかったこと

やることリスト兼リファレンスになる画像操作やシステム操作スクリプトをまとめたメモ用ファイルを早めに用意した。

早めにシステムとUIの構築を済ませた、イメージがズレなかったので良かった。

変数やリソースの名前付けを早めに全部英字にして、変数名の命名ルールを決めてメモしておいた。

小まめにリソースファイルを整理整頓。

開発始める前に毎回バックアップを取る作業を最初にして巻き戻れるようにしておいた。

バグのスクショを自分のスクショ鯖に投げて仕事の休憩中に何がダメだったのかを考えるようにした。

ダメだったことは時間が無さ過ぎて心に余裕がなかったことです。

おわりに

2か月で作ると言ったら4か月はかかるゲーム制作界で意外と締切守れたので頑張りました。偉い!

良ければ遊んでください~!!!ということで終わり!