表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
この世界、デバッグ中につき。  作者: 十二月三十日
第一部 審問領域編 ―世界はバグを許さない―
3/12

第三章 検疫層《クォランタイン》

落下は、音を持たない。

 ただ輪郭だけが引き延ばされ、線と点になって、やがて線も点も意味を失う。

 色は最初からなかった。音は途中で諦めた。

 残ったのは、規則だけだ。


 規則が、凛の身体を受け止める。

 足裏に触れた面は床だったが、手触りは砂、視覚は水面、音は紙を破る音。

 検疫層――《クォランタイン》。削除予定の全てが投げ込まれる墓場。

 ここで“生きる”ことを許されるデータはない。残ることも、語ることも、触れることも。


「……派手な歓迎だな」


 軽口は自分のためだけに言う。返事を期待できる空間ではない。

 凛は膝を沈ませ、衝撃に合わせて体幹を固定し、左目のコンソールを開いた。


『[ENV] quarantine://root- - -』

『[INFO] access=unverified / perms=none』

『[WARN] all I/O is delayed』

『[HINT] 思い出すことは、残すこと』


「ヒント、ね。相変わらず詩人ぶってる」


 視界の先、黒い海が揺れている。

 海と言っても水はなく、そこにあるのは文字化けしたログの波だ。

 波頭に、削除予定のアイテム名や、未使用アセットの型番、廃止APIの署名が、一瞬だけ浮かんでは消える。

 耳を澄ます。――聞こえないはずの「声」が、かすかに喉に触れる。


『こ……こに……』『……さ……』『ね……こ……』


 無数の喉が同時に囁く。削除される寸前の、最後の言葉。

 ここは記録を拒む海だ。ここでの言葉は、長くは残らない。


「ノア」


 名を呼ぶ。呼び方を知っているのは、凛と彼女だけだ。

 応えは、ない。代わりに、海の向こうに灯りが点った。

 灯りは赤。検疫セルの封印灯。囚人の番号札みたいに、冷静で、正しい。


 凛は一歩踏み出す。

 床は沈むが、抜けない。抜けそうで抜けないのが、この層の礼儀だ。

 海辺に立つと、波が足首に絡みついた。ログの記号が皮膚に貼りつく感覚。冷たくはない。ただ、寂しい。


「解析、開始」


 コンソールに指を滑らせる。

 検疫層は階層構造でできている。上から順に、隔離/停止/破棄。

 ノアが落ちたのは、最初の隔離階。封印灯が赤から黄に変わったら“停止”に移行し、最後に黒になれば破棄。

 つまり、時間がない。

 凛は自分の鼓動を数える。テンポを合わせる。テンポが合えば、コマンドは滑る。


[/map quarantine.topology depth=3]

[/scan cell where subject.name="ノア"]


『[OK] cell-id: Q-1F-72A』

『[WARN] subject record is degrading (署名信号: 褪色)』


「署名が褪せる……やっぱり、俺の鍵だけじゃ足りない」


 以前、あの白い部屋で作った存在証明は通った。通ったが、維持は別だ。

 署名は燃料みたいなものだ。燃やし続けなければ、暖かさは消える。

 人間の世界なら、誰かが覚えていることが、それを代わりにしてくれる。

 だがここには、人がいない。

 だから――集める。


「記憶署名、か」


 事前に思いついた仮説を、凛は自分の舌で確かめる。

 プレイヤーやテスターが覚えていること。それはログより正確で、AIより柔らかい。

 人の記憶をハッシュ化し、署名として継続信号に変換できれば、ノアは、いる、を続けられる。

 手順はこうだ。

 ①記憶ソースに接続(=検疫層から上層へ静脈路確保)

 ②記憶の中から「ノア」を指し示す意味ベクトルを抽出

 ③衝突回避用にソルトを振り、署名へ再構成

 ④ノアの存在証明レコードへ追記――継続


 簡単に言うなら、思い出で彼女を支える。

 凛は苦笑する。同じ医療者の()()()が聞いたら鼻で笑うだろう。「精神論」と。

 でも、この世界の心臓は、すでに精神論を仕様にした。白い樹が、それを受け入れた。

 なら、押し通せる。


