『フォールガイズ』(Fall Guys: Ultimate Knockout)の2020/9/15アプデにてアンチチートが導入されました。

https://twitter.com/FallGuysGame/status/1305860869973323778

アンチチートが導入されるまでの流れは以下の記事が公式Twitterの翻訳も書かれていて分かりやすいです。
参考:「Fall Guys」の開発者はいかにしてチーター専用のサーバーを立ち上げたのか

要約すると、正規プレイヤーの誤BANを防ぐためにまずはチート検出機能でデータを集め、その後チーターだけを集めた「チーターアイランド」で初のマッチングが行われたもののゲームの見映えが悪くなる(評判が下がって売上も落ちる)ことから結局BANするに至ったということです。

執筆時点までに上記ツイート含めて、1535+977+2142+3098=計7752人がBANされています。

当ブログはオフラインソロゲーのMOD&チート紹介がほぼメインになっており、MOD&チートのオフラインでの使用は自由ですがオンラインでは使用禁止と明言しています。
別のオンラインゲームにおいては個人が損害賠償を請求されている事例もあります。
参考:『フォートナイト』のチート少年、裁判になってもチートをやめられず

私も『フォールガイズ』のチート方法は把握してましたがもちろん未使用ですし、紹介すれば必ず使う人が出てくるので記事化はしないつもりでした。

しかし、今回のアプデによりアンチチートが導入され、チートを使えばBANされることも明確になっていい機会なので『フォールガイズ』にどんなチートがあったのか紹介します。
一応、BANされるまでもなく『フォールガイズ』のアプデにより今回紹介するチートは使えなくなってると思います。

関連記事:『Fall Guys』世界設定インタビュー翻訳「彼らはどこで何を食べどんな生活を送っているのか」

1.Cheat Engine

まずは当ブログおなじみのCheat Engine(CE)によるチート。
普段はCEの基本的な使い方として以下をリンクしてますが、「MODとチートの違い」を記載してるので気になる方は見てみてください。
関連記事:【完全版】Cheat Engineの使い方とインストールできない場合の注意点など

というわけでチートに必要なCheat Table(CT)は以下に公開されています。
[Release] Fall Guys Cheat Table

DLしてCTを適用すると以下のような画面になるようです。

CT画面。Value欄の数値を変更することでゲーム内に反映されるはず。

CT自体もアプデが進んで上画像にはない項目もあるようなので、説明書きのあるチート項目を解説します。実際に使ったわけではないので効果は違うかもしれません。

Speed Hacking:移動速度変更
- normalMaxSpeed (just you):自身の移動速度n倍
- rollingMaxSpeed (with ball):ボール転がし中の移動速度n倍
- carryMaxSpeed (with egg):卵運び中の移動速度n倍
- grabbingMaxSpeed (with player):掴み中移動速度n倍

Super Dive:スーパーダイブ
- diveForce (on ground):地上ダイブでの弾き力n倍
- airDiveForce (when jumping or in air):空中ダイブでの弾き力n倍

No Gravity/Super jump:重力ゼロ/大ジャンプ
- gravityScale:重力n倍(小数点倍にすれば大ジャンプできるはず)

Carry Drop Force:運び落下力
- carryNormalDropForce:運んだ卵の落下速度?n倍
- carryDiveDropForce:運んだ卵のダイブ落下速度?n倍

No Stun/Knockback:気絶なし/ノックバック
- anyCollisionStunForce = 0:壁の反発力なし?
- dynamicCollisionStunForce = 0:動く物体の反発力なし?

No Collision:衝突なし
- collisionPlayerToPlayerUnpinMultiplier = 0:プレイヤー同士の衝突で弾かれない
- fallOverAngle = 0:倒れ角度

Carry Tussle Chances:卵運び乱闘強化
- carryAlwaysLoseTussleWhenGrabbed = 0:卵運び中プレイヤーを掴むとすぐ卵を落とす

Grab Radius:掴み半径
- playerGrabDetectRadius (max value):掴み半径n倍

Grab Check Distance:掴み阻止距離?
- playerGrabCheckDistance (max value):他者から掴まれる距離?n倍

Grab Force:掴み力
- grabMaxForce (max value):掴み力n倍

Grab Break Time:掴み継続時間
- playerGrabBreakTime (max value):掴みブレイク時間n倍
- playerGrabBreakTimeJumpInfluence (max value):ジャンプによる掴みブレイク時間n倍

