能力【デバッグ・コンソール】
終わらないデスマの最中、意識が途切れたシステムエンジニアの鈴木。次に目覚めると、自らを女神と名乗る美女の前にいた。「この世界、バグが多くて…。修正をお願いします!」
石畳の広場に降り立った鈴木は、まず状況を整理することから始めた。周囲を歩く人々は、麻や革で作られた素朴な服を身にまとい、腰には剣を下げた者もいる。まさにファンタジーの世界そのものだ。そして、自分の視界の右下には、半透明の黒いウィンドウ、【デバッグ・コンソール】が常に表示されている。指で触れることはできないが、意識を集中させることで、思考したコマンドを直接入力できるようだった。
試しにhelpと入力してみる。すると、ウィンドウ内に使用可能なコマンドの一覧がずらりと表示された。show_status(ステータス表示)、analyze_object(オブジェクト解析)、edit_parameter(パラメータ編集)…。まるで、開発者向けのデバッグモードだ。どうやらあの女神の言葉に嘘はなかったらしい。
「さて、最初の仕事はどこにあるか…」
鈴木が街の様子を観察し始めると、すぐに異様な雰囲気に気づいた。人々はどこか怯えた様子で空を見上げ、衛兵らしき屈強な男たちが、広場の一角を取り囲むようにして慌ただしく走り回っている。野次馬根性でその人だかりに近づいてみると、鈴木は信じられない光景を目の当たりにした。
広場の中央にある美しい噴水。その周辺が、おびただしい数の緑色のスライムで埋め尽くされていたのだ。スライムは一匹一匹は弱そうだが、その数は数百、いや千を超えているかもしれない。衛兵たちが剣で斬りつけ、魔法使いが炎で焼き払う。しかし、スライムは倒されると、ポン、と軽い音を立てて二匹に分裂するのだ。倒せば倒すほど、その数は倍々に増えていく。まさしく、悪夢のような光景だった。
「なるほど、これが女神の言っていたバグか」
鈴木はすぐに状況を理解した。これは、ゲームでたまに見かける「無限増殖バグ」だ。衛兵たちの物理的な攻撃では、根本的な解決にはならない。原因は、このスライムというオブジェクトに設定されたプログラムそのものにあるはずだ。
鈴木は人混みから少し離れ、意識を集中させた。
「analyze_object 'slime_001'」
彼の思考コマンドに応じ、【デバッグ・コンソール】に膨大な量のテキストデータが流れ始める。それは、スライムという存在を構成するプログラムのソースコードだった。
object_name: Slime
HP: 10
Attack: 1
Defense: 5
Special_ability: Divide
on_death_trigger: {
create_object('Slime', self.position);
create_object('Slime', self.position);
}
respawn_time: 0
「…あった」
鈴木は問題の箇所をすぐに見つけ出した。死んだ時のトリガーとして、自分自身を二体生成する、という処理が組まれている。そして極めつけは、最後の行だ。respawn_time、つまり再出現までの時間が0秒に設定されている。これでは倒された瞬間に即座に二匹が再出現する。無限ループだ。なんと杜撰な設計だろうか。
「ひどいコードだな…。まあ、修正は簡単だ」
鈴木は口元に皮肉な笑みを浮かべた。前世で嫌というほど見てきた、他人の書いた稚拙なコードだ。彼はコンソールに意識を集中させ、この世界で最初の「修正パッチ」を打ち込み始めた。これは、もはや仕事ではない。彼のプライドをかけた、バグとの戦いの始まりだった。