デバッガーのノアです!
デバッガーの視点で色んなゲームのバグについてのお話を書いていこうと思います。
今回はまず、バグとは一体なんなのかというよくよく考えると哲学的なのか当たり前のことなのかよくわからないテーマから徒然書いていこうと思います!
デジタル、アナログともにゲーム制作を行っている方の何か力になれば幸いです!
バグの正体
そもそもバグとは何なのか。それは開発者の想定外のモノと言えると思います。
マリオで例えるなら、こんな感じ。
開発者は「Aボタンでジャンプ」「Bボタンでダッシュ」という挙動になる想定でゲームを作りましたが、「Aボタンでダッシュ」「Bボタンでジャンプ」という挙動になってしまっていました。
マリオと言えばAでジャンプ、Bでダッシュという定番のフレーズ。しかし何らかの手違いでボタンの割り当てが逆になってしまっていました。
めちゃくちゃ極端な例ですが、これがバグの正体、バグの定義です。
どんなに見事に動いていても、開発者が想定していないモノはバグと言って良いと私は思っています。
バグだと気付けない
しかし、もし「Aダッシュ」「Bジャンプ」という仕様のままゲームが世に出たとしても、プレイヤーはこれはバグとは気づかないでしょう。そういうゲームだと思ってしまう。
デバッガーも同じです。今でこそ「Aでジャンプ」「Bでダッシュ」が定着していますが、マリオが存在しなかった時代にこの操作でテストプレイして欲しいと渡されても、なるほどそういうボタン配置なのねと納得するでしょう。
勘のいいデバッガーがようやっと「これ逆の方が操作しやすくない?」と気付く程度でしょうし、その気付きも「開発者の人に失礼かもな」と思って封殺されてしまうケースもあるでしょう。
開発者の想定や意図はデバッガーやプレイヤーは知る術がないんです。
では、どうやってそれらを防げばいいのか。その為にあるのが仕様書です。
仕様書は大事
仕様書、つまりゲームの設計図ですね。
Aボタンを押すとどうなる、Bボタンを押すとこうなる、ゴールするとこうなる、という色んな開発者が想定している挙動のまとめのことです。
これらがあれば、デバッガーは答え合わせができるようになります。
ダイレクトにAジャンプ、Bダッシュと書かれていれば当然分かりますし、コントローラの絵が書かれててどちらを押したらどうなる、みたいなことが書かれていても伝わります。
BダッシュしながらAジャンプでダッシュジャンプ!なんて書かれてれば、その操作がよりやりやすいボタン配置の方がいいよね、なんて気付きにもつながります。
事細かに書かれていなくても、企画書のようなものでも、大まかなゲームの狙いや流れが書かれた端書きのようなものでも、開発者の頭の中が見える化されたモノというのは、デバッガーにとっては大変ありがたい存在です。
でも、開発してると仕様書なんて書いてる時間は無いですよね。開発中に挙動が変わる、ボタン配置が変わるなんて全然ある話です。
バグを無くすのはほぼ不可能
バグとは開発者の想定外のモノであり、それをデバッガーが全て気付くなんていうのは現実的ではないでしょう。
故に、世の中にバグのないゲームなんて存在しないというのが私の持論です。
昨今のデジタルゲームは複雑化、大規模化していますし、その傾向はより顕著でしょう。
それでも神経を研ぎ澄ませ、仕様書を熟読し、可能な限りバグの少ないゲームを作る手伝いをするのが、ゲームデバッガーというお仕事です。
まとめ
バグとは開発者が想定していなかった挙動のことである。
しかしデバッガーやプレイヤーは、どこまでが開発者が想定した挙動なのかを知ることができない。
知る術は仕様書などゲーム外の部分へ開発者がアウトプットしたものに頼る必要があるが、それも限界がある。
ゆえに、ゲームのバグは必ず残る。しかし可能な限り残さないように努力するのがデバッガーである。
以上!何かデバッガー視点で聞いてみたいお話や、このゲームのバグの解説をして欲しいなどありましたらコメントまたはTwitterの方でDMやリプライを頂けますと幸いです!
コメント