Super Grab:掴み力強化
- playerGrabDetectRadius = (max value):掴み半径
- playerGrabCheckDistance = (max value):他者から掴まれる距離?
- playerGrabberMaxForce = (max value):掴み力
- playerGrabBreakTime = (max value):掴みブレイク時間
- armLength = (max value):腕の長さn倍
- playerGrabCheckPredictionBase = (max value):掴まれ予測起点?
- playerGrabImmediateVelocityReduction = 0:掴み中の移動速度減少
- playerGrabberDragDirectionContribution = 1:掴まれ中の引っ張り方向無視?
- grabCooldown = 0:掴みクールダウン
- playerGrabRegrabDelay = 0:再掴み時のディレイなし
- playerGrabBreakTimeJumpInfluence = 0:ジャンプによる掴みブレイク時間
- forceReleaseRegrabCooldown = 0:掴み強制解除時の掴みクールダウン
- breakGrabAngle = 360:掴み角度全周囲
- playerGrabBreakSeparationForce = 0:掴みブレイク時に弾かれない
- playerGrabbeeInvulnerabilityWindow = 0:掴み中の無防備範囲なし

To be tank (credit: onra2):戦車になる(onra2さんによる設定)
- diveForce = 20
- playerGrabDetectRadius = 200000
- playerGrabCheckDistance = 200000
- playerGrabBreakSeparationForce = 0
- playerGrabRegrabDelay = 0
- playerGrabbeeInvulnerabilityWindow = 0
- playerGrabTimeOfArrival = 1
- playerGrabberMaxForce = 2
- stumbleBackAngle = 0
- fallOverAngle = 0
- collisionPlayerToPlayerUnpinMultiplier = 0
- minStunTime = 0
- maxGroundedStunTime = 0
- SmallImpactMinForceThreshold = 0
- MediumImpactMinForceThreshold = 0
- LargeImpactMinForceThreshold = 0
- objectGrabAdditionalForceScale = 99999
- objectGrabAdditionalPushForceScale = 300
- carryPickupDuration = 0
- carryAlwaysLoseTussleWhenGrabbed = 0
- anyCollisionStunForce = (max value)
- dynamicCollisionStunForce = (max value)

実際に使ってみないとどうなるか分からないものもありますが、シンプルなゲーム性とは裏腹に想像以上に多数のパラメータが存在することが分かります。

冒頭の記事では、チート検出機能の動作確認を行いながら徐々に検出閾値を下げていったとあり、例えば最初は移動速度やジャンプ力が変わってるプレイヤーを検出して、後から他のパラメータが変わってるプレイヤーも検出するみたいなことを行ったと推測します。
数値の変化を監視するだけなのでチーターを検出するのはとても簡単です。

2.Internal Cheat

一般的な呼び名ではないですが、ゲームに別のプログラムをインジェクション(挿入)してチートを可能にするツールです。
1項と同じページに公開されています。

DLしたファイルをインジェクションするとゲーム内にチートメニューをオーバーレイして表示できるようです。

チートメニュー画面。

チート側のアプデにより上画像にない項目もあるようなので、説明書きのあるチート項目を解説します。実際に使ったわけではないので効果は違うかもしれません。

GENERAL:全般
HOME » Hide Corner Text:HOMEキーでチートメニューの表示/非表示
DELETE » Panic Key (instantly closes game):DELETEキーでゲーム終了
END » Unhook Cheat (disable cheat, keep game alive):ENDキーで全チートオフ

VISUALS:画面表示系
F5 » Real Doors (Door Rush):F5キーで正解ドアが分かる(ドアダッシュ)
F6 » Real Path (Tip Toe):F6キーで正解の道が分かる(ヒヤヒヤロード)
F7 » Non-Jinxed Players:F7キーでジンクスなしで始まる(バッドラック)
F8 » All Platforms Visible (Perfect Match):F8キーでフルーツの柄が見える(パーフェクトマッチ)
F9 » Player with Tail (Final):F9キーでしっぽを持った状態で始まる(ロイヤルファンブル)

