動機こんにちは『水彩画は水底に沈む』をサークルのみんなと制作中のゲーム開発者たここですたここは『水彩画は水底に沈む』のゲーム開発でシナリオを担当しているのですが、とんでもなく遅筆です。1日に1シーン分描けたら良い方かな〜のレベルです。さらに言えば、最近セリフを書く手がどんどん減速し始めててヤバです。スマホに文字を打ち込もうとした瞬間、頭が真っ白になる感覚がありますそんなわけで、冬休みに突入したタイミングで気分転換して再起動することにしました。いったん『水彩画は水底に沈む』のゲーム開発から離れて休憩していこうと思いますそして、気分転換のアクティビティとして選ばれたのはゲーム開発!たここはゲーム開発者なので、ゲーム開発の気分転換はゲーム開発をします何もおかしいことはないですよね開発期間は4日ちょうど、Unity1週間ゲームジャムがunityroomで開催中だったことをサークルの人たちから聞きました。たここが最後に参加したゲームジャムは1年半前の夏休みで、『無限神経衰弱』を地元の公民館で制作していた記憶があります。懐かしいなぁそんなわけで久しぶりのゲームジャムやるぞやるぞ!(やる気300%)テーマと企画書1週間ゲームジャムと言いましたが、既に開発期間は始まっているらしく、締め切り日まで残り4日となっていました。飛び入り参加で頑張っていこうと思いますテーマは「もうひとつ」ですもうひとつ...テーマの当たり判定が広くてこじつけで何とかなりそうなので、書き溜めていた企画書の中からそれっぽい物を引っ張ってきて企画フェーズを時短しようと思います選ばれたゲームは趣味全振りのシークエンス系クリッカーゲームです。コイツまたクリッカーゲーム作ってますよ...ゲームシステムタイルと呼ばれるブロック達を並べてシナジーを生み出し、最高効率でコインを稼いでニコニコ出来るようなクリッカーゲームを作りますコインを生み出すタイルや隣のタイルを発動するタイル、タイルの発動を早めるタイルなど色々なタイルを用意します。それらのタイルは徐々に開放されて、インフレする収益で気持ちよくなれるようにしますただ、これだけだと普通のクリッカーゲームでアピールポイントに欠けるので、「もうひとつ」のテーマに従ってギミックを1つ追加します具体的には、タイルを無限に複製出来るようにします一気にゲームバランス度外視のアホゲーになってしまった...30分位でエンディングを迎えるくらいのボリュームを想定しているので、これくらい滅茶苦茶にインフレした方がプレイヤーの記憶に残って良いんじゃないかという狙いですグラフィックグラフィックはドット絵で構成します。スーパーゲ制デーやサークルの方々のドット絵を見ていたら、たここも作りたくなった...というのが主な理由です。大体たここが新しいことに挑戦するモチベーションはいつもこんな感じですゲームシステム的にマス目であれこれするので、四角いドット絵との相性が良さそうでもあります。150pixel×150pixelのゲーム画面を想定してお絵描きしていきますあと、インディーゲームな界隈の人達ってドット絵好きなイメージがあるので、ドット絵で作られたゲームはシンプルにウケが良さそうです何より、他のUIとの解像度を合わせるのが楽そうですし、それっぽいイラストを描くのも簡単そう...(一回、本職の人に殴られた方が良い)シナリオ書きますはいシナリオ、書きますここで言うシナリオというのは、たくさん用意されたフレーバーテキストからゲームの世界観を味わえる...といったものではなく、明確に起承転結のあるストーリーを指しますクリッカーゲーム、好き嫌いかなり激しい印象があります好きな人は資産が増え続けるというモチベーションだけで何十時間も遊んでくれますが、そうでない人は「なんだこのゲーム...?」と即ブラウザバックしてしまいますなるべく多くの人に遊んでほしいので、クリッカーゲームに関心がない人でも遊んでしまうような報酬や魅力をゲームに設けたいところですなのでシナリオを書きます「話の先が知りたい!」とプレイヤーに思ってもらえたらwinですでも!シナリオ、自信ない!!!!あるに越したことは無いだろうの気概で用意します。やけくそです「シナリオ付きのクリッカーゲーム」と銘打てば少しはアピールポイントになるかもしれないですシナリオを考えるよゲームって、プレイヤーが主人公に自身を投影して没入していく側面があると思っているので、主人公=プレイヤーという構図にします。なるべく強い自我や性格は持たせず、常識的な振る舞いを取ってもらいます決してキャラクターを考えるのが面倒くさかったワケではありません。ええ物語にはテーマがあった方が良いらしいのでテーマを基にして物語の展開を考えますテーマは「情報過多」にしました。クリッカーゲームは頭を使えずに遊べると思っているので、ゲームの特性と対比するテーマにしてみます。これは入浴中に思いつきましたシナリオに分かりやすい目的を持たせた方がゲームを続けるモチベーションになると思ったので、「閉鎖空間から脱出する」というシンプルな構図のお話にしました全ての記憶を失った主人公は、謎の端末が置かれただけの真っ白な閉鎖空間に閉じ込められています。そして、その端末ではクリッカーゲームを遊ぶことができました。クリッカーゲームを遊び進めることでこの部屋から脱出できるかもしれません物語の展開を考えます。いくつかのイベントに分けてストーリーを綴るので、なるべく多くのクライマックスを設けて「続きが気になる!」と思ってもらえるような、ドラマみたいな話の区切り方をしたいです• 不審な端末を発見する• 端末でクリッカーゲームを遊ぶ。楽しい• 記憶を取り戻しそうになる• いきなりドアが出現する• 開かないと思っていたドアがあっさり開いてしまう• ドアを開けている間は記憶を失ってしまうことに気づく• 主人公がこの空間の存在意義を理解する• 主人公がドアを消滅させる• 主人公は全てを忘却するこんな所でしょうか。物語の展開を考えながら、下のような舞台設定を後付けで考えたりしました閉鎖空間は情報過多に苦しむ主人公が自ら生み出したもので、主人公は情報過多から逃れる代わりに、この空間に至る記憶まで失っている主人公の真の目的は、概念上の閉鎖空間から脱出して現世に戻ることではなく、全てを忘却して思考の重労働から解放されること。マインドフルネス端末で遊べるクリッカーゲームは主人公の脳疲労を回復させる役割を持つ。最終的に主人公の真の目的を達成するため、クリッカーゲームまで忘却する必要があるドアは閉鎖空間と現世を繋げる役割を持つ。スマホみたいなもの。ドアの先は主人公の処理しきれない情報で埋め尽くされている。主人公の防衛機能が働いて、ドアの先にある景色を見ている間は記憶を保持できない良さそうただ、「メモ1」「メモ2」みたいに、短文の集まりでストーリーを綴る予定なので、この設定の全てをプレイヤーに理解してもらうのは難しそうです。30分程度のプレイ時間を想定していますし、長文の物語でゲームのテンポを遅くしたくない気持ちもありますそこで考えました。「主人公が何らかの気づきを得て、それをプレイヤーが理解し行動に移すことで、結果的にハッピーエンドになる」という流れが出来ていれば、ストーリーの全容が分からなくても満足度の高いゲームにできるんじゃないか?となので、上記の舞台設定の説明はガッツリ省いて、エンディング迎えるために1つのギミックを設けることにしました具体的には、「クリッカーゲーム上のタイルを全て売却する」ことがエンディングを迎えるためのトリガーにしました。全てを忘却することが主人公の真の目的なので、それにプレイヤーが応えることでハッピーエンドを迎えられます頑張って構築してきた盤面を全て破壊することでエンディングを迎えられる...ってクリッカーゲームの仕様としては鬼畜な気がしますただ、それと同時に、終わりのないゲームって、プレイヤーが満足できるところまで遊んだら「綺麗に終わらせてくれ!」という気持ちが強く働くと思っています(過去作の『無限神経衰弱』を遊ぶプレイヤーを見て思った)。なので、ある意味これは綺麗な終わり方なんじゃないかなと思いますなので怒らないでください!移動中にお絵描きゲームの素材は移動中にibisPaintで描きました。スマホでのドットお絵描き、意外といけます。大体3時間くらいの移動時間で、背景、UI、タイル、パーティクルを描き終えました。もっとタイルの種類を増やしたかったのですが、想像力とアイデアが底をつきてしまいました。たくさんゲームを遊んで引き出しを増やしたいなと思いました作るぞ!!!テキスト上とスマホでできるゲーム制作はあらかた済んだので、実際にUnityをカタカタしてゲームを完成させます。世間はクリスマスイブで盛り上がっているみたいですが知ったこっちゃないですプログラミンギングイング命を燃やしてゲームの基盤をコードで書いていきます。タイルを移動できるようにし、ボタンを押せるようにし、所持コインが反映されるようにして、モード切り替え、読み込みアニメーション、ショップ、購入処理、タイルのプロパティ、強化システム、複製モード、説明テキスト、必殺技的なボタン、音量調整...企画書をかなり詳細に書いていたので、ほとんど迷いなく実装を済ませることができました。gitとAIもフル活用できていたと思います余談ですが、ゲームって、(ゲームエンジンに思考を投げていない部分は)全ての要素に開発者の意図が含まれて構成されていると思っています。意味のない場所にボタンは配置されませんし、無駄なパーティクルは発生しませんそういう視点で他の方が作ったゲームを遊ぶと色んなものが見えるようになって面白いです。ゲームを介して別の開発者と会話してるみたいですゲーム開発していると神様になって世界を創っているみたいな気分になれます1日目、神はUIと画面遷移を作られた...そんなことを考えながら、2日かけてゲームの基盤が完成しました。お疲れ様ですゲームバランス調整ゲームの基盤が完成したので次はパラメータを設定していきます。タイルを強化するための値段、強化した際の上昇値、タイルがショップに並ぶタイミング、販売価格、売却価格、複製の費用などなど...この作業が想定の3倍くらい大変で、丸一日インスペクタのパラメータを弄っていましたほどよいプレイ時間とゲームバランスにするため、全てのパラメータを有機的に調整する必要があってキツかったです。例えば、序盤に購入できるタイルの能力を上げると、全体的なゲームスピードが加速するので、後半のタイルの売価を上げたり、効力を弱体化する必要がありました小規模なゲーム開発だからと言って、上記したパラメータをオブジェクトごとに記録していたのが良くありませんでした。作業が終了するまでプロジェクトウィンドウとインスペクタを高速で反復横跳びしていました全てのタイルの売価を1.1倍にする...みたいな操作ができなかったのもキツかったです。設計の計画不足から生まれる単純作業が一番心に来ます。疲れた〜...次回は絶対にエクセルとかで調整作業が出来るようにします。覚えておけよ未来のたここ効果音を用意するゲームバランスの調整でかなり時間を取られていました。ただ、あらかじめ準備されていた企画書のおかげでコーディングや素材の準備が早めに終わったので、それでも納期に余裕がありますなので、効果音周りで少しチャレンジングなことをしてみようと思いました。具体的には、Adove Fileflyでゲームの効果音をAIに生成させます。最近、「最新のAI技術がすごくてヤバい!」と毎日のように耳にするので、たここもAI技術を活用できるようになって、すごくてヤバい最新のたここになっていきたいですさっそく、ボタンを押す音とか購入の音とかを生成させてみたのですが、想定通りマトモに使える音ではありませんでした。生成された音は、全体的にメリハリのないぼんやりとした音で、モノによってはミュージカルノイズやハムノイズが含まれていたりしました。コレがゲームで直に使われていたらプレイヤーの耳がバグってしまいますそうは言っても、オリジナルな音を著作権フリーかつ無料でいくらでも出力してくれるというのは個人ゲーム開発者にとってかなり魅力的な話です。使えない!と一蹴するには勿体ない...そこで、Adobe Auditionという波形編集ソフトで、生成した音を使える形に編集してみることにしましたAdobe Audition、マイナーなソフトだからかネットで調べてもあんまり情報が出てこなくて困りました。とりあえず出来る範囲で、ゲームに必要な部分だけカットし、ノイズを消し、耳触りが良くなるように周波数を調整してみましたう〜ん(試聴中)良いんじゃないかまだまだ音に個性とかメリハリが足りない気がしますが、アナログでレトロな雰囲気のゲームやプレイヤーの思考をあんまり乱したくないゲームでは普通に使えそうですGoサイン出ました!サウンドはこの制作方法で行きます最終フェーズ!残った細かい作業を全部吹っ飛ばしてゲームを完成に近づけて行きます。同時に、細かいところをブラッシュアップしてゲームの質を高めていきます。BGMの追加、エンディングとオープニングの実装、ランキング機能の実装、シナリオの加筆修正、デバッグ、追加のゲームバランス調整、キーボード入力への対応、チュートリアルの追加、タイトルロゴの修正などなど...(上が最終的なタイトルロゴ、下が旧タイトルロゴ)徹夜2日目に突入寸前に同居者に止められたりしましたが、クリッカーゲーム『忘却のボタン』は予定通り4日目に完成しました。うおおお!公開次の日の20時に『忘却のボタン』は他のゲームジャム参加作品と共に一般公開されました。みんな遊んでくれ〜https://unityroom.com/games/wasureta_botanそれからの様子を3日ほど帰省先で眺めていました。分析...とまではいきませんが結果を書いておきます800回以上遊ばれた。比較的多いXの告知が4.6万回のインプレッションを記録した。比較的反響が大きいランキングを見る限り、ちょうど半分のプレイヤーがエンディングを迎えていた。シナリオはちゃんと読まれているらしかった感想は「結構楽しかった」「良いタイトルでした」「いい回収だった」「ドット絵の雰囲気が良いですね」「エンディングへの入り方が素晴らしいですね!」「クリッカーゲームにタイルの要素を組み合わせるとは! とても面白く、2周してしまいました!」など。エンディングに言及したものが多い好意的な感想が多くて嬉しい〜!たくさん遊ばれてて嬉しい〜!!!ゲーム開発者やってて良かった...4日の作業が報われる瞬間です踊り出したい気分になりました(というか実際に踊っていた)反省点①(ゲームの内容)特にUI周りについて、こだわりが若干強すぎたかもしれないです。「画面遷移しない」「ボタンを使ったUI」この2つのこだわりが悪さをして操作がしにくくなっていました。影響が顕著だったのはショップでタイルを購入するタイミングです。ショップでタイルを買うと、特定の位置に購入品が置かれるのですが、また別のタイルを購入する際は以前の購入品をどかす必要がありました。タイルを移動させる度に左側のボタンをマウスで押してモードを切り替える必要があったので、かなり操作が面倒でしたかなり制作初期の段階で判明していた問題点だったのですが、ニシキガツオさんの『閃輝虫』なUIをたここも作ってみたいと強く思っていたので貫き通してしまいました。今後は、ゲームに大きな影響を与えない程度のリスペクトを意識していきたいです(こういうのがしたかった!)反省点②(納期)ゲームの面白さに直結する、ゲームバランスや細かい仕様の追加にあまり時間を割けませんでした。ゲーム全体のクオリティを上げる点において、AI生成の効果音やストーリーの推敲に多くの時間を割くべきではなかった気がします。タスクに重要度を振ることも大事ですが、意識して納期に「余裕」を設けることがゲームの面白要素を増やす鍵なのかなとも思いました反省点③(メンタル)今思うと、徹夜短期集中のゲーム開発いつもより多めのインプレッションでアドレナリンセロトニンドーパミンのホルモンバランスが狂っていた気がします。感情ジェットコースターでかなり躁鬱してました頑張れば頑張るだけ、手を動かせば動かすだけ、考えれば考えるだけ、ゲームが完成に近づいて、クオリティも高くなって、たくさん好意的な感想も貰えると脳が錯覚するので病みつき気味になってしまっています。こんなゲーム開発を今後も続けていたら、その内取り返しのつかない事になりそうで恐ろしいですおそらく、このままだとゲーム開発者たここの最期はゲームが大ヒットした際に絶頂して死ぬ大ヒットする予定のゲーム開発に燃え尽きて死ぬのどちらかになりますかなり不健全でマズいです長期的にゲーム開発者として大成していくことを意識して、作業量の上限を設けたり、情緒の乱高下を抑える手段を考えていく必要がありそうですお疲れ様でした4日間にしてはまぁまぁなクオリティとボリュームのゲームを出力できたと思います。たぶん1年前なら作るのに2週間くらいかけてるハズなので、ゲーム開発者としてのレベルが上がっていることを実感します地味に、大学の講義で勉強した内容が役に立っていました。システムの設計とか音響の話です。基礎力って大事だな〜と思うこととなりました楽しかった〜!全力でゲームを作った期間って、後から振り返るとかなり輝いて見えることに気がつきました。大学2年生たここの冬休みベストバウトです次回作をお楽しみに