見出し画像

ゲームデバッグで壁に当たり続けるという話は本当なのか

A.本当です。
というと少し語弊がありますが、実際にゲーム内の壁にひたすらキャラクターで当たり続けるチェックはあります。
その他にも色々なデバッグ内容があるので、その一部をご紹介しようと思います。

この記事のざっくり3行まとめ

・マップ上の壁をすり抜けてしまわないか確認する当たりチェックがある
・他にもグラフィックの見た目チェックやテキストチェック、フラグチェックなどゲームによってさまざまなチェックを行う
・基本的なチェック意外にテスターの腕、センスが問われるイレギュラーチェックがある

1.コリジョンチェック/マップチェック

ゲームデバッグでよく(?)例に出される壁に当たり続けるようなチェックです。
チェック目的はマップの壁や障害物などを操作キャラクターがすり抜けてマップ外へ移動してしまわないかの確認となります。
チェック名称はコリジョンチェックや当たりチェック、マップチェックなど言われたりします。
コリジョンとは、簡単に言うと「当たり判定」です。
ざっくり言うとマップの壁や障害物などはその見た目を表現しているテクスチャと実際の当たり判定を制御するコリジョンで構成されています。
仮にテクスチャがあるのにコリジョンが設定されていないと、見た目上は壁や障害物があるのに、キャラクターなどがそこをすり抜けてしまします。
逆にコリジョンが設定されているのにテクスチャが張られていないと、見た目上は何もないのにキャラクターが見えない壁や障害物に移動を阻まれてしまいます。
そういった見た目上の矛盾がないか、正しく移動範囲が設定されているかを確認するチェックがコリジョンチェック/マップチェックです。

2.データチェック

細かく書くと内容が多岐に渡り過ぎるため大きくまとめましたが、あらゆるデータの設定値が仕様通りになっているかのチェックです。
例えばRPGなどで存在するアイテムや武器、魔法などでは、対象の名称や売買する際の値段、回復量、上昇する攻撃力、防御力、効果内容、etc....
などなどあらゆるデータが正しく実装されているかを確認します。
いわゆるマスターデータと呼ばれるもので管理されているものは全てチェックすると思って差し支えないと思います。
地味で根気がいる作業ですが、仮に序盤で入手できる武器の攻撃力が一桁違っていたなどあった場合、ゲームバランスに大きく影響するので内容としてはとても重要なデバッグです。
(重要じゃないデバッグなんて存在しませんが…)

3.グラフィックチェック/デザインチェック

これも色んな名称で呼ばれたりしますが、いわゆるグラフィックの見た目のチェックとなります。
キャラクターなどの顔や衣装にテクスチャの抜けがないか、カメラを動かした際にマップ上のオブジェクトがチラつかないかなど確認します。
また、キャラクターのモーションによって不自然に衣装や持っている物などが体などに埋まらないか確認したりもします。
余談ですが、皆さんもたまにキャラクターが俗にTポーズといわれる両手を横に広げた状態になるバグを見かけたことはありませんか?
あれはキャラクターを作成する際などにデフォルトのポーズとして主にTポーズが使用されているのですが、ゲーム内で正しいモーションが呼び出されなかった、あるいは実装されていなかった場合に、そのデフォルトのポーズが読み込まれてしまうため起きる現象です。

4.テキストチェック

先述したデータチェックに分類されたりもしますが、ここでは分けて紹介します。
主にゲーム内に登場する文章のチェックとなります。
システムメッセージやキャラクターのセリフ、アイテムの説明などです。
誤字脱字、衍字がないかのチェックや、メッセージウィンドウ内にちゃんとテキストが収まっているか、不自然な改行がされていないか、行頭/行末禁則文字がないかなど確認します。
場合によっては内容自体のチェックも行います。
例えばアイテムの説明で攻撃力を上昇させるアイテムなのに防御力を上昇させると書いてあったり、進行上まだ知らないはずの情報をキャラクターが喋っていたりということが稀にあるので、そういった矛盾がないか確認したりします。

5.フラグチェック

ゲームの進行が正しく行われるかのチェックです。
ゲームが最初から最後まで進行するか確認するいわゆる「通しチェック」と並行して行ったりもします。
設定されたフラグが正しく機能しているか、例えば特定のアイテムの所持した状態で特定のマップへ遷移するとイベントが発生する、といったフラグが正しく機能しているかをチェックします。
複数のフラグをユーザーが任意の順番で踏めるようなゲーム仕様の場合は、すべての順番のパターンでゲームが滞りなく進行するかのチェックを行ったりもします。
仮に特定のパターンでゲームを進行した際、次に進むためのイベント発生に必要なアイテムが入手不可能な状態となった場合、それ以上ゲームを進めることが不可能となるいわゆる「詰み」となってしまうこともあるので、重要なチェックです。

6.イレギュラーチェック

ここまで紹介したものは基本的なデバッグに該当するのですが、それ以外にもあえて「バグを発生させる」ことを目的としたチェックがあります。
それがイレギュラーチェックと呼ばれるものです。
このチェックは、具体的にどういったチェックをするのかといった説明が少し難しいです。
端的に言うと、そのゲームでできることは全てやる、となります。
簡単なものではボタン連打や、キャンセルと決定の同時入力といった複数操作の同時実行などがあります。
その他には、強制負けイベントで敵に倒されるのではなく自滅してみたり、逆に敵を倒してみたり、アイテムを上限以上入手してオーバーフローを狙ってみたり、所持金上限を超える状態でアイテムを売ってみたり、本来登れないところをオブジェクトやキャラクターの特定モーションを利用して登ってみたり、etc....
ありとあらゆる状況、方法でバグが発生しないかを確認する作業となります。
ある程度ゲーム内容によって想定されるパターン化されたイレギュラーチェックはあるのですが、同じゲームが二つとない以上完全にチェック内容を想定するのはほぼ不可能です。
なので、このイレギュラーチェックはいかにバグを発生させるかデバッガーの腕の見せ所とも言えます。
(あまり滅茶苦茶やり過ぎるとエンジニアサイドから渋い顔されるのはここだけの話)

まとめ

ここでご紹介したのはあくまでデバッグ内容の一部です。
ゲームジャンル、仕様によってデバッグ内容は変わりますし、多岐に渡ります。
技術の発展に伴いゲームで実現できること、表現できることが増え、デバッグも複雑化しています。
それに伴い、残念なことではありますが、全てのバグを取りきることはかなり難しくなったと思います。
ですが、エンジニアやデバッガー含め開発陣営も当然ながらバグが残らないようにゲーム開発に尽力しているのは間違いないです。

この記事が気に入ったらサポートをしてみませんか?