目次
はじめに
unity1week初参加&ゲーム制作初めてでした。走った皆様お疲れさまでした。
「RE■■■」の開発ブログなるものを書いてみようかと思います。
※「RE■■■」の重大なネタバレが含まれています。先にプレイしてから読んでください。
参加するきっかけ
C#とunityで遊んでいた私。サンプルアプリを改造して動かしていた私に、ゲーム制作者の友達が「一週間でゲームづくりをするunity1weekってあるよ。ちょうど今期間中なんだ」と教えてくれました。たしか「ためる」のお題のときでした。
その時に「私は締切がないと絶対にリリースを先延ばしにするから、日付が強制的に決められているイベントって良いかもしれない。次回参加しよう」と心に決めました。
多分教えてもらわなかったら一生知らなかったと思うので友人に感謝。
Day1(月曜日)
テーマ決め
月曜0時に発表されたお題が「RE」
過去の傾向を見ていると数字系とか、動詞が来ると思っていたのでこのテーマには驚き。
テーマを「Reyla」、ジャンルを「脱出ゲーム(ノベルゲーム)」に決定したのは以下の2つの理由がありました。
- 期日内に完成可能であること
- 初めての0からのゲーム制作なので、今まで手をつけてこなかったタイプのゲームはやめておこうと思った。3Dとか。
- お題がかぶらないこと
- 初参加なので「完成すること」と「他人の記憶に残りたい」の2つを達成したかった。
- 当初は「reborn」、「リサイクル」などのネタで考えていたが、絶対に被りそうだと思った。re自体に繰り返す的な意味があるので、繰り返すという意味が含まれているもの以外で行こうと思った。
- 「Reyla」と「「RE」というカードを持った男」を思いついたときにこれだったら流石にかぶらないだろうと思った。
- 名前を考える時、「レイラだったらReylaじゃなくてLaylaじゃね?と思いつつも、お題こじつけOKです!って書いてあったので安心して「Reyla」を選べました。一応「Reyla 名前」で検索したら出てきたからまあ良いかなと。
- 前日に「千と千尋の神隠し」の舞台を見ていたので「Boy meets Girl」的な構想が頭の中にあった。
背景の作成とUI仮設置
画面に女の子が入るだけでだいぶゲームっぽくなる。 pic.twitter.com/J4oIluSuFm
— ぬいぐるみ (@cutenuigurumi) December 12, 2022
背景と左右の矢印を作って立ち絵を仮置。この頃はセリフダイアログも自作しようと思っていたので画面半分が暗いのはそういうことです。
Day2(火曜日)
Unityの作業用サーバーに参加し始める。周りで他の人が作業している安心感。
#unity1week 2日目現在の進捗。はじめてのゲームづくりわくわく。 pic.twitter.com/uclxNtr1hP
— ぬいぐるみ (@cutenuigurumi) December 13, 2022
この頃はまだ余裕そう。
タイトル画面、シーンの遷移、オブジェクトの仮設置、イラスト作成、画面の移動処理などを行う。
Day3(水曜日)
字がきたねえ。
この頃書いていたメモがこちら。当時は暗号を解読することで「どそをひけ」と出てきて、ピアノの「ド」と「ソ」を弾くことで「y」の紙が出てくる……というギミックを考えていました。
しかし一週間ではどう考えても間に合わないのでお蔵入り。
どういう要素を拾ってゴールまで行くかと開発しなければいけない要素を書き出し始める。このあたりでゲームの大まかなルートが決まった。
Unity AssetsのFungusを見つける。これがなかったらunity1week完走できなかったかも。
Day4(木曜日)
この日は主に画像、イラスト系を量産してました。
最初は女の子の周りには何も置く予定はなかったのですが、暗号メモ1を隠すのと、両親からの愛情を表現するために色々と置きました。
#unity1week
折返しの4日目終了!
女の子のまわりが初日よりもにぎやかになりました(*´ω`*) pic.twitter.com/ZPSmiBHiuy— ぬいぐるみ (@cutenuigurumi) December 15, 2022
最初は全部自分でイラストを用意しようと思っていたのですが、この時点ですでに折返し日ということで、ゲームにも使える素材サイト様からお借りしてきました。
Fungusが色々出来すぎてびびる。簡単なノベルゲームだったらノーコードで作れそう。色々できすぎるぶん、実現できることを探すのに時間がかかった。
4日目に作った、カッコいいけどゲーム内で使われなかったロゴ。
ゲーム終了と同時にこれが出てきたらカッコいいかなと思ったけれど、gifをunityで表示させる方法がわからなかった。供養。
かっこいい感じに散らせないかなと試行錯誤したあと。
Fungusの機能が豊富なので調べながら実装。
Day5(金曜日)
本業の出張があり、ほとんど作業時間が取れず……。新幹線の中で暗号を考えてたくらいしかしてない。
自己紹介で「今年一年で一番忘れられなかった思い出は?」と聞かれたので、「unity1week中に出張が入ったので作業日が一日無くなったことですかね……」と答えたら爆笑された。解せぬ。
Day6(土曜日)
出張から帰宅する日。7時に起きて10時にホテルを出るまでひたすらコーディングをするも思うように進まない。
この頃からオギャり始める。
作業用ディスコサーバーの「今日の進捗目標」によわねをはかないとか書き始めるくらいには追い詰められてた。
inputFieldでドハマリし、それだけで数時間潰す。
暗号のギミックを2つ作成。クリアシーンへの遷移を作成。
この時点で遅刻を覚悟し始める。
土曜日から日曜日にかけて17時間くらいやってたっぽい。
Day7(日曜日)
前日からぶっ通しでやっていて朝3時くらいに暗号ギミックが2つ完成したので「これ間に合うかも!」と希望が見え始める。朝5時に寝て11時に起きる。そのままゲーム開発。飲むヨーグルトだけ飲んで夜まで飢えを凌ぐ。
周りに「頑張ってって言って」「応援してるって言って」とメンヘラムーブをかましながらも優しい周りに励まされながらラストスパートを走る。
この日はバグの修正(会話中に操作ができちゃう、ギミックを解いたあともオブジェクトがクリックできてしまう、分岐がおかしい、unityroomにあげると表示が崩れる)が多かった。
手元のWebGL環境ではトップ画像が見えるのに、unityroomにあげると見えなくなる謎現象にハマる。メインカメラを適当に弄ってたら直ったので謎。
最終日をまるまるバグ修正に使えてよかった。
画像も直ったので無事にunityroomへアップロード。
脱出ゲームで謎が解けずに永遠にウロウロし続けることほど悲しいことはないので、そういう気持ちにならないように攻略記事を投稿。
延長戦(詰まったところ)
軽微なバグ修正を行い、unityroomにアップロードしたところ「 Cannot read properties of undefined (reading 'apply')」というエラーが…(スクショ撮ってなかった)
・今まで遊んだこと無いPCからアクセスしたら普通に遊べた
・キャッシュを削除したら無事に遊ぶことができた
なので、おそらく原因はキャッシュです。
紹介文のところに「2回目以降で遊べなかったらキャッシュをクリアしてください」と書いておくか、もしくはそもそもキャッシュを保存しておかない設定に変えておくことで対応ができます。
「編集」→「プロジェクト設定」→「プレイヤー」→「公開設定」→「データキャッシング」
からキャッシュを保存しない設定に変更ができます。
が、キャッシュが働かなくなるので、毎回プレイヤーがデータをダウンロードする必要があります。何度も遊んでほしい場合はこの設定を入れるか、要検討です。
データキャッシング を有効にして、ユーザーのマシンにコンテンツのアセットデータをキャッシュします。これにより、後の実行時にそのデータを再ダウンロードする必要がなくなります。Unity WebGL ローダーは、IndexedDB API を使用してデータキャッシングを実装しています。このオプションにより、ブラウザーがネイティブにキャッシュできないサイズのファイルをキャッシュすることができます。
みんなが思ってそうな「RE■■■」へのツッコミ
Q 暗号の答えのALFREDって誰ですか?
A A〜Lまででほとんどの文字が構成されてて短い単語がそれくらいしか思い浮かばなかった。
たぶんレイラパパの名前。お父さんが娘を愛しているのと同じように、娘もお父さんの名前をパスワードにするくらいには慕ってた。そういう感じ。
Q レイラちゃんはあそこで何をしていたの?
A 自分の部屋にこもってたはずだけど、本人もコントロールできない不思議な力により出られなくなってしまった。でも外に出たところで周りは自分を怖がるし、このままでもいいのかも、と思った。
本編にいれられなかったけれど、帰れなくなったのは「自分の名前を忘れてしまった」から。
しばらく引きこもっていたけど、やっぱり一人は寂しい。誰かと遊びたい。誰かと一緒にいたい。そんな思いから無意識のうちに部屋に無害な主人公を呼び寄せてしまった。だけど本人は力を使った自覚がないので「何だこのおっさん」と警戒していた。
Q レイラちゃんと主人公はまた会える?
A 会えるかもしれないし、会えないかもしれない。ある時ぼーっとまちなかを歩いていたらあのピンク色の髪の毛を見かけた気がするし、見間違いかもしれない。
主人公が「あ、死ぬ」っていう絶体絶命のピンチの時には駆けつけてくれて颯爽と守ってくれると思う。
PCのヒントを見るまでは「敵か味方か分からない謎の少女」といういい感じのキャラデザにしていただけました。
完走した感想
unity1weekいっぱいゲームがあって楽しい。半年に一度のお祭って感じでとても良き。
仕事終わりにゲーム制作ってとても大変。やってるひと尊敬する。
家族からの理解がなかったら完走できなかった。ほぼ一週間部屋にこもりきりでも怒らなかった家族に感謝。
作業用サーバーへの参加大事。同じくunity1week走っている人がいれば一緒に頑張れる。
「遊んでもらう」ことへのハードルの高さ
unity1week期間中はゲームを遊んだ分だけ上位に表示されるので、他の人のゲームを遊べば遊ぶほど、自分が遊んでもらえるチャンスが増える。
私みたいな初めてのゲーム制作者でも他人の目にふれる機会がある良い仕組みだと思う。
上記のような仕組みがあっても、ゲームを遊んでくれる人は「私(ぬいぐるみ)という人物に興味があって、ゲーム作ったなら遊んでやるか!」と思ってくれる人、もしくは「unity1weekの参加者」「unity1weekに参加はしていないけれど、遊ぶ専門の人」のどれかに絞られる。
「ゲームは好きだけどunityroom or ぬいぐるみを知らない」…という層へのアプローチの難しさを実感。
企業ゲームがいかに考えて広告をうったり、宣伝したり、「やりたくなる」と思うゲーム制作をしているか、ということを改めて考えさせられた。
インディーズゲーム界隈すげえ。
上で企業ゲームすごい!と言いつつ、インディーズゲーム界隈すげえなあと思ったこと。
1週間でお題に沿ったゲームを考えてこい、って言われて遅刻せず139作品集まる凄さ。遅刻作品も合わせたらもっと増える。
現時点(12/22)では238作品。
「え、これ、一週間で作ったの!?」「インディーズゲームのクオリティじゃねえ…」と思うようなゲームもたくさんあった。
その中でも特に面白かった&クオリティが高かった3つをご紹介。
「unity1weekいっぱいゲームあってどれプレイしたらいいかわからないよぉ…ふえぇ」という方は「RE■■■」と以下のゲームをプレイすると特に楽しめると思う。
※実況OKのゲームのみ掲載していますが、問題があればご連絡ください。削除します。
パズルゲームの中ではこれが一番面白かった。
シンプルながらも「パズルだからいっぱい消して高得点を狙いたい、でも消させない」仕組みの作りが秀逸。もう一回、もう一回と思わずやってしまうようにさせる中毒性がすごい。
目標金額になるようにお寿司をタッチしていくゲーム。絵が可愛いので無限に見ていられるのと、お寿司1個に対して設定されている金額が絶妙に混乱させられる。
途中で逆回転(Reverse)が入るので、待ってた寿司が反対側に行ってしまう悲しさもゲーム性を高めている。スマホ対応しているから手軽に遊べる。
魔王に負けた姫騎士勇者が7日間修行してモンスターを倒したり、アイテムを集めたりして再度魔王に挑む話。
強い敵はスキップアイテムを使って回避して効率よくアイテム集めと経験値集めが求められる。起承転結がはっきりしているストーリー性と、ゲームとしての完成度が両立しているところが凄まじい。
良かったところ
初参加、初ゲーム制作だったけれど無事に遊べるものが期限内に完成した。これは文句無しで自分を褒めてあげたい。
ストーリーとテーマの活かし方を褒められた。(うれしい
反省点
自分の得意分野(創作)で力技でどうにかした感じがあるので、次はアクションゲームとかパズルゲームとか、別のジャンルで頑張りたい。
「時計の針は逆向きに回っている」→暗号1のヒント、と「数字の代わりにアルファベットが振られている」→暗号2のヒントというつもりで作っていたけれど、両方とも暗号2のヒントだと思って解く人が複数人いたので、ヒントは別々にするべきだった。
本当はもうちょっとギミックとかイベントを作り込みたかった。。壁に穴を開けたら大量の目玉がこちらを覗いていて女の子がなんとかしてくれるとか…。
トップ画像をシンプルにしすぎたのは反省点。レイラの画像を使ってもっとカラフルにすればよかった。
他のゲームと並んだときにどうしても埋もれてしまう。
…と思っていたけれど、他のゲーム制作者の方に「アイコンに惹かれた!」って言われたのでこれはこれでよかったのかも…?