1-4 初めての戦闘そしてバグという名のこの世界のバグ
目の前の黒い靄に対してボクはリリアに説明する
「あれは、バグ」
「え? バグ……ですか?」
リリアは聞き慣れない言葉に首を傾げる。その視線は、まるで信じられないものを見るかのようだ。
「うん。結界を蝕む厄介な存在だよ。放っておくとマズい」
黒い靄が徐々に形を成していく。魔力の流れを歪ませながら、その姿を現したのは異形の獣。
四本の足はデータの切れ端のように揺らめき、赤く光る目からは禍々しい光が漏れ出している。全身から剥がれ落ちる黒いデータは、まるで血のように空間を汚していく。
「きゃっ!」
リリアが反射的に詠唱を始める。大気中の魔力が凍てつく。
「氷結魔法、フロストアロー!」
凍てついた空気が集まり、鋭い氷の矢となって放たれる。しかし──
「え?」
魔法がバグの体をすり抜け、空しく消えていく。効果がない。
「残念だけど、通常の魔法じゃ効果はないよ。ここは、ワイちゃんに任せて」
「あ、あの……どうやって?」
ボクは腕時計型デバイスを操作した。
腕時計の文字盤部分から青白い光が放射され、空中に立体的なデータ表示が浮かび上がる。
「まずは正体を暴いく──」
指先でコマンドを入力。
「analyze.run();《バグ解析、実行》」
バグの全身にグリッドが浮かび上がり、内部構造が可視化される。
さぁバトルスタートだ。
すると、バグが急に動き出した。重たそうな足音とともに地面を蹴り、鋭い爪を振りかざしてこちらに向かってくる。
「リリア、下がって!」
リリアを庇いながら素早く横へ飛び退く。振り下ろされた爪が地面を抉り、飛び散ったデータの破片が空間に溶け込むように消えていった。
さらにバグが跳躍し、頭上から襲いかかってきた。ボクは即座に回避行動を取り、デバイスを操作して防御フィールドを展開する。
「guard.execute();《防壁、展開》」
青い光の壁が瞬時に形を成し、バグの爪を受け止める。しかし、防壁には大きな亀裂が走った。
「おいおい、意外と力強いな。けど──」
バグが間合いを詰めようとしたその瞬間、ボクは背後に跳躍し、再びコマンドを入力した。
「ワイちゃんが負けるなんて、そんな夢物語は実現しないんだよ!」
ホログラムに赤いマーカーが表示され、バグの弱点が特定された。
バグの弱点に対して修正パッチを適用する。それがバグとの闘いのセオリーだ。
「debug.deploySword();《デプロイソード、構築》
ボクの右手から青白い光が溢れ出し、空間に浮かび上がった。それはまるで無数のデータ文字列が集まり、ひとつの形を作り出していくようだった。
光の粒がゆっくりと凝縮し、剣の輪郭が浮かび上がる。
まずは剣の柄が現れる。握りやすい形状が精密に構築され、柄に刻まれた細かな魔法文字が淡く輝いていた。それに続いて、青白い光の刃がじわりと形を成していく。
「ほら、もう逃げられないよ。どうする? 降参するなら、今が最後のチャンス」
ボクはバグに挑発するかのように話しかけた。
バグの動きは明らかに焦っているように見えたが、もちろん、それが意思を持った行動ではないことをボクは知っている。ただのバグだ。答えを期待する方が無駄だった。
「ワイちゃんに挑むってことは、最初から負ける未来に挑むってことだよ?」
ボクは冷静に一歩後ろへ下がりながら、余裕たっぷりに剣を肩に担ぐ仕草をしてみせた。
目の前でデータの獣が暴れているにも関わらず、まるで散歩中の野良犬に話しかけるような軽い調子で言葉を投げかける。
バグが再び突進してくる。その軌道を読み切り、今度はバグの横をすり抜けるように動く。相手が振り返る前に、ボクは決め手となるコマンドを入力した。
「debug.execute();《エラー修正、実行》」
バグの核が赤く輝いている。それを目がけてボクは跳躍し、データ剣を振り下ろした。
光の刃がバグの核を貫き、異形の獣は悲鳴を上げながら霧散していく。全身のデータが崩壊し、静寂が訪れた。
「ふう……これでおしまい。 退屈な戦闘だったな」
ボクは持っていた剣を消しながら振り返ると、リリアが大きな目を見開いてこちらを見ていた。
「すごい……でも、よく分からないです」
「初見だと説明が必要だよね。実はこの世界では──」
その言葉は途中で途切れた。リリアの背後で、空間が大きく歪み始めている。
まるで鏡が割れるように、現実が亀裂を起こしていく。
亀裂から漏れ出す黒い靄。先ほどとは比べものにならない規模で、データの流れを飲み込んでいく。靄の中心で、何かが蠢いている。
「また来るね。でも、今度は──」
今度の黒い靄は、先ほどとは比べものにならないほどの大きさだ。
空間が大きく歪み、データの流れが渦を巻いていく。やがてその中心から、巨大な影が姿を現した。
「う、うそ……」
リリアの声が震える。
先ほどの獣型とは違い、今度は人の形をしている。全身から禍々しい赤いデータが漏れ出し、その手には剣のような何かを持っていた。
「これは……レベル3のバグ」
「レベルって?」
「まあ、簡単に言うと──かなりヤバいってこと」
ボクはデバイスに目を走らせる。
画面には[Anomaly Detected]《異常検知》の警告が赤く点滅している。
人型のバグが剣を構える。その動きは先ほどの獣型とは違い、明確な意思を持っているように見える。
「analyze.run();《バグ解析、実行》」
グリッドが浮かび上がるが、すぐに砕け散ってしまう。
バグの体を包み込もうとした青い光が、まるでガラスのように割れていく。
「っ! 解析、弾かれた?」
バグがリリアの方へ向かって剣を振り上げる。その動きは予想以上に速い。
漆黒の刃が空間を切り裂き、データの流れを分断していく。その一撃には、明確な殺意が込められていた。
「リリア!」
咄嗟にコマンドを入力。
「guard.execute();《防壁、展開》」
リリアの前に青い光の壁が具現化。バグの斬撃を受け止めるが──バリアを砕かんばかりの衝撃に、大きくヒビが走る。
「く……想定以上の力だ」
ボクは必死で次のコマンドを。
「もう一度! analyze.run();《バグ解析、実行》」
だが、またしても解析は弾かれる。これまでのバグとは次元が違う。
「私にも、何か……!」
リリアが詠唱を始める。周囲の空間が大きく歪み始めた。
いつもなら穏やかに漂うはずの魔力が、制御を失ったように暴れ始める。まるで荒れ狂う大海のように、青い魔力の波がリリアを飲み込んでいく。
「こ、これ……!」
リリアの周りで、魔力が渦を巻き始める。彼女の銀髪が逆立ち、瞳が蒼く輝きだす。
「止まらない……魔力が、止まらない!」
彼女の悲鳴が響く。魔力の渦は更に激しさを増していく。
データの海と魔力が共鳴を始め、その力は雪崩のように増幅されていく。制御を失った魔力は、まるで生き物のように蠢きながら広がっていく。
「まずい! この世界じゃリリアの魔力が──」
幻想世界の影響で、彼女の魔力が暴走を始めている。データと魔力が共鳴し、増幅する。
「こ、これ……私の魔力が、止まらない……!」
どういう訳か幻想世界特有の性質が、リリアの魔力を増幅させているらしい。
データと魔力が共鳴し、際限なく力を増していく。
その様子に気付いたのか、人型のバグが反応する。全身から放たれる赤いデータの量が増え、その姿はより一層禍々しさを増していった。
「こ、これ……私の魔力が……!」
リリアの声が震える。恐怖と混乱が入り混じった表情。魔力の渦に飲み込まれそうになりながら、必死に耐えている。
青白い魔力の光は既にデータの海と一体化し、制御不能な魔力の嵐となって荒れ狂っていた。
「このままじゃリリアが──でも、そうか!」
ボクは画面に浮かぶリリアの魔力データに目を凝らす。
この世界では、魔力もまたデータとして存在する。なら──
「リリア! もう少しだけ、耐えて!」
素早くコマンドを入力していく。
「analyze.magic();《魔力解析、実行》」
リリアを包む魔力の渦に、データ解析用の青いグリッドが重なっていく。瞬間、膨大なデータが画面に流れ込んでくる。波形、密度、そして魔力の流れ。全てが数値として解析可能だ。
「この数値……やっぱり凄まじい魔力だ」
だが、数値化できるということは──制御も可能なはず。
画面には複雑な数値が次々と表示される。魔力の波形、密度、そして流れの方向性。
全てがデータとして解析可能だ。
「control.initialize();《制御系構築、実行》」
プログラムが魔力の流れに干渉を始める。しかし、予想以上の勢いに、制御プログラムが悲鳴を上げる。警告が次々と点滅する。
「くっ……このままじゃ制御しきれない」
魔力の奔流は、プログラムの制御を振り切ろうとしている。まるで生き物のように暴れ回る魔力の渦。
「わ、私……どうすれば」
リリアの声が不安げに震える。
その時、ボクはふとある考えが閃いた。
「そうだ──止めようとするから、ダメなんだ」
魔力の流れを見つめ直す。
「暴走してる魔力を──ワイちゃんのプログラムで『方向付け』してみよう」
新しいコマンドを入力していく。
「magic.redirect();《魔力誘導、開始》」
「その強大な魔力を、プログラムで制御して、バグへ向けることが出来れば……」
プログラムがリリアを中心とした魔力の渦に、新たな干渉を始める。今度は抑え込むのではなく、流れを作り出す。
リリアを取り巻いていた魔力の渦が、徐々に形を変えていく。まるで光の水路のように、魔力の流れがバグへと向かって一筋の道を作り始めた。
データと魔力が交わる瞬間、空間が虹色に輝く。
「どう? 少し楽になった?」
「は、はい……魔力が、スッと通っていく感じがします」
リリアの表情が和らぐ。乱れていた呼吸も落ち着きを取り戻してきた。
「よし──じゃあ、一緒に連携攻撃いくよ!」
「はいっ!」
画面に浮かび上がるデータを確認する。
バグの中心、核となる部分が赤く点滅していた。先ほどの解析では見えなかったその弱点が、リリアの魔力の共鳴で浮かび上がってきている
「バグの弱点が見えてきた。リリアの魔力と、ワイちゃんのプログラム──」
「リリア、氷結魔法を。ワイちゃんが道筋を作るから」
「はい!」
彼女の声に迷いはない。魔力が更に強く、しかし安定して流れ始める。
「氷結魔法──」
彼女の詠唱に合わせて、ボクも指を動かす。
「debug.execute();《エラー修正、実行》」
プログラムがリリアの魔力を完全に制御下に置く。
彼女の周りに渦巻く魔力が、まるで光の螺旋のように美しい軌道を描き始める。その光は次第に強さを増し、やがて眩いばかりの輝きとなった。
人型のバグが攻撃の構えを取る。だが、もう遅い。
「フロストアロー!」
放たれた氷の矢が、プログラムの光に包まれたまま、バグの核心部へと突き刺さる。
轟音と共に、バグの姿が粉々に砕け散っていく。その姿は、まるでガラスの様に美しく砕けながら、データの海へと還っていった。