unity1week制作日記 アクションパズルをみんなで作ろうよ ~箱を許すな編~
今回の参加作品はこちら
もはや自分の中では恒例行事と化しているのですが、1週間でゲームを納得の行くまで完成させるのは本来めちゃくちゃハードであることを再認識しなくてはならない… そんな回でした。
-1日目
前回のunity1weekではTeamUp!!という複数人で共同でゲームを作る催しに参加して、人生初の共同制作完成まで持っていけました。修行をかねて、今回もTeamUp!!で行こう!という感じでチーム募集をかけてみました。
さて…アートとサウンドを募集して… 使える時間とか、意気込みとか書いて… あ、得意なこととか書く欄もあるんだ… どうしようかな… こういう文章にするか。
・得意なこと
1週間でゲームを完成させること。
u1wでない個人的な試みも含めて過去に11回1週間でゲームを作ってます。
…え?
・得意なこと
1週間でゲームを完成させること。
u1wでない個人的な試みも含めて過去に11回1週間でゲームを作ってます。
大丈夫?そんなこと書いて
・得意なこと
1週間でゲームを完成させること。
u1wでない個人的な試みも含めて過去に11回1週間でゲームを作ってます。
過去何回unity1weekで苦汁をなめてるか覚えてない感じ?
まあいいでしょう。言ったもん勝ちです。
最終的に
激かわエモキュートドッター絵師、みずかきさん
爆速多作サイコーサウンドクリエイター、すなじろさん
がパーティに加わり、地獄のunity1weekへの攻略が始まりました。
0日目
軽くすり合わせしましたが、この時点では一切ゲーム内容は決めてません。いつも通り事前にunityの新規プロジェクトを作り、「u1w230917」という破茶滅茶に無味なタイトルをつけ、ランキングとツイートとgit登録だけしました。
あと、グラフィッカーがドッターだったため、ピクセルパーフェクト対応もしておきました。
また、インタラクティブミュージックに興味があるという話もあったため、音声の切り替えシステムも事前に軽く作っておきました。
もうピクセルパーフェクトは慣れたもん…のはずです。
1日目(月曜)
お題、「1ボタン」…
3人の通話に降りてきたのはいつもと毛色の違うお題でした。(いままでのu1wは複数の意味に読み取れる短い単語が多かった)
この一見の当たり判定の狭さにめちゃくちゃ苦労して、かなり苦労しました。
2時間ぐらいの末にたどり着いたのは…
「過去と未来を行き来するパズルゲーム」
でした。
これなんですが、実は前回のunity1weekの際に採用しなかったアイディアでした。内心(これつくりてぇな…)と思っていたんですが、前回ボツになった制作案をそのまま持ってきています。つまり、俺のエゴだったんですね。多分グラフィッカーのみずかきさんの労力がやばそうだったので遠慮していたのですが、みずかきさんの「できますよ」があったので覚悟のGOサインとなりました。インタラクティブミュージックと相性が良かったのも一因ですね。
↑前回の記事(奇跡的にワンボタンの文字がある)
ちょっと夜更かしして、ステージを考えてみましたが、この時点で既にとんでもない危機感がありました。
え…?これ考えんのむずかし…
なんというか、過去と未来の二軸がある状態で双方にマップがあることが、めちゃくちゃ思考に負荷をかけるんですよね。これが俺のパズル考案力のなさに起因するのか、あるいは人間は過去と未来を行き来することに耐えられないことに起因するのかは分かりませんが…
もうこの日の時点で胃が痛くなり始めました。システムが完成してもパズルが思いつかず頓挫する最悪の未来が脳裏から離れません。
普通に
助けて!!!!!!!!
と思ってました。
パズルの神様助けて!!!!!!!!
俺に降りてこい!!!!!!!!
1日目(月曜の夜)
夜の通話までゲームシステムをずっと作り続けていました。
そして、通話当日の俺の発言は遠慮がちでしたが要約するとこうです。
「これ俺パズル作れないかも、今から変えません?」
↑お前のエゴやろが~~~~!!!!!!!!!
結局、その後小一時間考えたら原型みたいなステージが3つくらい思いついて、やっぱり作ることにしました。ありがとうパズルの神様!!!!もっと助け続けてくれ!!!!!!!!!!
2日目~4日目(火曜~木曜)
もうシステム作りの日々です。ここからシステムの方が牙を向いてきました。
そもそもアクションのシステムを1からちゃんと作ったのが初めてだったのですが、いざちゃんと作るとなると結構難しい。
特にアクションパズルとなると厳密性が重要になるので余計難しかったです。
何が特に難しかったか…
箱!
箱!
箱!
箱!
今最も作るのが大変なのはこの男~~~!!
箱
世のアクションパズル制作者が当たり前みたいに箱を実装しているのが信じられないぐらいバグの温床でした。箱を許すな編開幕━━━━━━
最初0.01マスでも許容するぐらい自由に制御していたんですが、最終的に1マス単位の挙動だけ許容する形にしました。特にこういう厳密なアクションパズルにおいて、箱がたまに違う挙動をするのは致命的すぎます。
時間を超えるという仕様上、マップ切り替えの際に普通のアクションパズルでは発生しない物理演算の難しさも発生してしまい、同期ブロックという化け物も暴れちらかし、めちゃくちゃ苦労しました。
っていうか今思うと箱を物理演算で制御するのがもう良くないです。こっちで全部座標を決めるぐらいでいい。
箱の自由を許すな。
箱の勝手を許すな。
箱を━━━許すな。
5日目(金曜日)
そろそろストーリーとかタイトルとかを考える段階になってきました。全員で案を出し合い、なまり案→みずかきブラッシュアップ→すなじろ文章化という全員がストーリー考案に参加するという奇跡のバランスでストーリーが完成しました。これが友情パワーか…
タイトルも決まっておらず、このままだとゲームのスタート画面が作れないために本腰を入れて考えました。
chatGPTに類義語を聞きながら1時間ぐらい考えて…
これでした。俺はなんて無駄な時間を…
最終的にすなじろさんの「ミライ探救」がバッチリハマり、決定しました。
ここらで絵作りも全体的に完成してきており、あとはステージを量産しつつ、ストーリー部分も組み込めば完成です。
ステージを量産しつつ…?
全然ステージ足りてねぇ~~~~!!!!!!!(この時点で2つ(最低でも10ステージはほしいよ))
6日目(土曜日)
量産!量産!量産!量産!量産!量産!量産!量産!量産!量産!量産!
バグ!バグ!箱バグ!箱バグ!箱バグ!バグ!バグ!
全然間に合うペースじゃないです。無理すぎて日曜は徹夜することにしました。
これは哀れなゲーム制作者の悲鳴(結局4時間睡眠した)
7日目(日曜日)
量産!ストーリー実装!音実装!追加イラスト実装!タイトル実装!エンディング実装!
unity1week終了の日曜夜8時!!!!
未完成!!!!!
厳密には一応通しでプレイできる形でunityroomに限定公開するところまでは間に合ったのですが、いざプレイしてもらうと「アクション的に難しいところがある」ことが判明しました。ステージデザインを優しくするために寝かせることにしました。あと俺が眠かったので俺も寝かせることにしました。
あと致命的なバグが1個出ました。
ブラウザの画面拡大率をいじると表示がぶっ壊れるバグです。
地味に苦労したので後続のためにメモ pixel perfect camera使うとブラウザの表示拡大率によって見えちゃいけないところも見える 一般的なゲームだとcanvasScalerあたりで直すのだが、ピクセルパーフェクトだとそもそもワールド全体が表示によって変わってる
— ナマリカルテ/NamariKarte (@NamariKarte) 2023年9月25日
解決策
— ナマリカルテ/NamariKarte (@NamariKarte) 2023年9月25日
・pixel perfect cameraのCrop Frameを有効化する。周りに黒帯ができて見えちゃいけないところは隠せる
・stretch fillを使う 引き伸ばされて補完されるがドットがぼやける
・PixelPerfectCameraの描画先をRenderTargetTextureにしてCanvas側で設定する 未実装 byやまだまださん
この2点あり、体力が限界だったので遅刻確定となりました。
8日目(月曜日part2)
次の日に4時間ぐらい作業したら全部直ったので、動画を録画して編集して、20時に投稿しました。
過去と未来を行き来して世界を探検する2Dアクションパズルが完成しました! 時代に応じて切り替わるグラフィックとサウンドでめちゃエモくなってます!
— なまり (@namarunamaru) 2023年9月25日
ブラウザからプレイできます~!
グラフィック@utau_mizukaki サウンド@Sunajiro8 https://t.co/WN7Yed96tm#unity1week #ミライ探救 #u1wTU pic.twitter.com/k3Yn7BmtfO
めちゃくちゃ最高のゲームができて大満足の結果となりました。
特に時間切り替えによって「マップ」「主人公の姿」「音楽」が全て違和感なく遷移するという、自分ひとりの力では絶対になしえない、グラフィッカーとサウンドクリエイターの力無しでは不可能な表現ができたのが最高でした。2人とも出してくるものが素晴らしすぎる…
最後にリプレイです。
・得意なこと
1週間でゲームを完成させること。
u1wでない個人的な試みも含めて過去に11回1週間でゲームを作ってます。
嘘つけ~~~~!!!!!!!!!!!!