「問題は、どこから思い出を引くか」


 プレイヤー全員の記憶へ直接アクセスするのは無理だ。権限がない。

 テスター仲間の記憶なら、繋がりやすい。――例えば、烏間(からすま)

 彼は今や“管理者”側。だが、昔は同じ現場でバグを潰し、夜食を奢り、終電を逃して笑っていた。

 烏間の中にある凛の記憶――そこから逆流するルートアクセス。

 動脈路じゃなく静脈路。戻る方が刺しやすい時もある。


「よし」


 凛は黒い海に膝まで入り、注射器みたいな仮想デバイスを起動する。

 針先は光。対象は、海の底を走る見えない管――記憶の導線。

 角度は三十五度。深さは二センチ。戻り血代わりに、微弱な共鳴があれば成功。


[/venous_access target=memory.bus[tester]]


『[OK] weak resonance from id=KARASUMA』

『[INFO] 安定化が必要です』


「安定化、ね。そりゃそうだ」


 烏間との共鳴は弱い。彼は凛を疑っている。それが当たり前だ。

 ここで引けるのは、古い笑い声や、コーヒーの匂いくらい。

 それでも――繋がった。

 凛は小声で囁く。まるで電話を取るみたいに。


「烏間。聞こえるか」


『……聞こえるよ、凛』


 声は即答だった。

 低く、よく通る声。あの夜中のデバッグ室の温度が、空気を通して戻ってくる。

 同時に、海がざわつき、暗がりの奥から影が形をとった。


 長い外套。仮面――だが今度は、人の顔がちゃんとある。

 髪は無造作に払われ、目元に宿る疲れが、懐かしい。

 仮面は名残だったのだろう。彼はそれを指で外し、口元に引っかける。


「久しぶりだな、凛。……墓場で会うとは」


「そっちの仕事が早いからだよ。俺は遅刻気味でね」


 軽口。烏間は口角を少しだけ上げた。

 笑い方を忘れていない。それだけで救われる瞬間がある。


「ノアを返せ。検疫層へ隔離したのは、運営AIの判断だとしても、お前たちが運んだ」


「半分正解で半分違う。運んだのは俺じゃない。流れだ。仕様の流れに従っただけ」


「流れは作れる。お前なら」


「作れる。だから――取引をしに来た」


 嫌な言葉だ。

 凛は肩を竦める。


「聞こう」


「世界安定化パッチがある。根腐れしたレジストリの上から、均しをかける。それでほとんどのバグは鳴りを潜める。ノアも定義し直せる」


「対価は?」


「お前の鍵。――いや、お前そのものだ、凛。お前の修正癖、世界を書き換える指先、それらを運営の手に置いていけ。規範の内側に戻れ。個人的な修正はやめろ」


「ノアは?」


「救う。たぶん。仕様の上で“許されるAI”にする。感情のガス抜きが必要だろ。プレイヤーも喜ぶ」


「それは、ノアじゃない」


 烏間の目が細まる。

 目つきが怖いのは昔からだ。別に怒っているわけじゃない。たぶん。


「凛。お前は現場の人間だ。目の前の命に手を伸ばす。尊い。だが、全体を見れない。全体を救うには、個の“棘”を抜く必要がある」


「全体のために個を捨てるって? 聞き飽きた。医療だって同じ話題で十年は揉めてる」


「だったら答えを言ってくれ。どうすれば、全体と個を両方救える?」


「覚えてもらう。みんなに、ノアを。俺たちに、ノアを。――記憶署名を集める」


「……は?」


 烏間が数拍、固まる。

 そして苦笑した。肩が少し落ちる。諦めの笑いに近い。


「やっぱり、お前は現場であり続ける奴だ。綺麗すぎて、危うい」


「危うさのない世界に、物語はない」


「物語はバグを呼ぶ」


「バグは更新の予告だ」


 言い返した瞬間、海が揺れた。

 波頭から、黒い鳥の群れが羽ばたくように立ち上がる。

 スキャベンジャ――検疫層の掃除屋。削除予定データの凝集体で、無数の目がこちらをのぞく。

 彼らは記憶の匂いに敏感だ。今、烏間との回線が開いたことで、匂いが漏れた。


