-
やあ、僕はマーク
磁石のビデオゲームを作ってる
-
このシリーズの目標の1つは——
-
ゲーム制作に必要なものについて
本当の、透明な、ありのままの姿を見せることだ
-
つまり楽しくてワクワクする
良い動画素材になるものだけを見せるわけにはいかない
-
例えば、メカニクスの試作、ステージの設計
突然のデモ版公開とかだ
-
そして分かったのは、ゲーム開発には
華やかじゃない作業がたくさんあるってことだ
-
例えば、メニュー、HUD、データのセーブ・ロード
各種コントローラーの対応
-
設定の同期、進行状況の記録
ステージの切り替えなどなど
-
こういうのは開発日誌や記録番組では
あまり語られない
-
実際、とても退屈だからだ
-
でも誰かがこれを作らないといけない
このゲームでは…その誰かは…
-
僕のことだよな?
-
さて、前回の動画で
僕はキャラの操作性を完全に作り直した
-
その中でキャラ操作に関する設定を
いくつか実装した
-
例えばボタン押しっぱなしの照準を
オンオフの切り替え式に変えたり
-
全てのキーやボタンの配置を
再設定したり
-
磁石の色を変えたりできる
-
これは使い捨てのテストステージでは問題ないが
これらの設定をゲーム全体で機能させるには
-
何らかの方法でこうした設定を
ステージ間でも同期させ
-
設定を HDD に
セーブ・ロードできるようにして
-
プレイヤーがこれらの設定を
設定する UI も用意する必要がある
-
で、あちこちいじった後
これを思いついた
-
初めてゲームを起動してタイトル画面に入ったとき
「設定管理器」を生成する
-
これは大量のコードがある非表示の GameObject で
設定を記録したり
-
その設定を HDD に
セーブ・ロードしたりする
-
この Object の名前は
「ロード時に削除しない」
-
プレイヤーがゲームを始めると、タイトル画面が
メモリーから削除されてステージに置き換わるが
-
設定管理器は
臭い屁のように残り続ける
-
まだメモリー上にあるので
新しいステージは設定管理器を見つけて
-
本質的には質問できる
-
例えばキャラは
「今すぐ低感度の照準になるべき?」と聞き
-
磁石は「何色になればいい?」と聞き
-
パネルは「今すぐアクセシビリティ記号を
表示したほうがいい?」と聞ける
-
僕がここで本質的にやったことは——
-
メタなゲームロジックと
その時々のステージ設計の分離だ
-
今にしてみれば当然に思えるだろうが
MVP の頃は絶対になかった
-
当時は、セーブ・ロードや
ステージ遷移をやるコードを
-
各ステージに複製して使っていた
-
ゲームの一時停止メニューですら
全ステージに複製していた
-
これはとても非効率で
テストステージが重くなるし
-
階層に余計なものが増えるし
これらの設定を変えるのが難しくなり
-
ステージ間で要素を管理するのが
大変だった
-
この新システムのほうが
ずっと賢い
-
だからこういう見えない管理器を
もっと作ることにした
-
で、ステージ名を「遷移管理器」に送ると
-
そいつが現在のステージを消して
新しいステージに置き換える
-
これは「音楽管理器」と上手く連携する
まだ存在しない楽曲を取り出して
-
ステージの読み込みに合わせて
フェードイン・アウトしてくれる
-
また「HUD 管理器」は画面の前面に描画する
-
チュートリアルの指示や
状況に応じたボタンアイコンなどだ
-
もちろんコントローラーごとに
表示が変わる
-
そして一時停止メニューと設定メニューを
維持する「UI 管理器」を作った
-
確かにゾッとするほど醜いが
今は機能だけに集中してる
-
将来キレイにするつもりだ
-
音響設計と同じく
UI 設計は「未来のマークの問題」だ
-
未来のマークの問題が
少し増えつつある
-
だがもう1つ作りたい管理器があった
-
MVP の場合、ゲームはステージ1から
ステージ2、3というふうに進んでいく
-
そういう直線的なステージ進行が
パズルゲームに最適なのかどうかは分からない
-
確かに『Portal』や『Inside』などは
こういう形式だが
-
『Braid』『Stephen's Sausage Roll』
『Baba Is You』などは
-
もっと自由な構造になっている
-
ステージを飛ばしたり
パズルを好きな順番でやったり
-
過去に省略したパズルにあとで戻ったりできる
僕はこれが好きだ
-
パズルの1つにお手上げになっただけで
進行不能になるのは良くないと思う
-
それで非直線的なステージ構造を作りたいので
こういう風にした
-
各ステージの目標は鍵の発見、収集だ
-
新しい「進行管理器」には
ゲーム内の全ての鍵のリストがあり
-
鍵を1つ得るとそれを記録して
そのデータを HDD にセーブする
-
とても単純なハブステージを作って
色々なパズルに行けるドアを用意した
-
最後にある特別なドアは
鍵を一定数集めた後に解除される
-
この数はゲームのバランスを調整するとき
簡単に変更できる
-
あと調整とバランスと言えば
-
パズルの相対的な難しさに関する
プレイヤーの意見に基づいて——
-
ステージの順番を
簡単に変更できるようにしたかった
-
それでシステム全体は基本的に
ステージのファイル名を経由している
-
ステージには「01 Lift 02」みたいな
名前が付いていて
-
最初の2文字は
ステージが属するハブを表し
-
最後の2文字は
そのステージにある鍵の数を表す
-
そして関連する全てのシステムは
ステージ名を読み取って
-
必要な文字列を取り出し
そのステージがどこに属しているか調べる
-
つまりファイル名を変えるだけで
ステージの順番を変更できる
-
これは超効率的だ
-
効率化に凝ったついでに
ツールの話もしよう
-
僕が MVP で感じたもう1つのことは
-
ビルドと、特にステージ設計の試行錯誤には
本当にイライラすることだ
-
例を挙げよう
-
この電磁石を少し短くして
赤色に変えたい場合
-
僕は Area Effector の大きさを変えて
ビームの見た目の大きさを変えて
-
粒子システムを移動させて持続時間を減らし
粒子の色も変えて
-
ビームの色を変えて
ドット絵の色を変えて
-
磁石のレイヤーを変えて
バッファーゾーンのタグを変えて
-
Area Effector のコライダーマスクを
変える必要がある
-
これをゲームのほぼ全てに
やることを想像してくれ
-
何かを1タイル上に動かしたいとか
ステージ開始時に閉じていたドアを開けたいだけなのに
-
そして僕が気づいたのは
Unity はゲーム制作のツールではあるが
-
僕のゲームを作るためのツールではないってことだ
だってそれは僕の責任だから
-
僕はツールとシステムを整備して
-
僕のゲームのコンテンツを
量産できるようにする必要がある
-
それを念頭に置いて
新しい電磁石パネルを作った
-
高さを調整する
単純なスライダーがあり
-
このスライダーを上下に動かすと
さっき話した全ての変数も自動的に変わる
-
このボタンも同様で
赤と青、オンとオフを変更できる
-
要はゲーム内に変えたい要素が
たくさんあるのに——
-
そのやり方が同じ手順の
繰り返しだったら
-
1ボタンで全てを処理できる
単純なコードを書いたほうがいい
-
そこで MVP の要素をさらに改善して
より使いやすく効率的にした
-
例えばこの移動ボックスだ
Unity の新しいなんかを使って
-
ボックスの始点と終点
あと移動経路を表示させた
-
さらに定型の仕掛け専用の
画面を整備したので
-
ドラッグ&ドロップでシーンに追加できる
まるで『Super Magnet Maker』だ
-
あと MVP でもう1つ困ったのは
Unity Event だ
-
Event そのものではない
素晴らしい機能で、基本的にはこんな感じだ
-
例えばこの緑色ボタンのコードでは
-
ボタンが押されたとき
「Unity Event を呼び出す」と書ける
-
その後、エディターに戻ると
画面に単純な入力欄が表示され
-
シーンから好きな Object をドラッグするだけで
基本的にはどんな機能も実行できる
-
それで緑色ボタンを押したら
電磁石パネルが消えるようになった
-
パズルゲームにとっては
とても強力な機能だ
-
だが階層の中から目的のものを
探すのは少しイライラする
-
Photoshop 的なピペットでシーン内の
Object をクリックできたら超最高だと思う
-
それで僕はネットでの自分の知名度を悪用して
自分よりずっと賢い人に
-
僕が説明した通りのものを作ってもらったのだが
素晴らしくていつも使ってる
-
この Unity アセットの GitHub リンクは
動画の概要欄にある
-
パズルを簡単かつ効率的に設計できそうな
ツールをたくさん用意したので
-
試しにパズルを作ってみようと思った
-
もちろんずっと効率的になったが
この工程には厄介な部分や障害がまだあったので
-
それを修正して
また試しに別のステージを作ってみた
-
それから別のステージ
また別のステージを作ったら…
-
あることに気づいた
-
僕は裏で動いている
システム管理器の艦隊を作った
-
僕はこのハブ構造全体を作ったし
新しいパズルを4つか5つ作った
-
僕はうっかりビデオゲームを
作ってしまったのか?
-
あらま!
-
面白いことに僕は新しいデモ版を作るつもりは
本当になかったのだが
-
いま僕の HDD には
90% のデモ版がある
-
これは効率的なツールが
いかに強力かを示していると思う
-
これがゲーム制作を速く簡単にしてくれるから
気づかないうちに何かを作ってしまう
-
だから開発工程の序盤で
少し余分な努力や苦労をする価値はあると思う
-
ゲーム開発の主要部分でかかる
多くの時間、労力、苦悩を
-
省いてくれるからだ
-
だがいずれにしてもこれは最高だ
というのも、また MVP の話に戻ると
-
僕が対応すべき課題が大量にあった
皆が好きじゃなかった点を挙げると——
-
キャラの操作感は
信じられないほど悪いし
-
視覚言語にはイライラする矛盾が
たくさんあったし
-
アクションと謎解きが混在していて
遊び方に混乱する人もいたし
-
ほとんどのパズルは「アハ」という
閃き体験に達していなかったし
-
多くのステージは乱雑でバグだらけで
周期がリセットされるのを待たないといけない
-
そしてこのゲームは
磁石が中心になっている感じがしなかった
-
そこでこの新しいデモ版
『Untitled Magnet Game version 2.0』で
-
これらの問題を全て解決して
皆がどう思うか確認するいい機会だ
-
だから君が itch.io に立ち寄って
-
このできたてのデモ版をプレイしてくれたら嬉しい
そう、我慢できずに公開した
-
支援者だけじゃなく誰でもプレイできる
PC と Mac 対応で
-
キーボードとマウスや
色々なコントローラーでプレイできる
-
ぜひ一丁やってみて、この動画か itch.io の
コメント欄に感想を書いてほしい
-
そしてまた戻ってきて
新たな意見について一通り議論して
-
ゲームの次の方向性を考えようと思う
-
ご視聴ありがとう ゲームを楽しんでくれ
またすぐに話そう
-
おっと、最後に GMTK Game Jam が
2022 年も開催だ
-
7月15日に始まるから
itch.io にアクセスしている間に
-
ゲームジャムにも登録しといてくれ
また次回会おう
-
(字幕翻訳:Nekofloor)