Find You
このプロジェクトは2020年に1人のプログラマーと1人のアーティストによって開始されました。私は2021年8月に参加し、2022年2月まで制作に携わりました。
当初、ゲームデザインはほとんど手付かずの状態で、いくつかのプレイ可能なレベルとメカニクスがあるだけでした。そのため、私の主な目標はそれらすべてを一つにまとめることでした。しかし、デザインにまとまりや一貫性が欠けていることに気づいたため、ほとんどのメカニクスを作り直し、新しい要素を追加しました。
また、チュートリアルを含む約30種類の多様なレベルを作成したほか、レベルを非常に素早く作成するためのツールを設計し、ゲーム全体のレベルとメカニクスの進行(プログレッション)を構築しました。
ゲーム概要
『Find You』は、2人のキャラクターが同時にプレイする、シングルプレイヤー向けの3Dパズルゲームです。心地よい(cozy)美学に焦点を当てており、数分で解けるような短めのパズルが特徴です。
主なメカニクスとして、2人のキャラクターがそれぞれの「次元」で活動し、もう一方がゴールに到達するのを助けます。あるキャラクターが自分の「次元」で行ったアクションが、もう一方のキャラクターの次元、あるいは両方の次元に同時に影響を与えることがあります。
ゲームプレイ・パターン
ゲームプレイ・パターンとは、プレイヤーがゲーム全体を通して行う繰り返しの連続したアクションのことです。このように、メカニクスやパズルを解くためのこれらの一連の流れは、プレイヤーが何度も繰り返すことで「筋肉の記憶(マッスルメモリー)」によって無意識に行われるようになります。しかし、実際にはこれらのパターンは、プレイ中にプレイヤーがさまざまな感情や思考を持つように影響を与えます。これらのパターンはレベルデザインにも取り入れられ、プレイヤーの考え方がパターンに慣れた後でも、プレイヤーが詰まることなく進む方法を見つけられるように設計される必要があります。
最も注目すべき重要なパターンは以下の通りです:
Mimo <-> Mimi: プレイヤーはキャラクターを切り替えながら進める必要があります。Mimoがアクションを完了したら、次はMimiに切り替えて次のアクションを行うというサイクルを繰り返します。これにより、アクション完了後にプレイヤーが次に何をすべきか把握するのに役立ちます。
唯一可能なアクションから始める: シンプルなルールです。通常、パズルをさらに先に進めるためのアクションは1つしかありません。ただそれを実行するだけです。プレイヤーに1つのアクションしか取らせないことで、最初からパズルを解き始めることができ、簡単に挫折することなく、その最初のアクションを行う中でヒントを見つけることができるかもしれません。
同時にゴールに到達する: パズルが完成に近づいたとき、もう一方がゴールを通過できるようにアクションを起こしたキャラクター自身も、自分のゴールを通過できなければなりません。そうでなければパズルは完了しておらず、プレイヤーに何かが足りないことを示唆します。これは最も重要で象徴的なパターンであり、すべてのレベルで一貫しています。これにより、レベルをクリアする際にプレイヤーに安心感と安全性を与えます。なぜなら、トンネルの先に光が見え、あと数回のアクションで完了し、我が家に帰ってきたという感覚になれるからです。
最初にすべてのレバーを引く: レバーは一度しか使えないため、一度作動させると後戻りはできません。いずれにせよ、このゲームには「リセット」や「ミス(死亡)」などは必要ありません。プレイヤーはいつでも開始地点に戻ることができます。そのため、プレイヤーはすぐに、その変更を加えたのはそれが持続する必要があるからだと理解するでしょう。これは開始地点として、あるいは進め方のアイデアが思い浮かばないときに行う小さなアクションとして機能します。
エレベーターで位置を入れ替える: エレベーターが登場すると、通常2人のキャラクターは異なる階層に位置することになるため、位置を入れ替える必要が出てきます。もしプレイヤーがキャラクターで他に何をすべきか分からない場合、位置を入れ替える(これはキャラクターごとの歩行可能なレイアウトの変更を意味します)ことで、より幅広い可能性が開かれます。
すべてのボタンが押される可能性がある: その名の通り、パズルを完成させるためには通常すべてのボタンが押される必要があります。「通常」と言ったのは、高度なレベルではプレイヤーを混乱させるための「餌(ベイト)」が存在し、すべてのボタンを押すことに慣れているプレイヤーがそれに引っかかる可能性があるからです。ゲームの後半では、プレイヤーがこのパターンを信頼できなくなるパラダイムシフトが起こりますが、これまでの学習により、どうにかして試そうとするかもしれません。これは一般的な「ミミック宝箱」と同様の効果です。
チュートリアルレベル
ここに最初の2つのチュートリアルレベルを、何が、どのようにプレイヤーに教えているかという解説とともに示します。何をすべきかについてのテキストやガイド/説明は一切なく、プレイヤーはプレイすることのみによって、これらを学ぶ必要があることに注意してください。
レベル 0-0:基本的な移動から始め、目的を設定する
別のゴールがあるだけで他に道がないように見えるため、プレイヤーは唯一可能な選択肢を「直感的に」クリックし、移動方法とゲームの目的を学びます。
プレイヤーが一人のキャラクターでゴールに到達すると、次のステップがどうなるか考えるでしょう。
もう一人のキャラクターが逆さまになっているため、視点を動かそうとすると回転し、プレイヤーに次元を切り替える方法を教えます。
2人のキャラクターでゴールに到達すると、レベルが終了し「レベルクリア」画面が表示されます。
レベル 0-1:カメラの移動と収集アイテム
一見すると、インタラクティブ(干渉可能)そうな新しい要素(動くハート)があります。そのため、プレイヤーの自然な反応は、何が起こるか確認するためにそこをクリックすることでしょう。
プレイヤーがハートをクリックし、それがコレクタブルであることを学びます
レベルに入ると、プレイヤーは直前に学んだように目的を探します。しかし、ゴールへの「クリック」を妨げているタイルがあることに気づくでしょう。
カメラが移動可能であることはすでに知っているため、プレイヤーはここでカメラを水平に回転させる方法を発見しなければなりません。
開始時のカメラアングルの影響で、プレイヤーはゴールを適切にクリックするために、カメラを水平に回転させる必要があると理解することになります。
これらを通じてプレイヤーが学べる追加要素:
全体として、プレイヤーは単なるメカニクスやコントロール以上のことを学んでいるはずです。「Mimo <-> Mimi」や「同時にゴールに到達する」といったいくつかのゲームプレイ・パターンを学んでいるでしょう。同様に、カメラの回転を学ぶことで、それがレベルをクリアするためだけでなく、パズルやレベルの構造をより深く理解するのにも役立つことに気づくかもしれません(将来的には、これを行うことで手がかりを見つけることになるかもしれません)。さらに、考えすぎたりストレスを感じたりするのではなく、事前に数手先を計画し、ペナルティなしで少しずつ進歩していくという、ゲームとパズルの感覚を掴み始めているはずです。
エレベーター:「2Dパズル」を「3Dパズル」へと昇華させる
プロジェクトに参加した際、ゲームが3Dであるにもかかわらず、パズルが3Dになっておらず、単なる2Dレベルであることに気づきました。そこで、プレイヤーにとってより面白く、かつ実現がより困難な要素を加えたいと考えました。ゲームデザインのために与えられたリファレンスのいくつかが空間パズルを採用しており、このゲームにはそれが欠けていたため、ゲームの概念を覆すようなものを生み出す必要がありました。(フフッ)
2Dパズルと3Dパズルの違い
3Dゲームであるにもかかわらず、パズルは2Dでした。このGIFが示しているプロセスは、ほとんど同じです。
たとえこうした階段が追加のレイヤーを加えたとしても、このパズルは以前のものとほとんど変わりません。
また、異なるキャラクターで各次元を操作すること(レベル/ワールドを回転させることによる)は、分割画面のゲームとほとんど同じです。
上記のパズルはすべて、解く際にいくつかの追加の「思考のレイヤー(layers of thought)」があるものの、依然として2Dです。しかし、キャラクターを回転させたり切り替えたりすることは興味深く、ゲームフィールにポジティブな影響を与えます。
思考のレイヤー (Layers of thought)
これは標準的な用語でも定義された用語でもないため(説明するために私が作った名前ですから、笑)、「思考のレイヤー」を非常に特定の種類のメンタルプロセスとして定義します。このメンタルプロセスは、最初(情報を受け取る)から最後(ゴールに到達する)まで、何かを達成するために次のステップを考える際に行う、最も単純で最小限のアクションです。[もちろん、筋肉の記憶や脳の反射によって暗示される可能性のある一部の機械的な動きは無視します。]
「ドアを開ける」といったシンプルなプロンプトを解決するためのメンタル・レイヤーがこちらです。この図式では、メンタルプロセスの2つの例が示されています。1つ目は直接的なもので、2つ目はこのゲームでプロンプトがどのように解決されるかという例です。
どちらも本質的には同じですが、プレイヤーがこれらのアクションを行えば行うほど、「ボタン」と「ドア」の間にあるレイヤーは、彼らの脳によって自動的にスキップされ、直接的なつながりが作られます。それでも、間にある思考のレイヤーを修正することは、関係性に含まれるレイヤーが常に同じであるとは限らないため、プレイヤーが飽きるのを防ぎ、彼らがプロセスを楽しめるよう、ポジティブな影響を与える可能性があります。
しかし、まだ 3Dパズルではありません。
パズルを解くための3Dマインドセットを実現するために、ゲームの概念を覆すような新しいメカニクスを作成する必要がありました。このメカニクスはプレイヤーに空間的な思考法を与え、2Dパズルを空間的なものへと変換します。
私が達成したかった変化は、平面上のカラーパズルがルービックキューブのパズルに変わるようなものとして表現できます直。
エレベーター!
これが私の考えた新しいメカニクスです。
移動可能で歩行もできるブロックとして使われるエレベーターは、両方の次元(レベルのレイアウト)を同時に変化させ、キャラクターが一方の次元の世界からもう一方へと移ることを可能にしました。これによって、プレイヤーは位置を変えながらレベルのレイアウトを変更し、2つの要素を同時にコントロールできるようになります。
これで、ゲームは正式に3Dパズルになりました。変更が同じレベル(ステージ)内で行われ、片方だけでなく両方に直接影響を与えるようになったからです。エレベーターは一方だけでなく、両方のキャラクターにとってのパズルのレイアウトを変更します。エレベーターを再び使うと、もう一方のレイアウトも変わります。これは単なる階段ではありません。
これは一見シンプルに見えるかもしれませんが、多くの2Dパズル要素を追加するよりもずっと、プレイヤーの思考法を完全に変えてしまいます。さらに、エレベーターが2つ以上ある場合、プレイヤーの思考はより3Dモードへと適応していき、それがパズルを解くための唯一の方法となります。
結論
平面的なレベルからボックス型のレベルへの移行。前述のルービックキューブの例と同様です。
このメカニクスがあるレベルは、もはや2Dパズルではなく、今は3Dであると結論付けることができます。
はい、はい、これでエレベーターが確認できますね。
以下は、エレベーターを使用したアドバンスレベルのゲームプレイ動画です。
レベル・ウォークスルー
ゲーム初期段階のレベルのレベル・ウォークスルーがこちらです。このウォークスルーの中では、そのレベルが何を達成しようとしているのか、そしてなぜそのような構成になっているのかについて、いくつかの解説を行います。
レベルの第一印象。
ゴールはアクセスしやすく、最初から認識可能です。また、ボタンも同様にアクセスしやすい場所にあります。それにもかかわらず、この時点でボタンを押しても何の意味もないため、ある種の「ベイト(罠)」として機能しています。
レベルのライン(導線)は、レベルを進行させるために視線を重要な要素へと誘導しています。これらはまた、手順と重要性の順序にもなっています。移動障壁 -> ボタン -> もう一方のキャラクターのゴール。
もう一方のキャラクターでプレイするためにレベルを回転させたときのみ、このように見えます。プレイヤーは進行するための唯一のアクションとして、前の視点からこの視点へとレベルを回転させます。
見ての通り、ライン(導線)によってプレイヤーが重要な要素を見るように仕向けられています。キャラクターの周囲(青いボタン) -> ゴール -> 緑のプラットフォームとボタン。
入り口の隣には、プレイヤーが必ず気づくような半分隠された収集アイテムもあります。これは、プレイヤーが注視しているはずのゴールのすぐ近くに配置されているためです。ゲームの初期段階なので、収集アイテムの場所が少しずつ分かりにくくなっているとはいえ、このレベルではまだ見つけやすく、手に入れやすいようになっています。
「唯一可能なアクション」(ゲームプレイ・パターン)は青いボタンを押すことなので、プレイヤーはパズルをどう進めればよいか理解することができます。同時に、Mimo <-> Mimi のパターンも活用しています。
繰り返しになりますが、青いキャラクターにとっての選択肢は1つしかありません。障壁があるために他の場所へは行けないので、プレイヤーは緑のボタンを押すことになります。
もう一方の「次元」に戻ると、白いキャラクターは進むこと(収集アイテムの入手)ができ、緑のボタンを押せます。このアクションにより、青いキャラクターは障壁を通過できるようになります。
これには、ほぼ常に使用される「Mimo <-> Mimi」パターンを利用しています(そのため、今後は言及しません)。
GIFの中では、青いキャラクターが緑のボタンも押しており、障壁をそのままの状態に保っていることが確認できます。しかし、プレイヤーがあらかじめ青いキャラクターを移動させていれば、障壁がずれたことに気づくはずです。青いキャラクターがまだ緑のボタンを押していた場合、ボタンを離すと、障壁はそれに応じて動きます。こうしたインタラクションにより、プレイヤーは事前に計画や予測をしていなくても、何が起きているのかを理解することができます。
現在、両方のキャラクターはゴールに近く、実際、青い方はそのままゴールを通り抜けることができます。しかし、ここで重要なのは、両方がゴールに到達しなければならないということです。そのため、レベルをクリアするには青いキャラクターが白いキャラクターを助ける必要があります。ボタンは青のゴールに非常に近く、動く障壁は白/ピンクのゴールに非常に近いため、「同時にゴールに到達する」というパターンが適用されます。これにより、レベルをクリアする際に安心感と安全な感覚を与えることができます。
企画プロセス
パズルを設計するために使用した企画プロセスがこちらです。
第1フェーズ:パズルの定義
学習:
既習のメカニクスをいくつか導入し、新しいものを解く必要がある際には、プレイヤーが確実に理解できるよう、またそれが全く新しいものと感じさせないように、任意のゲームプレイパターンを使用します。(新しいメカニクスは、2つの既知の要素の間に配置する必要があります。そうすることで、プレイヤーはパズルがどのように終わるのか、そして新しいメカニクスが自分たちをどこへ導くのかを理解することができます。レイアウトは明確です。)
テスト :
定義されていない組み合わせで稀に使用される、多数のダイナミクス。これらのレベルの順序には、より大きなクリエイティブな自由度があります。これは、プレイヤーが常にどのように考えているかを確認し、彼らに新しい思考法を見つけさせるために、わずかに異なるバリエーションや反復が必要だからです。これらのレベルのレイアウトにはより自由度があるため、多様で判別しやすい形状になります。
ミックスオプション
さまざまな種類のレベルを1つに統合したもので、通常はボス用です。ボスには異なるフェーズがあるため、前述したあらゆる種類のレベルにフェーズを設定することができます。
向上
以前のレベルと似ていますが、パズルの解法だけでなく、最初からプレイヤーを圧倒することで、前のパズルよりも思考に負荷をかける難易度を加えたレベルです。これにより、精神的に余裕のない状態で似たような状況をどう解決すべきかを学ぶことができます。全く快適ではない状態で状況を解決することで、プレイヤーのスキルが向上し、将来訪れるより困難な状況に対してより高い耐性を得ることができます。
圧倒させるには?
例:
行き止まりの通路のような大量のブロックを追加する。
一目見ただけではパズルを簡単に特定できないよう、多くの視界を遮るもの(サイトブロッカー)を作成し、何度もカメラを回転させる必要があるようにする。
実際の内容よりも複雑な印象を与えるために、多くの類似した要素を詰め込む。
忘れてはならないのは、レベルの手順は基本的には同じ量であり、これらの圧倒させる仕掛けはすべて「煙幕」に過ぎないということです。これらのレベルのレイアウトは互いに区別しにくいかもしれませんが、レベル内の要素の多さによって、そのタイプは明確に識別されます。
第2フェーズ:アイデアのフロー
この企画フェーズでは、プロセスの順序が異なる場合があり、その時の創造性に応じて逆戻りすることもあります。
レベルの構造が定義されているからといって、全く同じ目的や「スロット」のためにレベルを「複製」できないわけではありません。多くの異なるレベルが、メカニクスA+Bのみを使用するものになる可能性があります。進行上の同じ「要件」を満たすバージョンはいくつも存在しますが、最終的なゲームに登場するのは1つだけです。あるいは、それらをベースにして、最高の内容をすべて掛け合わせた決定版のレベルを作ることもできます。
第3フェーズ:スケッチ
レベル制作のために、Unity 3Dでツールを設計しました。これにより、床や壁の構築に使用するあらゆるブロックをゲームプレイ要素に変換できるようになりました。そのため、どんなデザインも実装するのが非常に簡単で、(一部の「完成版アート」アセットを含めても!)即座に動作させることができました。
このツールのおかげで、すべてのレベルを紙の上で同じ細部まで詰める必要はありませんでした。いくつかの生のアイデアをスケッチしたら、すぐにUnityに移行して構築し、必要な修正や仕上げ(特に要素を隠す作業など)を行いました。こうすることで、可能な限り早くテストとイテレーションを行うことができました。
第4フェーズ:構築
すべてのエレメントが「ファイナルアート(完成版アセット)」の状態の時にプロジェクトに参加したこと、また、すでにブロック化されている床や壁の性質、そして前述のツールの存在により、「ブロックアウト」と「ファイナルアート」の間に明確な境界はありませんでした。しかし、最終的な結果に至るまでレベルのイテレーションを繰り返すことは、「ブロックアウト」の一部であると考えることができます。
第5フェーズ:イテレーションと仕上げ
ゲーム全体を通したレベルのプログレッシブ(進行)
私はゲームデザインとレベルデザインを担当していたため、ゲーム全体の攻略フローとレベルの進行を設計しました。ここでは、レベルを整理し、どのように進めるかを計画した内容の概要、およびコアゲームプレイのループ時間や各レベルのクリアに必要な手順数、ゲームの難易度曲線を測定するための指標(メトリクス)の設定について説明します。
以前の内容を再確認しつつ、新しい要素を追加し続けることができるよう、上昇傾向の進行パターンを作成する必要がありました。こうすることで、どのレベルもメカニクスやダイナミクスの種類と数が全く同じになることはなく、レイアウトも異なるため、プレイヤーが飽きることなく、各レベルがユニークに感じられるようになります。 以下は、各数字が異なるレベルを表す簡単な例です:
1:メカニクスA
2:メカニクスA × 2回
3:メカニクスA + ダイナミクスA
4:メカニクスA + ダイナミクスA + メカニクスB
5:メカニクスA + ダイナミクスA + メカニクスB × 2回
6:メカニクスA + ダイナミクスA + メカニクスB + ダイナミクスB
7:A+B(統合された)ダイナミクス
など…
この画像は、レベルを整理し、ゲーム進行の設計において一貫性とまとまりのある進行を見出すために私が行ったプロセスの一部を示しています。
垂直軸(縦軸)にはゲーム内のメカニクス/ダイナミクスが表示され、水平軸(横軸)にはレベルが表示されています。その結果、各レベルにどのメカニクス/ダイナミクスが含まれているか、またそれらが繰り返される可能性があるか(必ずしも2回だけとは限りません)がひと目で分かります。
注:オレンジ色で強調されているレベルは、新しく導入されたメカニクスのみを示すチュートリアルです。 注2:「レベル0」は、パズルメカニクスが全く存在しない、最初期のチュートリアルを表しています。
こちらは、灰色で強調された「ボスレベル」と、2つのより複雑なメカニクス/ダイナミクスの結果として生じる追加のダイナミクスを含めた更新版の画像です。また、各レベルでどのようなゲームプレイパターンを使用できるかも示されています。
私は、「ボタン」、「レバー」、「キー」のメカニクス/ダイナミクスは、多かれ少なかれ同程度の難易度であると考えています。しかし、現在の進行(プログレッション)になっているのは、以前のメカニクス/ダイナミクスを維持しつつ、これら新しいものを追加することで、逆の進行では起こり得ないさらなる難易度を加えることができるからです。また、プレイヤーにゲームを続けてもらうために、何を先に追加するのがより楽しいかも考慮しました。まさにこれが、以降のレベルでメカニクス/ダイナミクスを使用するかどうかを決定する基準となりました。つまり、それらが十分に楽しく、繰り返し使用してもプレイヤーを飽きさせないかどうかです。
各レベルでメカニクスやダイナミクスが使用されていない箇所を除くと、出力されるグラフはこのようになります。 ここで読み取れるのは、各レベルで手順数の多い長いパズルを作成してプレイヤーに負荷をかけすぎることなく、ゲームが進行の一貫性を保っているということです。プレイ時間や使用されるメカニクス/ダイナミクスに関連する進行は緩やかであるため、プレイヤーはほぼ同じくらいの時間をプレイに費やすことになります。 このゲームの主な特徴の一つは、何時間もかけるのではなく短いパズルとして設計されているため、レベルの長さ(所要時間)が均一であるべきだという点です。唯一の例外は、最終ボスレベルのみです。
メカニクス数に関するこのグラフの出力曲線は、難易度とかなり似ている可能性があり、実際、両者は関連しています。というのも、新しいメカニクスを扱うことはより困難ですが、プレイヤーが以前のメカニクスに慣れれば慣れるほど、それらをより速く、あるいは簡単に解決できるようになり、新しい課題に集中できるようになるからです。
そのため、このパターンを用いてレベルを作成することで得られる難易度は、各レベルが位置する場所に的確に対応している可能性があります。もちろん、実際の難易度はそれよりも曖昧なものであり、レベルが完成した後に適切にテストを行う必要があります。しかし、レベルを作成する前であっても、そのレベルがどれほど難しくなるかを測定するための**指標(メトリクス)**として、これは非常に役立ちました。
ここまで読んでいただき、ありがとうございました. 良い一日をお過ごしください! :)