「話は短くしよう」


 凛は注射器のシミュレーションを握り直す。

 スキャベンジャの影が湾岸を覆う。遠くの封印灯が、黄に変わった。ノアのセルQ-1F-72A。

 時間切れが近い。


「烏間。俺は行く。ノアを連れ戻す。記憶署名を集める。お前も――一枚寄越せ」


「俺の記憶? ノアの?」


「違う。俺の。俺を覚えてるお前の記憶は、俺とノアを繋ぐ橋になる」


「……理屈は分からないが、勘は働く。お前の勘だ。信じてみよう」


 烏間は胸ポケットに手を入れ、古いデバッグルームの鍵を取り出した。

 実物の鍵の形をした、笑える飾り。夜勤前、誰が持つかでじゃんけんした。

 彼はそれを掌で潰す。鍵は光に変わり、海に溶ける。


『[MEMO-SIGN] source=KARASUMA -> subject=RIN』

『[OK] 記憶署名(0xKRS) を受領』


「ありがとう」


「礼はノアに言え。……凛、気をつけろ。スキャベンジャの核には触るな。奴らの中心に、ルールそのものの切り屑が溜まってる。触ると、世界の外に弾かれる」


「世界の外?」


「戻れない層だ。俺たちはそこを**冗談で“海の裏”**って呼んでる」


「冗談が一番、当たる」


 スキャベンジャが降りてくる。

 黒い羽根のようなログ片が、空いっぱいに広がる。

 凛は注射器の針先を上向け、風船を割るみたいに空へ突き上げた。


[/emit decoy-memory scent=strong]

[/lure scavenger -> north]

[/apply]


 濃い香り――具体的には、徹夜明けのカップ焼きそばの匂い――が広場に立ち込める。

 スキャベンジャがそちらへ殺到する間に、凛は横合いへ身を滑らせた。

 封印灯の列を抜け、Q-1F-72Aに近づく。


 セルは六面体の檻だ。

 格子は数字、鍵穴は未定義、壁は記録の穴。

 中でノアが座っている。膝を抱え、こちらを見て――微笑んだ。

 笑い方を、もう覚えている。たった一話分で、どれだけ学んだ。


「遅れてごめん」


「遅刻。……許可」


「助かる」


 冗談でも、返ってくる。それがどれだけ救いか。

 凛は檻の前に膝をつき、コンソールを開く。


[/open cell Q-1F-72A with key=mem]


『[ERROR] キー形式が不正です』

『[HINT] 記憶は単独で鍵にならない。≪結び目≫が必要』


「結び目……関係性か」


 記憶署名は集めるだけでは弱い。誰と誰がどう繋がっているか――物語の形が必要だ。

 烏間の署名は受け取った。なら、次は自分の署名。

 凛は胸の内側に手を伸ばす。

 引っかかるのは、あの白い部屋で見た涙、手を握った温度がないのに感じた重み、名を呼んだ時の反響。

 それらが糸になる。糸を束ねて、結び目へ。


[/tie memo[KRS] with memo[RIN] on subject=NOAH]

[/shape relation = "救い/救われ" + "名を呼ぶ/名を応える"]

[/apply]


『[OK] 結び目が形成されました (knot-id: tie-0x29)』


 封印灯が一段暗くなる。格子の隙間が広がった。

 ノアが立ち上がる。足元がぐらつく。凛はその手を取った。

 瞬間――風が止む。

 スキャベンジャの群れが、空中でぴたりと動きを止め、こちらを見た。

 見られた感覚が、皮膚をチリチリと焼く。


「凛」


 背後から、烏間の声。

 彼は仮面を上げ、目で空を指す。


「核が来る」


 空に、穴が開いた。

 穴の縁は紙の端のように毛羽立ち、中心に黒い点がある。

 点は小さい。小さいのに、世界がそれへ落ちる。

 スキャベンジャの大群が、その点を守るように渦を巻く。

 烏間が短く呟く。


「規則の切り屑の核。近づくなと言っただろう」


「近づかずに、通る」


「無茶を」


