「ゲームプログラミング/デバッグ」の版間の差分

削除された内容 追加された内容
1,611 行
 
=== シナリオなどのデバッグ ===
==== 概要 ====
まず、一口に「シナリオ系のバグ」と言っても、下記のように幾つかの種類があります。
なお、改善すべき仕様が、キャラクターの会話文などの表現の問題である場合、たとえば、「この性格のキャラクターが、こういう事を言うのはオカシイ」ような問題の場合なら、
:大元の脚本自体に矛盾があり、ストーリーなどが前半と後半で矛盾しているような場合、
:脚本のストーリーには問題なさそうだが、ゲーム作成時のフラグ管理などの対応用シナリオの作成漏れや内容ミス、
などです。
 
実際には、上の2種類のバグが融合したような、シナリオバグもあります。もしかしたら、だいたいソレかもしれません。
 
 
ともかくゲームの場合、一般の小説やマンガとは違い、プレイの結果によるフラグ分岐によってストーリーが変化するという性質があります。
 
このため、上記のように、フラグ分岐の数が増えたら、ゲーム内イベントなどの小ストーリーも追加して新たに作成して加える必要があります。
 
 
一つのゲーム内には、イベントがいくつもあるので、ときどき、イベント用の小シナリオ作成時にミスとして、そもそものフラグ分岐に対応し忘れたために、そもそもの分岐先シナリオが欠けてしまう場合があります。
 
あるいは、分岐先の対応シナリオそのものは存在しているが、しかし実際のフラグ内容と、分岐シナリオのメッセージ内容がミスって不整合になっている、などのような事例です。
 
 
==== 脚本自体のバグの場合 ====
なお仮に、改善すべき仕様シナリオバグの種類、脚本自体のバグだとしましょう。もし、キャラクターの会話文などの表現の問題である場合、たとえば、「この性格のキャラクターが、こういう事を言うのはオカシイ」ような問題の場合なら、
 
改善案の提案では、具体的なセリフは書かないでおくほうが、著作権などの理由で安全な場合もあります。
1,644 ⟶ 1,663行目:
このため、シナリオ変更案の採用の有無の権限は、シナリオライターおよび開発リーダーなどに(採用の権限を)委ねましょう。また、けっしてシナリオライターを飛び越して開発リーダーに直訴・越訴するような事は断じて、やめましょう。
 
このような直訴・越訴のようなトラブルを防ぐ方法として、たとえば、最初から社内公開のサーバーで仕様変更案を受け付けるとかのように社内公開の場でのみシナリオ変更案を受け付けるなど、そういった工夫などをすると良いかもしれません。ともかく、社内公開されている場であれば良いので、少人数の企業なら社内ミーティングなどの場での受付でも構わないでしょう。そこらへんは、そのゲーム会社や同人サークルなどの実情に合わせて上手くアレンジすればよいと思います
 
 
1,684 ⟶ 1,703行目:
 
 
==== どんな矛盾がシナリオ脚本のバグか? ====
ゲームに限らずマンガやアニメも含めた娯楽フィクションのシナリオの場合、現実とは違って、意図的に矛盾を起こしたシナリオを使う場合があります。たとえばギャグ作品なんか、わざとトークの前後で矛盾をさせる事もよくあります。落語なども同様でしょう。
 
1,731 ⟶ 1,750行目:
諺(ことわざ)「将を射んと欲せば、まず馬を射よ」のようなものです。
 
==== レアケース対応漏れなのシナリオバグのすか?し方 ====
レアケース対応漏れなどといったシナリオ作成漏れのバグの探査方法は、仕様書があればそれで見つけるのも良いですが、他にもゲーム実機の実際のテストプレイなどで見つかることも多いです。
 
 
準備のため、テスターはまず、そのゲームの想定するシナリオを通しプレイなどでクリアして、いったんシナリオを把握します。その後、フリープレイ時やテストプレイ時などに、ついでにシナリオ上の矛盾点が見つかる場合もあります。
 
イベント進行などの状況によって会話などのテキストメッセージ内容が変わりゲーム作品も多くあります。もしゲーム中の説明文や会話文などのメッセージ文の内容と、イベント進行状況が組み合っていなかったりする場合には、バグとなります。
 
つまり、シナリオ作成時のミスで、分岐先シナリオの作成漏れが出てくる場合もあります。
 
このようなメッセージ内容のバグは、テスターが実際にゲームのシナリオを把握していないと、そもそも「これはバグである」して気づかないのです。
 
 
さて、このイベント進行状況とメッセージ文の不整合により、ときどき、作品テーマに反する誤解をプレイヤーに与えてしまう場合があるのです。
 
たとえば、上述(いくつか前段落の例での)ボブとクレアの恋人関係の例なら、ストーリー前半でクレアが主人公の仲間になっているのに、もしボブのメッセージ文がストーリー前半でのクレアのパーティ加入に対応してなかったら(もしフラグ管理ミスでストーリー中盤以降からしかクレア加入の場合にしかボブ会話文のフラグ分岐が対応してなかったら)、あたかもボブが恋人クレアをガン無視している(←フラグ上ではクレアが未加入なので. )かのようにプレイヤーに誤解を与えてしまいかねず、ボブとクレアが不仲になったかのように誤解されかねない・・・、というワケです。
 
たとえば、クレアが仲間になる条件が、加入条件になっている中盤ボス(レベルはストーリー中盤相当)を倒すことだとして、一般的なプレイヤ-はゲーム中盤にそのボスを倒すので、クレアを仲間にするのも中盤になるプレイヤーが多いとしましょう。