real#4
ようやく操作にも慣れ、村山も調子づいて来た。
普段の冷静さを取り戻せば、幻覚も気にならなくなった。どうやら集中力を欠くと引き込まれるようだ。
(一体この機械はどういう構造になっているんだろう)
ハードは全くわからない。
もちろんソフトもよくわかっていない。
ぼんやりと認知したイメージでは、それぞれが別の場所に両端が固定されているたくさんの紐の集団がソフトだった。
そしてそれらには途中で何カ所か論理的なもつれがあり、それを一つ一つ解いていくのが彼らのバグ取りの基本的ルールのようである。
当初彼は、二つの方法を試そうと考えた。
一つは強制終了だ。
だが自分の知識ではどれが三人のアイデンティテイ情報に繋がる線かが全くわからず、下手をすると大惨事を引き起こすだろうことだけがわかった。
そもそも普通のバグ取りでも、紐を切ってしまうと後で修復が不可能になるため、かなり気を遣わねばならない。
切っていいものと悪いものの区別がつかない以上は全て切らないようにするしかなかった。
強制終了を諦めた村山は、次に中にいる三人に言語で彼の意志を伝えようとした。
だが、登場人物の性格、台詞は一定のルールに従っているが選択肢は莫大で、ゲーマーのアイデンティティと密接に結びついており、村山の言葉が正確に伝わる、あるいはその台詞を使ってくれる可能性を上げる方法が見つからない。
唯一、可能性のありそうなのはヘルプ機能だったが、これはかなりもつれた糸の向こう側にあるので、そこまで行きつくには時間が必要だったし、高津たちがその質問をしてくれるかどうかに状況を委ねねばならない。
(……これは大変だな)
そんな風に少しずつだが状況がわかってくると、逆に彼らの叡智が彼の理解の外にあるということが徐々に思い知らされてくる。
彼らの機械の内部は想像を絶するほど多くの演算、データ蓄積が同時並行で行われていた。それらはそれぞれが独自に演算を行いながら、しかも柔軟にそれらの情報を統合する。
そして全体としての機能は有機的で、必要とあらば足りない部分を他で補い、たとえ隅の方で村山がこそこそ何かをやっていようと、彼がいじっている周辺をちゃんと迂回しながら必要な情報をゲーマーに送るのだ。
また、彼が直接ゲーム機に接続されているため、キーボード入力の必要がない。
思いつきを次々と言語に訳すだけで、立派なプログラムができるのだ。
そもそも彼らのプログラム言語の概念は村山の常識とは違っている。
機械語に訳さなくても、ソースプログラムをそのままの形で機械は普通に理解していた。
ハードが読みやすいようなアルゴリズムを考える必要もなく、アナログな感じで後でループを挟んでも文句一つ言わずに作業する。
(すごすぎる……)
だが、そんなことに当初素直に感動していた彼も、徐々にその至れり尽くせりのシステムこそが、この粗悪ソフトを生む大きな要因になったのではと疑い始めた。
そもそも地球ではあまりひどいソフトだと機械が読んでくれないので、そんなものが日の目を見ることはあまりない。
だがこのハードならある程度いい加減なものでも、何とか動くように勝手に機械の方で考えてくれる。
もちろん村山とて、このソフトの中身を完全にわかっている訳ではない。
中には意味不明のコードや、何をやっているのか全くわからないプログラムなんかも多数ある。
だが接触している間に彼はこのソフトの作者が単数で、ひどくルーズな性格であることを見抜いた。
ユーザーに対する思いやりがないし、第一何となくプログラムの品が悪い。
また、ユーザーの好みのパターンを自動的に引き出すと言えば聞こえがいいが、要するにそれはストーリーをユーザーの知識から拝借する、つまり創造性が皆無ということだ。
(こんなに凄い機械を使っているくせに……)
ほとんど犯罪だと彼は憤慨した。
(……さて)
とりあえず村山はその広いエリアをおおまかに百分割して、止めてもソフトの実行にさほど影響の出ない割合を弾き出した。
そしてそれが十九分の一と出たので、順番に五個のエリアを超高速スクロールさせ、学習ソフトのトラブルシューティングに載っている懸案を発見したら付箋をつけるよう指示する。
(ファジーも善し悪しだ)
回答欄には、「その場合はサポートセンターにお訪ね下さい」いう表現があまりに多い。
FAQにその表現は相応しくないように村山には思えたが、ペンギンいわく、同じ症状でもそのハードやソフトや使用者によってバグの場所も理由も微妙に(時には甚だしく)違うため、サポートセンターも個別対応にならざるを得ないとのことだった。
(どっから取りかかろうか)
もちろん、できることなら「一度死んだら生き返らない」というミスを最初に直したかったが、これは相当複雑な要因が複合されて起こっているようだったので後に回す。
もつれた糸を解くには、まずとっかかり易いところから初めて、徐々に核心に迫っていかねばならないようだ。
(……そろそろ最初のエリアが終わったか)
第二エリアをスクロールさせている間に、彼はその付箋のついた場所を確認し、誤りを訂正しながら前に進む。
しかし、予定以上にその作業には時間を食った。
付箋がついているのに何が間違っているのかわからない箇所があるのだ。
もちろんヘルプと呼ばれる質問応答型検索システムが学習ソフトの付録についてはいたが、検索項目を開いても本当に知りたいことはなく、ピントのずれたことしか載っていない。
載っていたとしても、その辞書の文言にわからない単語があって次々調べていくと、結局元の質問に戻ってきたりする。
それに村山が必要としている基本情報は、エンジニアなら当然わかっていると見なされているのか掲載されていないことすらあった。
仕方なしに彼は今ひとつわからないものには赤い付箋をつけて先へと進む。やっているうちにわからなかったことが判明することもままあった。
(なるほど、な)
ある程度基本的知識を得た段階で、彼は発見した間違いの内容を一旦整理してみる。
するとそれははっきりといくつかに分類できることがわかった。
彼は早速、パターン別に指示書を造り、次いで自動修正プログラムの雛形も組む。
そして端から順番に走るように命令した。
(……で、赤の付箋をどうするか、だ)
彼は少し思案をした。それらがどういう命令なのかがわからないと何ともしようがない。
(そいつらも五十個程度溜まったら、抽出してパターン分類して、どっかに仮想空間を造って実験的に走らせるか)
村山はプログラムが順調に走っているかを再度確認した後、一旦機械から手を離した。
暁と夕貴の部屋は横長の八畳間で、二段ベッドが短辺に、二人の机が横並びで長辺にある。多少の広所恐怖が残っていたためなのか何かしらコックピット的な感じがあるからか、彼はベッドと机の間の狭い隙間が心地よく、そこに入り込んで作業にいそしんでいた。
「へええ……なるほど、地球ではそんなイベントがあるわけですか」
村山はそんな彼に背を向けてベッドに腰掛けた暁と雑談しているペンギンの背中を指で突く。
「きえっ!」
ペンギンは五センチばかり跳び上がってから、後ろを振り向いた。
「な、何ですか、急に。ああ、びっくりした」
「さっきの件、どうなったかと思って」
村山は渋るペンギンに、サポートセンターと直接話ができるように交渉して欲しいと頼んでいたのだ。
「ああ、駄目でした」
あっさり言われて村山は首をかしげる。
「どうして?」
「どうやら今回のことはサポートセンターのあずかり知らぬ事として処理されているようです。それなのに完全録音システムを取っているオペレーターに連絡するなんて、飛んで火にいる夏の虫じゃないですか。我々が今、法すれすれのところにいるってこと、お忘れなきよう」
知らない間に犯罪者にされていた村山は腕を組んだ。
「じゃあ、君が電話していた相手と話をさせてくれ。そこは録音はないんだろ?」
「私が電話したのは部長クラスですから、今どきのソフトの事なんて全然わかってやしませんよ」
「じゃあ、その人に圧力をかけて、俺とエンジニアが話をできるように取りはからってくれ」
「そんなことはますます無理です。あくまでも秘密裏にということで私は鍵や技術者向けの学習ソフトも借りられたのです」
ペンギンはぷうっと頬を膨らませた。
「そもそもエンジニアに全てを話すということは、一体誰が鍵を貴方に渡せとサポートセンターを脅迫したのかということが世間に公になるということです。そうしたら私の身の破滅ですよ」
「しかし、そうしないと中の三人は死んでしまうんだろ? これだけ成熟している君たちの社会で、人命がそれ以外のことよりも下位に回されるなど考えられない」
するとペンギンは威嚇するように、腰らしき場所に手を当てた。
「いいですか、穏便に事を進めているのにはそれなりの訳があります。大体、私が貴方のお手伝いをしているのは、貴方が仲間を救うために行っている献身的な努力に感動したからで、だからこそ私は考えられる策のうち、最も貴方のお友達が助かる可能性の高い方法を選択しているのです」
ペンギンの声のトーンが上がった。
「もし、私が原住民の命を救うために貴方に便宜を図りたい、あるいはそれなりの地位のある人間を連れてきて方策を考えるなんてことを公に依頼したらどうなると思ってます? ソフト会社はそんな事実はないと事件をうやむやにするかもしれないし、そうならなくても、世論を喚起して原住民を救うための保護法を新たに制定するなんて方法を採らざる得なくなります。そしたら最短でも法制定から施行まで二地球年はかかり、残るのは次に同様の事件が起こった時に、原住民の命を優先するという法律制定に貢献した名誉ある三つの死体が……」
「わ、わかった、俺が悪かった」
人の話を遮るのは悪いと思ったが、まくしたてるペンギンの言葉には降参した。
「……なんとか一人でやってみる」
「頑張って下さい、貴方ならきっとできますよ」
無責任な激励を背に、村山は再び箱に手を当てた。
すうっと落下するような感覚。そして宇宙空間のような頼りなさ。
再びその場所に戻った彼は、ひとわたり全体を見回した。まださっきのプログラムは走ったまんまである。その他に異常はなさそうだが……
「?」
違和感を感じ、彼はじっとプログラムを見つめた。そして驚愕する。
(しまった!)
さっき指示した事を演算装置は黙々とやり続けていたが、どうやらプログラムを書いている途中に彼は余計なことを考えたらしい。
単純な書き換えを指示したつもりだったが、コンピューターは全てを済ませた後、赤の付箋まで勝手にいじっていた。
「うわっ!」
そしてそのいじり方が問題だった。装置は赤の付箋にくると、そのデバッグ部分をコピーしてそれがとりあえず走るような環境を適当に造っている。
(ま、まさか……)
間違いなかった。コンピューターは一通り検索、書き換えが終わったら、そいつをどこかで試しに実行するつもりなのだ。それがさっき村山が考えた仮想空間ならいいが、もし、既存ソフトに影響を及ぼすような場所で実行されたなら……
「待て、とりあえず止まれ!」
村山は叫び、終了コマンドを挿入しようとした。だが、何も起こらない。
(なんてこった……)
顔から血の気が引いた。プログラムが止まらないのだ。
彼のプログラムは単純なだけに想像を絶する速さで実行されている。そしてどうやらそのために他の命令が途中で割り込めないらしい。
(迂闊だった……)
まるで素人のやるようなミスである。
「おい、個々の小プログラムの強制終了はどうやったらいいっ?」
村山はヘルプを呼んだ。しかし強制終了のことは単なる小さなプログラムに関してであっても一言も触れられてはいなかった。
ひょっとしたら、それもまた中に入っているゲーマーに何か影響を与えるのかもしれない。
(……どうしたらいい?)
こんなときなのに、ゲーテのバラードを元にしたというデュカスの組曲の旋律が頭をよぎる。
魔法使いの弟子が、師匠の留守に勝手に魔法を使ってホウキに水くみをやらせるが、魔法の止め方がわからずに広間にはどんどん水が溢れるというストーリー。
(……いや、水なんて可愛いもんじゃない)
村山には、増殖していくコピーがガン細胞のように見えた。
「待て、待てって言ってるだろっ!」
しかし、叫んだところでどうなるものでもない。彼は左手で胃の辺りを押さえた。
(……落ち着け、落ち着くんだ)
今までだって、頭が真っ白になるような出来事なんてざらにあった。
でも、そのたび何とか切り抜けてきたではないか。
(待てよ……)
ペンギンの言葉を思い出す。
(実行中でも書き換えOK、デバッグもここまで進化したって、あいつ言ってたよな)
考えてみれば、実際に彼は今動いているソフトの中で書き換えを行っているのだ。それが複数のプログラムをつなぎ合わせた形式のものにだけ応用されると誰が言った?
彼は猛然と、今まで役に立たないと無視していたヘルプに片っ端から質問を投げかけた。