MOVEMENT:移動系
F1 » Fly Mode:F1キーで飛行し以下のチートが有効になる
Flying Speed:飛行速度
F2 » Speed Hack:F2キーで以下のチートが有効になる
Movement Speed (Default: 9.5):移動速度(初期値9.5)
Movement Speed when Carrying Item (Default: 8):卵運び中移動速度(初期値8)
Movement Speed when Grabbing (Default: 5):掴み中移動速度(初期値8)
F3 » Dive Boost:F3キーで以下のチートが有効になる
Normal Dive Boost (Default: 16.5):地上ダイブ強化(初期値16.5)
Air Dive Boost (Default: 7):空中ダイブ強化(初期値7)
F4 » Gravitation:F4キーで以下のチートが有効になる
Gravity Scale (Default: 1.5):重力(初期値1.5)

COLLISIONS:衝突系
Disable Stuns/Knockdowns:倒れない
Disable Object Collisions:物体に弾かれない
Disable Player to Player Collisions:プレイヤー同士で弾かれない
Disable Falling Down:落下しない

CARRYING GRAB ITEMS:
F10 » Item Drop Force:F10キーで以下のチートが有効になる
Normal Item Drop (Default: 50):運び物体の落下速度(初期値50)
Dive Item Drop (Default: 90):ダイブ中の運び物体の落下速度(初期値90)
F11 » Equal Tussle Chances When Grabbed:F11キーで掴まれても同じ反発力が発生する

GRABS:掴み系
F12 » Super Grab Feature:F12キーで以下のチートが有効になる
Grab Detect Radius (Default: 6):掴み半径(初期値6)
Grab Check Distance (Default: 2):掴み阻止距離(初期値2)
Grab Max Force (Default: 0.6):掴み力(初期値0.6)
Grab Break Time:掴みブレイク時間
Normal Time (Default: 1.2):通常時掴みブレイク時間(初期値1.2)
Jump Time (Default: 0.01):ジャンプ中掴みブレイク時間(初期値0.01)
Arm Length (Default: 1):腕の長さ(初期値1)
Grab Check Prediction Base (Default: 0.1):掴まれ予測起点?(初期値0.1)
Grab Immediate Velocity Reduction (Default: 0.5):掴みモーション中の低下速度(初期値0.5)
Grab Cooldown (Default: 0.5):掴みクールダウン(初期値0.5)
Regrab Delay (Default: 2):再掴み遅延(初期値2)←しっぽをすぐ取り返せないパラメータ?
Release Regrab Cooldown (Default: 1):再掴み解放のクールダウン(初期値1)
Break Grab Angle (Default: 75):掴みブレイク角度(初期値75)
Grab Separation Force (Default: 7):掴み分離力(初期値7)
Grabber Velocity (Default: 0.1):掴まれ中速度(初期値0.1)

こちらの方が多彩なチートが使えたようです。

チートはもちろんNGですが初期値が分かるのは参考になりますね。
例えば地上ダイブは空中ダイブより2倍以上強いと分かるのでサッカーでシュートする場合は地上ダイブした方がいいなどガチ勢の人は知っておくべきかもしれません。
とはいえ、今後のアプデで初期値が変わる可能性はあります。

他にもTrainerと呼ばれるゲームと同時に起動するだけでショートカットキーによりチートが使えるものもありますが、紹介した二つと比較してチート項目が少ない=使っていた人が少なそうなので省略します。

3.チーターは一掃されたのか?

多数のチーターがBANされましたが、こんなチート解説をしてしまってはまたチーターまみれになることを心配する方もいるかもしれません。

安心材料として実際どのくらいのチーターがBANされたのか確認してみましょう。

1項と2項で紹介したチートツールのDLページに行くとDL数が見れます。
執筆時点のユニークDL数(同一IPはカウントされない)は以下の通り。

Cheat Table:1908人
Internal Cheat:4921人
計6829人

もちろん両方DLした人もいるでしょうし、別のツールを使ってる人もいるかもしれませんがおおよそ7000人のチーターがいたということです。
余談ですが、Steam版売上700万本(20/8/26時点)に対して7000人、つまりオンラインゲームにおけるチーター割合が0.1%というのは感覚的にもズレてないと思います。

ここで冒頭のBANされた人数を見ると計7752人がBANされてます。
クラウン売買等で複数アカウントを使用している人もいたことを考慮するとほぼ一致します。

以上より執筆時点では全てのチーターがBANされたと言っても差し支えないでしょう。
BANされた人は2000円が無駄になっていい気味ですね。

解析すればチート自体は今後も可能だとは思いますが、100%検出されますしアンチチートも導入されたので今後はチートプレイ自体がほぼ不可能になってるはずです。

というわけで安心して『フォールガイズ』ライフを楽しみましょう!
-2020/9/17

↑いいね貰えると励みになります