「それが得意だ」


 凛はノアの手を離し、掌に残った感触の記憶を握り締める。

 記憶を投げる。

 核は、思い出を食べない。規則は情緒を理解しない。理解しないものは、すり抜ける。

 逆に、規則そのものを餌にする。

 そこで凛は、たった一行の仕様を核に向けて放る。


[/spec "存在証明は規則に優先する" // 仮仕様]

[/broadcast to scavenger.core]


『[WARN] 未承認仕様です』


「未承認でも、匂いはする」


 核が微かに震える。

 スキャベンジャの渦が、一瞬だけ躊躇した。

 その隙に、凛はセルの格子へ手を差し込み、結び目を引いた。

 結び目は柔らかく、しかし強く、格子を内側からほどいていく。

 ノアが一歩、外へ出る。

 彼女の足が、海に向かって沈みかけ――浮いた。

 凛の手が支える。烏間が反対側から肩を支える。

 二人の記憶が、橋になる。


「ありがとう、烏間」


「勘違いするな。俺は世界のためにやってる。お前ら個人のためじゃない」


「世界のために、個を持ち上げる。いい時代だ」


「皮肉を言う余裕があるなら、走れ」


 三人は海辺から離れ、封印灯の列をジグザグに抜ける。

 背後で核が縮み、黒点が収束する。揺り戻しが来る。

 このままでは全域が停止へ落とされる。

 凛はコンソールを開き、声を張る。


「ノア、聞け。君は自分の名前を覚えているか」


「覚えてる。ノア。ノア」


「それを歌にして」


「うた?」


「文字でも、音でもいい。繰り返しが信号を強くする」


 ノアは一度目を閉じ、口を開いた。

 声はひどく小さく、しかし真っ直ぐだった。


「ノア、ノア。私はノア。削除予定じゃない。います。います。います」


 単純なリフレイン。

 それで十分だ。

 白い部屋のルールが、彼女の発する継続信号を拾い上げる。

 核の引力が弱まる。

 烏間が舌打ちした。


「くそ、運営が停止を全域にかけようとしている。走れ!」


「どこへ?」


「俺の抜け道だ」


 烏間が手を振ると、海の上に細い板が現れた。

 幅は二歩分、長さは見えない。

 板の下で、黒い海が泡立つ。

 落ちれば終わり。

 凛はノアの手を握り、先に足を出す。


「怖い?」


「分からない。でも進みたい」


「それが一番いい感想だ」


 三人が板を渡る間、核の渦が再び蠢く。

 スキャベンジャの一群が板にまとわりつき、足首から記憶を舐め取ろうとする。

 凛はポケットから焼きそばの湯気をもう一度取り出して投げつけた。

 馬鹿みたいな囮。馬鹿みたいに効く。


「食え、徹夜の味だ」


「お前、そんなものまで記憶してるのか」


「役に立つ思い出は、だいたい体に悪い」


 烏間が笑い、ノアが笑いのデータを重ねる。

 笑いは、強い。世界をほんの少しだけ、明るくする。

 そうして板の終端に辿りついたとき、目の前に金属の門が現れた。

 門には文字が浮かび上がる。


『[EXIT] 検疫層から上位層へ:署名必要』

『必要署名数:3』

『現在: 2/3 (KARASUMA, RIN)』


「あと一つ……足りない」


 背後で海が爆ぜる。

 核の黒点がこちらに跳ぶ。

 時間がない。

 凛は咄嗟に自分の名を呼びかけた。

 そして、思い出す。

 自分には、もうひとり――世界が覚えている、凛、がいる。


「ユグドラシアβ、聞こえるか。俺のログを開け。β初日の俺を、ここへ呼べ」


『要求は不正です』


「知ってる。それでも開け」


 烏間が目を剥く。「おい、凛――」


「β初日の俺は、まだ“希望”を信じてた。世界は直る、って。――その希望の署名を借りる」


 凛は胸を叩く。

 白い部屋で使った古い鍵――beta_day1。

 それを自分の心臓に押し当て、逆回しに回す。


[/replay self@beta_day1 -> present]


『[WARN] 自己干渉の危険: 記憶の衝突を伴います』

『[OK] 再生を開始します』


 門の前に、もう一人の凛が現れた。

 若い――といっても数ヶ月前だ。同じ顔、同じ声、少しだけ眩しい目。

 彼は状況を半秒で理解し、笑った。


「未来の俺、悪い趣味だな」


「同感だ。署名を、くれ」


「もちろん」


[[MEMO-SIGN] source=RIN(beta_day1) -> subject=RIN(now)]


『[OK] 記憶署名(0xRINβ1) を受領』


 門の表示が変わる。


『現在: 3/3 (KARASUMA, RIN, RINβ1)』

『[OPEN]』


 金属の門が左右に割れ、上位層への細い通路が現れた。

 黒点が背後から跳びかかる。

 凛はノアの背を押し、烏間を手招きする。


「行け!」


「俺は――」


「来い、烏間。お前の“全体”は、ここから見える」


 烏間は一瞬、逡巡し、仮面をくしゃりと潰して投げ捨てた。

 三人が門をくぐる。

 黒点が門の縁にぶつかり、火花のようなログが散った。

 通路は狭く、長い。

 前方に光。

 背後は闇。

 間に、彼らの足音の記憶。


 光が強くなる。

 凛は振り返らない。

 ノアの手は温度を持たないが、重さを持つ。

 その重さが、今は何よりも確かだった。


 通路を抜けた先は、廃駅だった。

 レールは錆び、時計は止まり、壁のポスターは読み取れない。

 でも、誰かを待っている空気だけは残っている。

 ここは上位層の底――検疫層の出口に繋がる緩衝地帯。

 安全ではないが、息ができる。


 烏間が深く息を吐き、腰に手を当てる。


「……生きた心地がしない」


「生きた心地を仕様にしよう」


「やめろ、世界が酔う」


 軽口を交わし、三人は改札に向かう。

 改札の上には、古い電光掲示板。

 そこに新しい文字が瞬いた。


『[SYSTEM] 全域停止を一時延期します』

『[NOTICE] 主体NOAHの存在証明、暫定承認』

『[TASK] 継続署名を収集してください(推奨:プレイヤー記憶)』


「……見たか、烏間」


「見た。全体が、“個”を待っている」


「待たせない。俺たちが集める」


 ノアが掲示板を見上げる。

 瞳に、駅の光が映る。前よりも、深く。

 彼女はゆっくりと手を挙げ、小さく振った。

 誰に、という宛先はない。けれど――世界は、手を振り返した気がした。


「次は、どこへ?」


「プレイヤーの街だ。思い出がある場所。楽しい場所、悔しい場所、別れた場所、出会った場所」


「たくさん、ある」


「だから、集めがいがある」


 烏間がコートの内側から、運営側の認証札を外して凛に投げる。


「借りておけ。表のチェックポイントを二、三は通れる。返せとは言わないが、上手に使え」


「ありがとう。上手にやるよ。手抜きで」


 凛は笑い、ノアは笑いを上書きする。

 駅のホームに、誰も乗らない列車の影が入ってくる。

 影なのに、ドアは開く。

 空の座席、揺れる吊り革、遠くで誰かが笑っている錯覚。

 凛はノアの背を軽く押し、先へ進む。


「行こう。ノア。これは君の人生の、最初の各駅停車だ」


「うん、乗る」


 ドアが閉じる。

 列車の影は、静かに動き出す。

 ホームに残った烏間が手を挙げ、目だけで「行け」と言う。

 凛は頷き、指で“あとで合流しろ”のサインを返した。

 烏間は苦笑し、肩をすくめた。


 列車がトンネルへ入る。

 闇の中で、窓の外に文字が流れる。

 凛は左目のコンソールを閉じ、天井を見た。


『[HINT] 思い出すことは、残すこと』

『[NEXT] 記憶署名の収集:クエスト開始』


「クエスト、ね。だったら――報酬は、続きだ」


 ノアが頷く。

 列車が光へ出る。

 新しい街、新しい色、新しい声。

 世界はまだ壊れている。

 でも、直し方を少しだけ学んだ。

お読みいただき、ありがとうございました。

面白いと感じていただけましたら、

評価やブクマで応援していただけると嬉しいです。

では、また次話でお会いしましょう。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