Unity 1Week Game Jamに初参加した話

# 概要
フリーゲーム投稿サイト「Unity Room」で開催されたUnity 1週間ゲームジャムに参加しました。
期間は2024年8月12日(月) 0時 〜 2024年8月18日(日) 20時
お題は「かえす」です。

# 目的
今回の目的については以下になります。
### 一週間で企画から開発までをやりきる
今までは時間的な制限もなくだらだらとゲーム開発しては「飽きる」「時間がない」「アイデアが思いつかない」「完成度が低い」と言い訳をして一つのものを作りきってインターネットに上げるということをしてこなかったので今回は期限が決まっているしどんなにクオリティが低くても絶対作りきってアップロードするという強い意志で開発を試みました。

### 丁寧なゲームを作る
Unity Roomでアップされている作品は良くも悪くもアート性が強いゲームがあると個人的に感じています。
よく言えばビジュアルや世界観が凝っている作品ですが逆にそこに力を入れすぎて操作しづらいとか、何も見ないで始めたら何をすればいいゲームなのかわからない => 説明を見ても何をすればいいゲームなのかわからないといった作品が多くみられるイメージです。
なので逆にそういった点を排除してゲームとして最低限の部分がある作品を作るということを目標に開発しました。(自分にアート的な能力がないというところもあります)

### ビジュアル的な要素が少ない作品の需要を調べる
上記の目的とも重なりますが単純にゲーム性だけでどのくらいの評価が得られるかを今回のゲームジャムを通して調べたいと考えました。

### STGの基礎的な部分を作る
お題が出たときに簡単なSTGを作ろうと考えたのですが、一度も作ったことがなかったのでSTGの基礎である敵から球が発射される、弾に当たったらゲームオーバーなどの基礎的な部分の勉強を目的としました。

### InputSystemを利用して入力を制御する
UnityのInputSystemを使って入力制御をしたことがなかったので練習がてら使ってみようと思いました。

# 完成品
[Bounce Dodge](https://unityroom.com/games/bounce_dodge)
![スクリーンショット 2024-08-26 154459.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3795563/a21c1446-9591-0cc9-3be9-c9b7ac2d36ca.png)

「かえす」というお題から敵の弾をプレイヤー前方に追従する壁で能動的に跳ね返すゲームを作ろうとしましたが思ったより面白いゲームにならず、ステージ四方の壁と敵の弾同士が跳ね返るという機能を残して敵の弾をかわしつつ弾が一定回数跳ね返ったら出現するダイヤを取得したらゲームクリアというゲームに落ち着きました。
# 結果
イベント期間中(2024/8/12 〜 2024/8/18)の各数値は以下になりました。
閲覧数 : 150
評価数 : 49
コメント数 : 20(うち半分返信)

評価の平均は
![スクリーンショット 2024-08-26 161506.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3795563/ccb0ee73-bee9-acc2-688d-68b7c35a6867.png)
楽しさ   : 3.66
絵作り   : 3.24
サウンド : 3.44
操作性   : 3.58
雰囲気   : 3.42
斬新さ   : 3.28

---

ほかの作品を評価すると自分の作品がTopに上がるので積極的に他の方の作品を評価した(100ゲームくらい)ので評価100は欲しかったです(希望的観測)
評価の平均については
まあ、、、、、みんな自分のゲームPRしたいからとりあえずやってオール3にした人が多かったのかなという印象。
特段ダメなところもなかったのはうれしいですが自分では面白いゲームだと思ってたので「楽しさ」がそこまで高くないのが不満ですかね。

ともかく期間中遊んでくれた方、評価・コメントしてくれた方本当にありがとうございます！
閲覧者の1/3が評価してくれたと考えたら割合的には高評価だったと自分を慰めておきましょう。

---

以下、目的を達成できたかどうか。

### 一週間で企画から開発までをやりきる
これに関してはアップロードは間に合ったのでクリアしたといっていいでしょう、骨組み自体は3日ほどでできてUIやサウンドなどの調整を親戚の集まりがあると言い訳して数日さぼったのですが最終的に金曜日、土曜日に二徹して間に合わせました。
期限設けられてもぎりぎりまでやらないタチは直さないといけませんね。

### 丁寧なゲームを作る
操作自体は
キーボード   : 十字キー、WASD、左Shift
左スティック : 左スティック、South Button
とUIボタンクリックだけでシンプルな操作性。

アス比を崩さないようにUI調整できました。(自分の環境でしか確認できてないですが...。)

少なくとも自分で作ってて引っかかるところは都度修正してバグ報告に対しても迅速に対応しました。
「ゲーム」にはなっていると思います。

### ビジュアル的な要素が少ない作品の需要を調べる
上の結果からやはりサムネが貧相だとそもそものインプレが稼げないので調べるほどデータ取れなかったなというのが正直なところです、そういうの作れる人が恨めしい。
ちょっとサムネ凝ってるだけの人に負けてるのが非常に悔しいです、ゲームとしては割と面白いものになったかなと自分では感じているので。
このコンテンツ飽和社会にゲームを作るだけじゃ足りないと痛感しました。


### STGの基礎的な部分を作る
全く初めてだったのですが、STGのいわゆるN-Way弾を作ることができました。
あとは敵キャラと弾自体をプレハブ化して出現させる機能はできたので敵キャラと弾のバリエーションを増やすことは本プロジェクト漁ったらできそうだなと思います。
ただ敵キャラの移動、時間やスコア管理の基礎は作れなかったので最低限という感じです。
弾プレハブにRigidBodyをつけてしまったためN-Way弾がうまく出なかったときは絶望しましたが修正できたのでそこもよかったですね。

### InputSystemを利用して入力を制御する
InputSystemは初めて使いましたがちゃんと使えれば使いやすそうだな～って感じです。
まだ習熟度としては10％にも達していないくらい。
一応これだけ使って入力制御できたので目的は達したといえます。

# 課題
ざっと思いつく課題については
- Git 導入していないため前のバージョンに戻れない。
- リトライするためにマウスを使わないといけないがスペースとかでもできるようにした方が優しい。
- ビジュアルがチープすぎる。
- 仕様が固まっていない状態で作り始めると絶対どこかで止まる。
- テストの時間が足りな過ぎて自分で通しで最後のレベルまでクリアできていない。

くらいでしょうか、課題出せって言ったら無限に出ると思いますケド

Git 使っていないに関してはまじ新しいプロジェクト作るときは連携させる習慣付けろって過去の自分に言いたいです。
テストの時間～は難易度調整ミスってるってことで評価期間中に残機制導入したりプラクティスモード作って練習できるようにしたのですが、そもそも10ステージは欲しいな(楽観) => 時間ねえ6ステージまでしかできなかったけど残りのステージ適当に数値入れるか=> クリア不可ってなったので時間あったら解決しそう。
でもランキング機能入れちゃったので今から大幅に難易度かえると最初にプレイしてた人たちにフェアじゃないなってことで迷っています。

# 感想

何のかんの言いつつ楽しかったです！！
やりたいこともおおむね達成できたし、作ったゲーム遊んでもらえて感想もらえるってそれだけで楽しいですね！！
今回作ったゲームが自分のゲームの中では一番面白いと思っているのでもっと評価されたいです。
前作ったゲームはRun And Jump もどきのゲームなのですがこっちはイベントでもないのに500閲覧超えててむかつきますね...やはりサムネに女の子がいてgif 画像にしてるからインプレ稼げるのか。
[Run And Jump](https://unityroom.com/games/runandjump)
次機会があれば今度は1000閲覧超えたいですね。

技術的な記事は別で残したいなと考えています。