
初めて会った人たちと48時間でゲームを完成させるための3つの事
GlobalGameJamが来週から全世界で行われますね。GlobalGameJamはゲーム開発のジャムセッション・ハッカソンイベントです。
知らねー人と48時間でゲームを作るぞ!というイベントです。
とは言え今は結構ゆるくなって友人たちで挑むとかも全然ありになりました。カジュアル!
いつも同人誌にしたりしてるんですけど今回はそういう事ができなさそうなので、ここを意識しておけば完成率は大幅に向上するよというメモを残します。
完成させるために意識するポイント
自分のチームについての理解どれくらいあるか?
開発スケジュールについてどのくらい理解しているか?
自分たちが作ろうとしているゲームはどれくらい具体的になってるか?
ポイントはたくさんあるんだけどこんな感じ
自分のチームについての理解どれくらいあるか?
知らない人と組むんだからチームについてまず知らないとね。
ざっくり以下のようなところを自分は気にしてます。
仲間の能力について知っている状態(開発力)
仲間の開発における制約について知っている状態(時間)
チームが目指すべき目標が明確になっている状態且つ仲間が全員それに納得して合意している状態(向き)
チームがゲーム開発に払えるコストは開発力をどれだけの時間注げるかである。というは明らかな事実であるにも関わらず、軽視する人も居る。
自分たちのチームがどういう能力を持ったチームなのか?それをチーム全員が知っている必要があり、それはどんなゲームを作るか?の前に必ず確認すべき事だ。
次に向きである。
例えばチームメンバーがみんな完成を目指すぞ!と目的が一致してれば完成をさせるという挑戦で一丸となる。
でも例えば特定の技術を試したくてたまらない!みたいな人が居る時、完成させる事を軽視される。
完成するという目標を軽視されるとシンプルに完成しないのである。
ここを統一するためのシンプルな質問を必ず僕はチームにしている。
「48時間で完成させたいですか?それとも48時間で完成以外の挑戦をしたいですか?」
これは誘導的な質問だけど本質としては個人ではなくチームにとって何が大事なのか?が明確になっている事とそれに対してチームに参加する各個人が合意している事が重要。
チームが合意しているならゲームとして体裁が整ってなくても良いんですよ。このゲームジャムにおいてチームが目指したゴールが最高の表現をする!とかなんでもいいけどその目的を達成したならそれは間違いなく良いゲームジャムなんですよ。
完成するしないは重要じゃないです。ただし、完成させる事への優先度に差がある事が往々にしてあるので、先に意識を揃えるべきです。
開発スケジュールについてどのくらい理解しているか?
チームとしてどういう能力があるのかを知っている事が前提になります。
3日間のうち48時間という時間がフルで使えない事は明らかです。
睡眠・食事はもちろんですが、チームとして話し合う事も含めたり会場によっては発表を強いられたりします。
チームとしてどれだけの時間が開発に使えるのか?を明確にします。
ここで一つ僕が2023年のゲームジャムにおいてチーム内で作った計画をここに貼ります。

