みなさんこんにちは!クライアントエンジニアのやっすんです!
先日エンジニア5人でUnity Roomが主催する1 Week Game Jamに参加してきましたので、その参加レポートです。
実際に作ったゲームはこちらのURLから!
https://unityroom.com/games/dontaccumulategarbage
(ランキングサーバーが止まっていることがあり、ランキングが正常に作動しない場合があります。)
目次
1 Week Game Jamとは
1 Week Game JamはUnity roomが主催する、Unityを使って1週間でゲームを作るイベントです!
詳細については1 Week Game Jam公式ページをご確認ください。
参加メンバーとスケジュール
今回は、9/5 ~ 9/11の間に開催された1 Week Game Jamに同期2人と先輩エンジニア2人の合計5人で参加しました!
メンバーと役割は以下の通りです。
- やっすん (クライアント)
- いっちゃん (サーバー)
- Yuki (クライアント)
- Nさん (クライアント)
- E さん (サーバ兼アドバイザー)
開発期間はほとんどが平日だったこともあり、平日は簡単な作業を進め、土日にガッツリ実装を進めることにしました。
具体的には、
- 月: 打ち合わせ、アイデア出し
- 火: 開発準備(リポジトリ作成や、Unityのバージョン合わせなど)
- 水~: 開発開始
- 翌月曜日: 完成
このような予定で進めていきました。
アイデア出し
今回のゲームジャムのテーマは、「ためる」です。
何を「ためる」のか、どう「ためる」のか、などいかに「ためる」要素をゲームに取り入れるかが重要ですね。
まずはどんなゲームを作っていくのか、アイデア出しです!
アイデアの出し方は、マインドマップ→アイデアシートの順で行い、後述するアイデアシートで一番票が多かった案を作ることにします。
マインドマップ
まずはマインドマップで、「ためる」に関連することばを関連するものから洗い出していきます。
「ためる」から最終的に、「鉄砲水」や「かめはめは」などいろいろな方向へのことばが出てきました!
だいぶ頭が柔らかくなったところで、アイデアシートにゲームの案を作っていきます。
アイデアシート
アイデアシートは、こちらのスライドの16Pを参考に上の画像のような構成で、ゲーム案を考えてもらいました!
ここでは、実際に書いてもらったゲーム案を紹介したいと思います!
タイトル: 血管バースト
タイトル: ゴミをためるな
タイトル: なし
他にもいくつかゲーム案がありましたが投票の結果、「ゴミをためるな」を作ることになりました!
選ばれた理由としては、「ガチャ要素が面白そう」「シンプルでわかりやすい」などの意見がありました。
制作開始
制作するゲームも決まったところで、いよいよ制作開始です!
とは言っても、まだゲーム案の中身は荒削りのためゲーム案をブラッシュアップを行なってから、タスクを振り分けてそれぞれの作業を行なっていきます。
案のブラッシュアップ
ゲームとして作っていく上で先に決めておくべきことがあると私は考えていて、
それが
- 「手段」をして「目的」するゲーム
- 「完成」の定義
の2点です。
「手段」をして「目的」するゲームは、もともとゲームを分析する際に使われる考え方です。
ブロック崩しなら、ボールを落とさないようにして(手段) ブロックを壊す(目的)になり、脱出ゲームなら、謎を解いて(手段) 部屋から脱出する(目的)となります。
オープンワールドのような手段と目的が無数にあるゲームだと、この考え方に当てはめることは難しいですが、ゲームジャムのようなカジュアルゲームを作る上では、作っているものがブレないように芯を持たせるという意味でも手段と目的を明確にしておくことは大切だと考えています。
「完成」の定義は具体的に最低限どの機能を作れば完成かを決めることです。
ゲーム制作は極論いつまでも作り続けることができますが、ゲームジャムのような限られた時間内で制作する必要があるものについては、どの機能を作るかの取捨選択が重要になります。多くのアイデアに従ってたくさん機能実装しようとしても、時間切れでゲームとして成立していなければ非常にもったいないです。
そのために、最低限ゲームとして成立する機能を洗い出し、余裕があれば他の機能も作成していくというような方針をとることにしました!
以上のことより、今回製作したゲームでは
「手段」と「目的」:
- 「ゴミを集めて」「ゴミを出す」ゲーム
となりました!
ここから必要な要素や機能、面白そうな案を出していき、下記のように案が固まってきました。
- ゴミは部屋にランダムで発生
- 匂いゲージ(仮)が溜まるとゲームオーバー
- 何日継続してゴミを出せるか
- ゴミ袋の種類
- 燃える
- 燃えない
- 資源ごみ
- ゴミ袋の種類と、ゴミの種類は対にならない
- ゴミを入れるまでは何のゴミ袋かは確定していない
- ゴミ捨て場でゴミを出せる
ゲームジャムのテーマである「ためる」要素については、部屋にゴミが「たまって」いく、「たまった」ゴミを捨てるになります。
ここから完成の定義は、
完成の定義:
- ゴミのランダム発生
- 日数経過
- 匂いゲージ(ゲームオーバー判定)
- ゴミの種類の区別
- ゴミをつかんでゴミ箱に入れる
- ゴミ袋を捨てる機能
- ランキング
として、ガチャ要素やおじゃまを増やすという案は時間が余ったら実装することになりました。
タスク分け
最低限作る機能が決定したので、タスクに分割して作業に入っていきます。
ざっくりですが、以下のような感じでタスクを分けて実装しました!
やっすん担当
- ステージ作成
- 日数経過
- 匂いゲージ(ゲームオーバー判定)
Yuki担当
- ゴミのランダム発生
- ゴミをつかんでゴミ箱に入れる
- ゴミ袋を捨てる機能
いっちゃん・Nさん担当
- ランキング(サーバ・クライアント)
作業の途中経過
ここからは私の作業内容紹介になります!
ステージ作成
ちょうどよさそうな部屋のアセットを持っていたので、それを利用して部屋を作成しました。
また、Skyboxのアセットも使って太陽の移動による時間経過を表現しています!
日数と匂いゲージ
Skyboxの機能を利用して日数も表示できるようにしました。
また、ステージ上にあるゴミの量に応じて画面の周りに匂いエフェクトがだんだん濃くなっていきます。
匂いエフェクトが完全に表示された時ゲームオーバーになります。
お邪魔犬
ちょっとだけ余裕があったため、お邪魔ギミックを追加しました!
NavMeshの経路探索を利用して、ランダムで出現しているゴミに向かって犬(?)が走り回ってゴミを吹き飛ばします。
犬は時間経過により最大3体出てきます。
完成
平日の仕事もあり忙しい1週間となりましたが、なんとかゲームが完成しました!
できたゲームは下記から遊ぶことができます!
https://unityroom.com/games/dontaccumulategarbage
まとめ
今回は、エンジニア5人で1 Week Game Jamに参加してゲームを完成させることができました!
エンジニアだけということもあり、UIやデザイン面のクオリティーがやや低かったりしていますが、初めてのチームで完成までできたので良い経験になりました!
学生の頃は、平日も時間があったため好きにゲーム開発に取り組めましたが、社会人となって限られた時間の中での個人ゲーム製作が難しいものだと痛感しました。
次回参加するときは、デザイナーやプランナーを巻き込んで参加したり、今回できなかった反省点を改善してもっと面白いゲームを作っていきたいと思います!
ここまでお付き合いいただき、ありがとうございました!!