ゲームデバッグ
LABメインページに戻る
どんなゲームでもリリースまでに何ヶ月ものテストが必要ですが、ロールプレイングゲーム(RPG)ではとりわけ丁寧な作業が必要となります。
RPGの多くはファンタジーやSFの世界を舞台とし、プレイヤーは主人公のキャラクターを操作します。典型的なRPGは高度なカスタマイズ機能、無数のアイテム、広大オープンワールドを含みます。これらの機能が合わさると、品質保証(QA)チームにとっての負担は非常に大きなものとなります。大規模多人数オンライン(MMO)RPGでは言うまでもありません。
要素の数が非常に多いため、RPGでは実験的なテストと計画的なテストの両方が必要になります。
ゲームの世界
典型的なRPGは、完全なオープンワールドかハブ形式のオープンワールドのどちらかを採用しているため、多くのテストが要求されます。コリジョン、テクスチャ、ライティング、レンダリングに問題がないか定期的に安定してチェックを行うためには相当な人数のテスターが必要になります。これは最終チェックやテストの中の一段階ではありません。オープンワールドのバグをなくすために常時必要なプロセスです。
上記の問題はあらゆる場所に潜んでおり、見落とせばプレイヤーの目に付くことになります。だからこそテクスチャ、レンダリング、ライティングの問題はバグの中でも最悪な部類だと言えます。目にした人にはそれがバグだと一目で分かり、しかも再現や記録が容易にできてしまうからです。幸い、これらのバグは(一部の状況を除き)悪用されることは稀で、ゲームの進行を妨げることはありません。
ただしコリジョンはストレスの要因となり悪用が可能です。コリジョンの問題は軽微なものもあれば、プレイヤーが建物の壁をすり抜けてミッションの筋書きを逸脱してしまうような重大なものもあります。広大なオープンワールド中に散らばる何千もの建物をテストするだけでも大変な作業です!
アイテム
アイテムはゲームのパフォーマンスに影響を与えます。パフォーマンスの問題はオープンワールドRPGが抱える課題の一つです。ゲームはスムーズに動かなければいけません。プレイヤーはそれを当然だと考えています。オープンワールドで安定したパフォーマンスを提供するためには徹底的なテストが不可欠です。そのためにはRPGの持つ全ての要素の組み合わせを考慮し、ゲームの世界の中でテストする必要があります。
RPGではポーションからペットに至るまで多種多様なアイテムが登場します。QAチームではこれらをチェックするために細かく時間のかかる作業が発生します。アイテムが完全に機能することを確かめるには、全てのアイテムの効果と機能を(手動、あるいは自動で)個別にテストしなければなりません。さらにアイテム同士の相互作用をチェックするにはより一層注意深いテストが必要となります。アイテム数によってはLQAチームもチェックに多くの時間を割くことになります。
アイテム数が膨大だと全体の一貫性を保つためにバランス調整が必要になります。残念ながら、実装前に全てのアイテムのバランスを取ることは不可能です。バランスチェックは開発と並行して行われ、新しいアイテムやアビリティが追加される度に、全ての組み合わせチェックすることになります。RPGのアイテムの組み合わせは天文学的な数に上り、2つのアイテムの組をチェックしただけでは不十分です。ありとあらゆる組み合わせをチェックし、例外的な問題が残っていないかチェックするのは非常に時間がかかります。
プレイヤーキャラクター
典型的なRPGではキャラクターのカスタマイズが可能となっているため、キャラクターのステータスチェックが発生します。また、衣服や外見をカスタマイズできるため、個々の衣服のチェックも必要になります。プレイヤーキャラクターが正常に機能することはRPGが成功する上で必須の条件です。自分でカスタマイズしたキャラクターは、出来合いの主人公よりも親近感が湧きやすいからです。
このテストは、部分的にアイテムのチェックと同じ手法を用います。衣服/鎧の多くはキャラクターのステータスを変更するからです。ただし、これらのアイテムはキャラクターの姿を変えるものなので、正常に表示されることを確認するためにアイテムごとにレンダリングチェックが必要になります。単純に聞こえるかもしれませんが、複数の衣服アイテムを重ねた時に正常に表示されるか、全てのメニューでプレイヤーキャラクターが正常に表示されるかなど、アイテムと同様にテストしなければならない例外的なケースは多くあります。
NPCと敵
RPGには多種多様なNPC(ノンプレイヤーキャラクター)や敵が登場し、それぞれ違ったセリフ、振る舞い、機能、外見を持っています。
基本的なチェックでは、NPCと敵が正常に表示され描画されているか、干渉するオブジェクトにぶつかり、そうでないオブジェクトを通過しているか、名前やステータスが正しく設定されているかなどを確認します。さらに、AIの振る舞いをチェックすることも重要です。この工程はQAと開発チームの間で何度もやり取りが発生し、大きな負担となることもあります。
AIのテストは正しい手順を踏み、注意深く行えばやりがいのある作業です。機能性の面でもそうですが、時にAIの振る舞いが笑わせてくれることもあるからです。敵のキャラクターが意味不明な行動を取っているのを見た経験は誰にでもあるでしょう。ひどい場合には味方のNPCさえそんな行動を取ることがあります! キャラクターが壁をすり抜けたり、不自然な振る舞いをしているのを見たら、プレイヤーの没入感は台無しです。それだけではありません。テストの際に戦闘の難易度を考慮に入れないと、没入感を損なう一因となります。現在のレベルでは難しすぎる戦闘に直面すると、プレイヤーの多くはストレスを感じたり没入感を失うことになります。特にRPGではプレイヤーが望むタイミングで戦闘を始められることが多いため、不利な戦いを強いられていると感じるとプレイヤーはゲームを楽しめなくなります。プレイヤーはストレスを嫌うものであり、不要なストレス要因はなるべく取り除くべきでしょう。QAチームは全ての戦闘を何度も繰り返し経験することになります。ゲームの楽しさ、難易度、馴染みやすさについて質問するなら最適な相手となるでしょう。
しかし、RPGの常で、チェックが必要なのは戦闘だけではありません。NPCには非戦闘時の行動パターンがあり、こちらも徹底的なテストが必要です。戦闘中に壁に向かって撃っているのは論外ですが、通常時にNPCが壁に向かって歩いているのも避けたいものです。こうした行動パターンはゲームにリアリティを与えるもので、目に見えるバグがあれば没入感は一気に冷めてしまいます。
メニューとUI
アイテムと同様に、RPGには多くのメニューがあります。カスタマイズメニュー、マップ、クラフト画面では多くのオプションがあり、その分チェックの項目も多くなります。幸いメニューはアイテムや衣服と違い、「複数のアイテムを同時に装備した時」のように特定の条件下で発生するの問題は基本的に起こりません。ただしそのようなメニューを含む場合もあります。
RPGのメニューとUIが他のジャンルと比べてとりわけ複雑というわけではありません。問題なのはメニュー、UI、テキストストリングの量が膨大で、テストの労力が大きいことです。言語、機能の両面で一貫性のあるメニューを提供することはプレイヤーの体験にとって非常に重要になります。近頃もメニューのチェックが見落とされ、メニューごとに操作のボタンが異なるという事例がありました。プレイヤーは次第に慣れていきますが、手を抜いている、あるいは操作の一貫性に十分な注意を払っていないと受け取られる可能性はあります。
ストーリー分岐とランダムイベント
RPGではしばしばプレイヤーの選択によってストーリーが分岐したり、ランダムなイベントが発生したりします。分岐があると必要なテストは増え、ゲーム全体を確認するために複数回プレイする必要が生まれます。分岐によってセリフが微妙に変化したり、登場するキャラクターが変わったり、エリア全体が変化したり、様々な可能性があります。全ての選択肢を確かめるため、言語と機能の両面で徹底的なテストが必要になります。ストーリーの選択はその後のゲームの展開に大きな影響を与えるので、チームはこの問題に優先的に対処するべきです。ストーリーとゲーム上の選択によってさらなる組み合わせが発生するため、さらにテストの負担が増加します。
ランダムイベントが及ぼす影響は少し異なります。ランダムイベントでは必ずしも組み合わせが増えることはありませんが、不確定要素のためにテストが難しくなることがあります。ランダムイベントはNPCのセリフからワールドイベントまで様々な種類があり、言語と機能の両面で注意を払う必要があります。
これら全ての問題を時間をかけてテストすることはタイトル、パブリッシャー、デベロッパーにとって非常に重要です。ゲームにバグが見つかれば関わった全員の評価を傷つけることになるからです。人気RPGにもバグが見つかることは決して珍しくありません。これらのゲームは容量が大きく、組み合わせも膨大だからです。しかしだからこそRPGというジャンルはテストの品質の高さ、プレイヤーの注意深さ、そしてPRGのブランドを証明するのには持って来いです。高い品質のRPGをリリースすれば即座にプレイヤーの心をつかみ、好意的な口コミ、報道が期待できます。バグが多くても愛されるRPGは存在しますが、それはごく稀な例外です。
重要なのはチェックの時間を確保することです。開発の末期に急いでテストすると、所要時間も長くなり、リソースや社員に悪影響を及ぼします。可能な限りスケジュールに余裕を持つことが肝心です。最後までチェックを残さないことが、プロジェクトの品質を高めるカギとなります。チェックに時間を割けば、サポートしている全ての言語で品質が顕著に上がります。言語ごとに同じ品質を保証することは、RPGだけでなく全てのゲームにおいて大切です。
まとめると、RPGをテストする際の最大の課題は文脈の深さと組み合わせの膨大さです。例えばFPSではキャラクターが1人、武器が30、アイテムがいくつか、アビリティが2つあるとすると、RPGではプレイヤーキャラクターが複数、何百もの武器、数えきれないアイテム、その他の要因によって変化する多数のアビリティが存在します。これらの組み合わせと相互作用のために、リリースにたどり着くまでの間に必要なテスト時間は膨大なものとなります。ですからRPGのデベロッパーは可能な限り早い段階で、サードパーティのテストパートナーとの協力を含め、テストにかかる負担とテスト戦略を開発サイクルに組み込むことが求められます。