1週間ゲームジャム
先週(7/1~7/8)はunityroom主催で「1週間ゲームジャム」というイベントが行われていました。
これは文字通りUnityを使って1週間でゲームを作るイベントで今回で12回目の開催となります。
私も前々からこのイベントの存在は知っていて「面白そうだなぁ」とは思っていたものの、「一週間で作成するは無理だなぁ・・・」と尻込みしてしまい参加することはありませんでした。
ただ今年のゴールデンウィークにroom6主催のゲームジャムに参加して、ギリギリではあるものの何とか締め切り内にゲームを完成させることができたので、今回はこちらのゲームジャムにもチャレンジしてみることにしました。
まぁ、結果として期限の20時には間に合わなかったのですが、特に締め切られることなく無事に投稿することができました。
こんな感じのゲーム
パネルを使って同じ色のGEMを集めるパズルゲームです。
難易度的には簡単な部類のパズルだと思うので是非遊んでください。
下のリンクから飛ぶことができます。
振り返るよ
上の動画でもお分かりいただけると思うのですが、出来上がったゲームは非常に単純な内容でプレイ時間も短いゲームなんです。
とは言え、やっぱり1つの作品ができる上がるまでには色んな苦労がありました。
今回はそれらを振り返った記事になります。
・月曜日(7/1)
朝、出勤途中にTwitterをチェックして「1週間ゲームジャム」が「あつめる」というお題で開催されたことを知る。
なので日中は仕事半分、ゲーム構想半分で過ごし、「絡まった糸をほどいて中央にリングを集める」という企画を頭の中でまとめる。
早速帰宅後にプロトタイプの作成に取り掛かる。色々と熱中し過ぎて深夜3時近くまで作業する。
・火曜日(7/2)
平日は6時半過ぎには起床しなくてはいけないので糞眠い。
日中は仕事半分、睡眠半分で過ごす。いや、1:2ぐらいかも。
帰宅後にプロトタイプの完成を急ぐが前日の無理が祟ったのか作業中に寝落ちする。
目を開けたら既に3時を廻っていたので、これ以上の作業を諦めて床に就く
・水曜日(7/3)
この日も帰宅早々からプロトタイプ作りに励む、そして深夜二時ぐらいになってあることにハッキリと気づく。明確な確信。それは。。。
行列計算とか駆使しないといけない事が分かって頭の悪い私には全く無理ゲーだった。
なので当初予定していた「絡まった糸をほどいて・・・」でのゲームは断念する。
つまり既に3日経過しているのに進捗は0、これから別のアイデアでのゲーム制作をしなくてはいけない。
とはいえ、眠気には勝てないので明日きっと良いアイデアが浮かぶことを期待して就寝する。
・木曜日(7/4)
一からアイデアを練り直すにしても時間がないので、ゲームのジャンルを一番作業工数が少なそうなパズルゲームに絞る。期間内に出来上がることを優先しての決断
一口にパズルゲームとはいっても、ルールが複雑だったり、いろんなイベントが発生するようなものは時間が掛かるので、本当に単純で簡単にできそうなパズルゲームにしないといけない。とはいえ、ゲームとして不出来なものは作りたくないし、少しは個性を出したものに仕上げたい。
とりあえず色々素材を並べて、それっぽい画面を作ってみる。
で、その画面を見ながらパズルのルールとかギミックとかを考えることに。
結局、完成予想図として上のような画面で落ち着く。気がつけばやっぱりこの日も二時過ぎまで作業をしていた。
・金曜日(7/5)
この日から本格的に作業に取り掛かる。パズルのルールは半透明のGEMが乗ったパネルを押したり引いたりしてゴールまで運ぶという、いわゆる「倉庫番系」ゲーム
上・左ボタンを押すとその列にパネルが追加され、既存のパネルが押し出される。
下・右ボタンを押すと一番端のパネルが削除され、既存のパネルが引き寄せられる。
ただし、端から連結されていないパネルは動ない
たったこれだけのルールなので少ない残り日数でも完成できるはず。明日は休みだし、徹夜でもすれば遅れを取り戻せるし、絶対間に合う。
そんな楽観的予測を胸に抱いたもの、前日までの深夜作業の影響なのか23時を過ぎたあたりから急激に眠くなり気が付けばベットの中。。。
この日はボタンを押してパネルが列に並ぶところまでしか完成しなかった。
・土曜日(7/6)
朝から作業を進めていくが思いのほかバグが多くて進捗が進まない。
一度パネルを連結した後に他の列のパネルを動かして連結状態を解除したはずなのに、なぜか一緒に動いてしまう。
一列全てをパネルで埋めた後、その列のパネルを全部消そうとすると、端のパネルだけ残ってしまう。
一日中ゲーム作りをすると誓ったはずなのに、なぜかサッカーを観るためにスタジアムへ出かけてしまう。。等々
何故か色々な問題が発生し、思うように進みませんでした。それでも明日という日に全てを掛けようと、明日こそは一日中ゲーム作りをしようと、そう心に誓っていた私は衝撃の事実を知ってしまったのです。
それは・・・
「え?20時締め切り・・・」
(二度目)
・日曜日(7/7)
最終日となったものの完成にはほど遠く、積み残しの作業をざっと並べてみると
- GEMがゴールに到達した判定
- そもそもステージクリアの判定がない
- っていうことはステージクリア⇒次ステージの処理もない
- いや、その前にステージデータを読込む処理がない
- 音楽、SEもない
- ってか音を鳴らす処理がない
- あ、あとUIもない
もうこんな気分
とはいえギリギリまでは頑張ってみようと、休日なのに早朝に起床して作業に取り掛かる。
音を鳴らす処理は他のプロジェクトのソースをコピペして作成、ステージデータのCSVファイルを読み込む処理はネットから拾って、こちらもコピー&ペーストで作成。UIの素材やら音楽、SEもネットから。GEMの到達判定からステージのクリア等々へ続いていく処理は気合と勘と開き直りでコーディングする。バグ取りとか何それ?美味しいの?という感じで、作ったステージは一回PlayしてOKならそれでいいや、ってことにして、アイコン作ってビルドセッティングしてビルドをGO!!
・・・そうしてビルドが完了したのが20時06分
あとはこれをunityroomへアップして・・・・
アップロード完了!!!
どうもありがとうございました。
感想
room6のゲームジャムに参加した時もそうだったのですが、限られた時間で一つの作品を作り上げる、ということは非常にゲーム作りの勉強になりました。
ゲームを作っているとアレコレ要素を付け足したくなるものですが、時間に制約があると必要なものを優先して作らなくてはいけなくなるので、逆に何が必要なのかを見極める力がついたような気がします。
反省点としてはスケジュール管理をちゃんとしよう、ということですかね。今回の場合は途中で仕様を変えたことが原因ですが。