こういったタイムラインをチームメンバーが理解していることが重要です。
大半の参加者はとても楽観的で希望にあふれているんですが、まず直視すべきは現実です。
チームとしてタイムラインを引いてどのタイミングではこうなっていたいよねを共通認識として設定するだけで完成の確度は上がります。間違いないです。
会場によっては発表会のタイミングを設けています。
その時点ではこうなっていよう!をチームで設定してあるとそこが一つ見定めポイントになります。
そしてもしもそれが達成されてないならどうするか?をチームで考えるべきです。
あと、タイムラインを定めてチームで認識しておくこととしては後半は余裕が無いという事実を認識すると良いかも
自分たちが作ろうとしているゲームはどれくらい具体的になっているか?
前提としてチームの能力を理解しており、開発にかけられる時間が明確になっている事
要件・仕様が具体的になっていれば居るほどよいがガッチリとした資料を作る余裕はあまりありません。
開発を進めながら以下の状況について意識して、不足していると感じたところを補っていくと良いと思います。
自分たちが作るゲームを説明する時にチームメンバー全員が同じ説明ができる状態
ゲームにおいてプレイヤーができることが列挙されている状態
例:Aボタンを押すとジャンプする
例:タイトル画面でボタンを押すとステージ選択に遷移する
ゲームにおいて起こる事が列挙されている状態
例:棘に当たるとプレイヤーはダメージを受ける
例:棘に当たると効果音がなる
例:ダメージを受けるとHPが減る
作るべき画面数が明確になっており、各画面の要件が明確になっている状態
例:タイトル画面→ステージ選択→メインゲーム→リザルト
会話等で出てくるゲームの用語についてその用語が示す事柄が共通認識になっている状態
ジャンプってどういう事?
ダメージを受けるってどういう事?
列挙された中で具体が決まっていないものがわかっている状態
抽象的だったり不明確な領域・決まっていない事柄についてわかっている状態
ゲームとして遊ぶのに最低限必要なものがわかっている状態
ゲームを遊んでいればそんなのわかるだろって事も多いと思いますが、そこまでゲーム遊んでる人のほうが稀です。
あと遊んでいるゲームもみんなバラバラです。
過去の経験・常識が異なります。
だからここで整える必要があります。
これらが明確になっていると、時間が進んだ時に何が今できていて何ができていないのか?まだ明確になっていない領域がどれだけあるのか?等を見てアラートを飛ばすことができます。
完成度を高めるためにできることをする
ここまで上げたものはすべて完成度を高めるために気をつけると良いポイントであり、これらができたからといって完成が保証されるものではありません。
開発全体を俯瞰し、完成と最低限言える状態まであとどれだけかかるのか?品質を高めるためにできることは何か?これらを考えて取り組む事で、良いゲームジャムになると思います。
その他
ゲームを完成っぽく見せるためのポイント
最後に、完成とはチームが決める事で他人にとやかく言われるものではないです。ですが、明らかにゲームとして完成してないよね・・・という状態はチームメンバーが最も理解しています。
明らかに完成していない・・・を避けるためにやれることは一つで、ゲームの一連の流れを早い段階で作っておく事です。これは見た目の良し悪しは重要ではない事に気をつけてください。
例えばビジュアルを良くする事やレイアウトを変える事は後回しでも良いですが、機能要件を満たしてゲームサイクルが体験できる状態は最優先で作るべきだとは思います。
設計の重要性
プログラマ向けですけど設計は非常に大事です。
ただ、ゲームジャムにおいてはその精度は妥協してもいいと自分は思います。
しかし、設計をしない人が設計なんて要らない!なんて言う事もありますが、それは間違いです。少なくとも完成へのギャンブル性は上がります。
プログラマが一人で且つすべてその人が担うなら良いとは思いますが、2人以上で作る場合どうやって作るか?は議論しておくべきです。
よしなにがっちゃんこしていい感じに動くなんて言うのは初対面の人間同士で問題なくするには難しいです。
全体の設計をする事に時間を割く事ができるのが一番良いと思いますが、それができない場合はコミュニケーションの頻度を増やして、何か作る時にこういうふうに作るけどいいよね?という会話を入れるだけでも良いと思います。
会場が求める発表に対する個人的見解
ゲームが完成したあとの発表にはもちろんしっかり時間をかけてどういう発表を行うか?自分たちが取り組んだ事・その成果物をどうやって知ってもらって関心を持ってもらうか?に注力すべきだとは思いますが、開発期間中については既にある資料を用いて現状を話すだけで良いと思います。
それには専用の資料の用意など要りません。
その発表の資料を1時間も2時間もかけて作る事がゲーム開発においてどれだけ重要ですか?と一度考えた上で、資料を作るのに時間を使うことが良いと判断したならそれを止める事はできませんが、少なくともその時間を使えば仕様が作れて、タスクに起こせた筈です。
また、現状を整理して不足しているところはなにか?できることは無いか?は議論できるはずです。
なので自分が関わるチームは最後の発表以外最小限の手間でやります。ただし、発表する資料はあります。Miro等を活用し、議論したものがまとまっていればそれを元に説明すればいいのです。
自分たちがこれから作るゲームを説明する時に、既に議論してチームで合意した完成像を語るだけで良いはずです。もちろん資料があると嬉しいかもしれませんが、中間の発表は自身のチームの現状を共有・報告する場であり、そこは力を注ぐ価値は薄い筈です。
宣伝
2023年に参加した時の話
Zennに書いてます。あとBoothで同人誌も発行してます。よかったら買ってね。
https://nagara-studio.booth.pm/items/4132542