こんばんは、夜中たわしです。
先日unity1week(Unity1週間ゲームジャム)というイベントに初参加し、その評価期間も終わったので振り返りの記事です。
こういうの書いておいた方が今後の役に立つ気がしまして。せっかくブログやってんだから。
初心者なんでレベルの低い内容かもしれませんがご勘弁を。
作ったゲーム
「どんでん返しハンバーグ」というゲームです。
ゲーム画面はこんな感じ。
これが開始時点の画面で、タイトル画面等はなし。
見ると想像つくと思うけども、表示されてるのがハンバーグなら「ハンバーグ」、違うものなら「ハンバーグじゃない」を選ぶだけのゲームだ。これを30秒間でどれだけ正解できるかを競う。なお間違えた瞬間ゲームオーバーになる。
「たわし」が案外ハンバーグに似てるから間違いやすい(作った私でも間違う)。
工夫したこと
今回は体調不良が重なって本当に時間がなかったので、面白さに寄与しないところはぜ~~~んぶ削った。タイトル画面なんかはゲームを楽しむ上で別段必要ないな、とすぐ気づいたので一番に諦めた。
するとゲームの説明をどこで行うか? という問題が浮上。それについては、
操作するまでゲームを開始しない
見ただけでゲーム性がわかるようにする
という対策にした。
なにか絵があって「ハンバーグ」「ハンバーグじゃない」というボタンが置いてあれば、ほとんどの人はルールを理解してくれるはず。ただ理解にかかる時間は人によるだろうから、ボタンを押すまでゲームが始まらないようにした。加えて最初はスタンダードなハンバーグを固定で表示することに。
タイトル画面がなくゲーム内説明を行う余裕がないから出てきた策だけど、これは別にタイトル画面の有無にかかわらずそうすべきだわ。わかりやすいに越したことないんだから。
BGMと効果音もできる限り削りたかった。選ぶのが地味に時間がかかるのよ。
検討した結果、ゲーム中であることを示すBGM、正解不正解のSE、終了音だけはどうしても必要であった。でないとプレイフィールが極端に低下してしまう。逆に言うと、これだけでよい。結果画面にBGMはなくてよい。ずっと見てるわけないんだから。
正解時の動作には一番頭を悩ませた。
最初に思ったのはこうだ。正解だったら「○」を表示し、その画像の名前(コロッケなら「コロッケ」)を表示。一定時間ウェイトしてから次の問題に進む。これがスタンダードな気がする。
そう実装するには、時間が足りなかった。そして何より面倒であった……。
なので、全部やめた。
○×表示なしで正解音のみ、画像の名前表示なし、ウェイトなしである。
案外、正解不正解の音を鳴らすだけでゲームとして成立するし、ノーウェイトで次の問題に行くのは何よりテンポが良かった。
ただ、同じ画像が連続で表示されてしまうと違和感があった(クリックできてるかできてないかよくわからなくなる)。なので、抽選で同じ画像を引いた場合は別画像に変更する処理は入れた。
正解時には画像の名前を表示しないが、ゲームオーバー(時間切れ)時には表示することにした。
これはしっくり来た。
間違えると普通腹が立つもんだけど、その際に「実はこういう画像だったのよ」という報酬が与えられるようになった。うれしい誤算である。ちなみにこれはハンバーグである(画像にハンバーグが含まれてるから)。
終了画面もこれでほぼ完成した。画像の名前が表示されるとともに、終了音(笛の音)を鳴らしてBGMを止めれば終わったことが明らかである。あとはリトライボタンを実装するだけであった。
最後にアイコンの画像を用意して完成である。専用画像を用意する余裕がなかったから、単にゲームオーバーの画像をキャプチャしただけ。こらも案外悪くなかったようだ。ハンバーグなのにコロッケ!? と目を引く。
その他の工夫・改善点
ゲームのプレイ時間は短く、30秒にした。300以上のゲームが投稿されるもんだから、こんなバカゲーに皆さんの時間を使わせるわけにはいかないので……。
はじめ「ハンバーグ」「ハンバーグじゃない」のボタンは画面左側にあった。ただこれだとスマホで遊ぶ場合に操作性が悪すぎた(特に右利きの人にとって)ので、画面下部に移動させた。
結果「画面レイアウトは縦長がよかったのでは」と気づいたが時すでに遅しであった。
スマホやタブレットで遊ぶのが有利過ぎる。マウスクリックよりタップの方が明らかに早いのだ。ならキーボードの←を押せばハンバーグを選べる、みたいにすれば平等に近づくな? と気付いたが、追加実装する余裕がなかった……。
今後遊ぶ人のために今から実装してもいいんだけど、急いで作りすぎてコードが激しくスパゲッティ化してるので、入れられる気がしない。すみません。
ハンバーグが出てくる確率は65%にした。基本ハンバーグが出てきて、時々違うのが出てくるのが楽しいと考えて何度かテストプレイしたところ、この数値に落ち着いた。例えば80%にすると、ハンバーグが出続けるのを祈って連打するゲームになってしまう。
Xへのシェアボタンを実装したかったが間に合わず。これはあった方がいいでしょうな。
思ったこと
ゲーム開発、やれることが無限にあって自由過ぎる。みんなどうやって決断してるんだ!!?
今回時間がなかったことで悩む暇がなかったのはよかった。やっぱ締め切りは大事だわ。
今回のunity1week、お題が「かえす」だったんだけども、かえす(どんでん返し)の要素が薄いことは反省。本当は後ろの隠し扉が開いてハンバーグが出てくるようにしたかったけど、そんな余裕はなかった。
ライブで楽しく遊んでくださった方がいる。嬉しい!
評価
このunity1week、お互いにゲームをプレイし合って評価を付け合う制度がある。
8/29時点でのどんでん返しハンバーグの結果はこちら。
楽しさ : 4.0
絵作り : 3.533
サウンド: 3.35
操作性 : 4.017
雰囲気 : 3.617
斬新さ : 3.583
いやあ、嬉しい結果です。本当に楽しさと操作性以外は無視して作ったので、その通りの結果が出てるし、それも想像してたより高い。今後は他にもリソースを割けるよう頑張ろ。
ほか技術的な備忘録
リリース後、アンドロイドでプレイすると文字化けする問題を発見。こんなの気付きませんて。
参考にしたサイトhttps://t.co/nvimetzqaQ
— 夜中たわし (@tawwwashix) August 19, 2024
スコアランキングの実装は比較的簡単だったので実施。これがないとスコアアタックする気にならない。
ただ途中、ランキングのライブラリを取り込む際にGitクライアントをインストールする必要があった。Gitはその時インストールしたんだけど、なぜかエラーが出てUnityにライブラリを取り込めない。下記サイトを参考に環境変数を設定したら解決した。
参考にした記事:
おわりに
テストプレイとして6歳の息子に遊んでもらったが、楽しんでくれていた。「ハンバーグをこねる女性」をハンバーグじゃないと判断し、結果を見て大笑いするなど。子どもでも楽しめるゲームを作りたかったので、この時点で私としては大成功である。
ちなみにこの「どんでん返しハンバーグ」という変なゲームができた経緯は、ポッドキャストで案出しをした際に出てきてしまったから。
ではまた余裕があれば、次回のunity1weekで!