速すぎて、次にふわふわしすぎた: 推力を調整する
TUNLの感触を決める要素の中で、ある一つの定数が他のどれよりも大きな役割を果たしています。あるプレイヤーからゲームが速すぎると言われた日、私はそれを一日で二度変更しました。二度目の変更のほうが、一度目より多くを教えてくれました。
操作は多くの人が思っているものとは違う
フラッピーバード風のゲームでは、タップすると鳥に瞬間的な上向きの速度が与えられます。TUNLは違います。押し続けても速度は決まらず、決まるのは加速度です。押し続けている間、上向きの力が重力に加わり、離すと重力だけが働きます。船は移行の間も勢いを保つので、上昇の頂点で離すと、もう一瞬だけ上がり続けます。これがゲームに重みを与え、同時に数値をとても敏感にもしています。
それを定義する定数は3つです。重力は下に引っ張り、推力は押し続けている間上に押し、最高速度はペースの上限を決めます。感触にとって最も重要なのは、正味の加速度のペアです。押し続けたときにどれだけ強く上に加速するか(推力から重力を引いたもの)と、離したときにどれだけ強く下に加速するか(重力のみ)。この二つの比率がゲームの個性です。
どうして速すぎるようになったか
何度もの調整を重ねるうちに、フラッピーバードのような機敏な感触を追い求めて、数値をどんどん締め上げていきました。重力は1150から1300へ、推力は2400から3400へ、最高速度は820から1080へ。テストするたびに毎回良くなったように感じましたが、それは私が親指と船の間の遅延を減らす方向に調整していたからです。最終的に、正味の上昇加速度は正味の下降加速度の約1.6倍になっていました。
すると、Redditのあるプレイヤーが、加速が速すぎる、ランの高揚感を感じる前に死んでしまうと言いました。それはゲームが受け取った初めての自発的なフィードバックだったので、重みがありました。私が最適化していたもの、つまり反応の速さこそが、まさにゲームを容赦のないものにしていたのです。
ふわふわしすぎて、次はその中間のどこか
最初の反応は、推力を2700に戻すことでした。これは重力にずっと近く、正味の上昇加速度は正味の下降加速度よりわずかに大きいだけです。同じ日にプレイしてみると、今度は逆方向に間違っていました。ふわふわしすぎです。船は空中に浮いたままになり、上昇は落下とほとんど変わらない感触になりました。これも感触を失う別の形です。
そこで二度目の変更は、感触だけでなく両方の比率を見比べて選んだ妥協点になりました。元の機敏な調整は上昇約2100に対して下降1300でした。緩めた調整は上昇1400に対して下降1300でした。私は推力を3100に固定しました。これは正味上昇1800対正味下降1300で、ほぼ中間です。上昇は依然として下降より反応が良く感じられますが、最高速度への即座の張り付きはもうありません。この過程で重力と最高速度は一切動いていません。
ここから得た教訓は、「速すぎる」と「ふわふわしすぎる」は別々の二つの問題ではなく、一つの比率の両端だということです。正味の上昇と正味の下降を見比べた瞬間、目標は明らかでした。それ以前は、一つの数値を調整しては感触で判断し直していただけでした。
答えの後半は序盤にあった
推力を再調整したことで感触は直りましたが、新しいプレイヤーがすぐ死んでしまう理由は直っていませんでした。初心者のランを測定すると、中央値は飛行時間わずか約1秒でした。発進アニメーションだけでそれより長いのです。パターンは明白でした。初心者は押して押し続け、船は天井に突っ込み、それで終わりです。ゲームは操作体系のもう半分、つまり離すことを一度も教えていませんでした。
テキストによるヒントは見送りました。タイトルの下に「押し続けて上昇、離して下降」という一文を試したことがありますが、既に押し続けろと言っているボタンの隣にあると冗長に感じられ、下のボタン列も窮屈にしてしまったため、同じ日に外しました。情報自体は正しかったのですが、一文で伝えるのは適切な方法ではありませんでした。
そこで代わりに序盤のコインがそれを教えます。洞窟の最初の区間では、コインの並びが発進の高さより下から始まり、その後上へ上がる緩やかな弧に強制されます。最初のコインを取るには離して滑り降りる必要があり、二枚目を取るには押し続けて上昇する必要があります。三枚目までに、プレイヤーは操作の両方を体感しており、誰も一言も言っていません。これは変更の残りの部分、つまり船体の傷2回分を許容する安全な序盤区間とうまく組み合わさりました。詳しくはペース配分についての記事で説明しています。
調整履歴が何のためにあるか
この記録をつけている理由は、こうした定数は時間とともにドリフトしていくからです。ファイルの中の一つの数値で、少し動かすのは簡単で、その場ではどの微調整にも理由がつけられます。私はこれまでの全ての値とその理由の履歴を残しています。そうすれば次に誰か(私自身も含めて)がもう少し機敏さがあればゲームは良くなると考えたとき、答えはすでに書かれています。それはもう試された、そしてプレイヤーは速すぎると言った、と。
入力モデルも固定です。押し続けて加速するという仕組みはこのゲームのアイデンティティであり、調整はその範囲内で動くことはあっても、瞬間的なインパルスに置き換えてはいけません。異なる大きさの画面でも同じ体感の軌道になるのは、スケーリングのルールのおかげです。これについては公平性についての記事で説明しています。
結果を体感したいなら、船はタップひとつ先にあります。