↓ ↑ページトップへ
表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

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

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

エラーが発生しました。

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

ブックマーク機能を使うにはログインしてください。
呪文は日本語。IT社員の俺、コード魔法で異世界の壊れた仕組みを全部直します  作者: ノーコードLab


この作品ページにはなろうチアーズプログラム参加に伴う広告が設置されています。詳細はこちら

PR
107/115

第107話 装置が語りかける

毎日20時、更新予定です!

■1.翌朝、カリンは、また、降りた。


石段の冷たさは、変わっていなかった。

壁の溝も、同じだった。ただ、今日は、管理者が、一緒ではなかった。カリンが「一人で行く」と言ったとき、管理者は、止めなかった。扉の鍵を開けたまま、居室で、待つ、と言った。


クロードだけが、カリンと、一緒に、降りた。


二百段を、降りた。


広間は、昨夜と、同じだった。暗かった。装置が、中央に、あった。台座の上に、静かに、置かれていた。


カリンは、装置の前に、立った。


昨夜、手を当てたとき、装置が、光った。管理者が「初めてだ」と言った。二百年で、初めて、反応した、と。


今朝、また、光るかどうか、わからなかった。


でも、来ないわけには、いかなかった。


カリンは、手を、伸ばした。金属の側面に、手のひらを、当てた。


冷たかった。昨夜と、同じ、均一な冷たさだった。


カリンは、目を、閉じた。


深く、息を、吸った。


コード魔法の感覚を、意識した。自分の中に、流れているものを、感じた。川の水のような、電気のような、そのどちらでもないような。名前のつかない、流れ。


そして、装置が、光った。


昨夜より、早かった。光の線が、金属の継ぎ目を、走った。枝分かれして、広がって、透明な素材の部分で、揺れた。床の放射状の線の上に、影のように、映った。


そして、光が、集まった。


装置の上面の中央に、光が、集まった。


カリンは、目を、開けた。


集まった光が、形を、作り始めた。


文字だった。


しかし、カリンが知っている文字とは、違った。コード魔法で使う構文に、似ていた。しかし、完全には、同じではなかった。記号の並び方が、見覚えのある形をしていた。カリンは、鍵として、その記号を、解読した経験が、あった。


ゆっくり、読んだ。


```

connect(origin, node="forus_relay_1");

// ●●●●●●●●●●●●●

```


一行目は、読めた。


接続する。原点から。ノード——フォルス中継一番。


二行目は、読めなかった。スラッシュが二本、並んでいた。その後に続く文字は、カリンの知らない古代の文字だった。記号の形は、わかった。しかし、意味が、わからなかった。


装置の光が、揺れた。


次の行が、出た。


```

status(node="forus_relay_1", query="active");

// ●●●●●●●●

```


これも、一行目は、読めた。


状態を問う。フォルス中継一番の。クエリ——活性化しているか。


そして、古代文字のコメント。読めなかった。


「クロード」と、カリンが、言った。


「見えています」と、クロードが、言った。


「読めるか、コメント部分」


「読めません。私が知っている言語とは、異なります」


カリンは、もう一度、一行目を、読んだ。接続命令。状態確認。これは、装置が、今ここに出力しているメッセージだった。誰かが、どこかから、送ってきた。受信端末が、受け取った。そして、カリンが触れたとき、再生した。


誰が、送ったのか。


「原点から、か」と、カリンが、言った。


クロードは、すぐには、答えなかった。


装置の光が、また、揺れた。三行目が、出た。


```

await(response, timeout="undefined");

// ●●●●●●●●●●●●●●●●

```


待つ。応答を。タイムアウト——未定義。


タイムアウトが、未定義。待つ時間に、上限がない。いつまでも、待つ。


カリンは、その一行を、見つめた。


二百年間、装置が、待ち続けた理由が、ここに、あった。待つ時間の上限を、誰も、設定しなかった。だから、装置は、ずっと、待つことに、なった。


「管理者も、同じだ」と、カリンは、思った。


■2.断片が、積み重なった。


光が、続いた。


四行目が、出た。五行目が、出た。行が、増えるたびに、カリンは、読んだ。コメント部分は、読めなかった。構文部分は、読んだ。


```

execute(origin, "restore", target="node_7");

// ●●●●●●●●●●●●

```


実行する。原点から。リストア。対象——ノード七番。


ノード七番。フォルスの管理者は、七体いると、言った。その七番目への、命令だった。リストア——復元。回復。何かを、元の状態に戻す命令。


```

verify(node="node_7", checksum="a7f3c...incomplete");

// ●●●●●●

```


検証する。ノード七番を。チェックサム——不完全な数値が続いて、途中で切れていた。


不完全だった。信号が、途中で、途切れていた。管理者が言っていた。断片が、流れ続けている、と。これが、その断片だった。完全な命令が、伝わっていなかった。


```

if(node_status == "error") {

isolate(node_7);

}

// ●●●●●●●●●●●●●●

```


もし、ノードの状態がエラーなら、ノード七番を、切り離せ。


切り離す。


カリンは、そこで、手を、止めた。止めたつもりはなかったが、止まっていた。


七体の地域管理者のうちの一体が、エラー状態を起こしている。原点は、それを、切り離せ、という命令を、送っていた。しかし、その命令が、完全に届いていない。フォルスの管理者は、断片だけを受け取り続けて、二百年間、何をすべきかわからずに、待ち続けた。


「クロード」と、カリンが、言った。


「はい」


「この命令は、いつ、送られた?」


「装置には、タイムスタンプが、記録されていません。少なくとも、今ここに出力されているメッセージには」


カリンは、装置を、見た。光が、まだ、揺れていた。


「送り元は、原点か」


「構文の形式は、原点から送られたものに、見えます」


「見える、というのは」


クロードは、少し、間を、置いた。


「この構文の形式を、私は、以前に、見た覚えがあります。どこで見たか、詳しくは、言えません。ただ、形式として、見覚えがある」


カリンは、その言葉を、聞いた。


詳しくは言えない。それは、言いたくない、とは、違うのかもしれなかった。


次の行が、出た。


```

ping(destination="relay_all");

// ●●●●●●●

```


ピング。宛先——全中継器。


全中継器への、確認信号だった。応答せよ、という、呼びかけだった。


カリンは、それを、読んで、少し、待った。


装置の光が、揺れた。


最後の行が、出た。


```

// ●●●●●●●●●●●●●●●●●●

return("origin_pulse_v1");

```


コメントが、先にあった。読めなかった。そして、リターン。原点脈動バージョン一。


これが、信号の名前だった。「原点脈動」。バージョン一。ということは、続きがある、ということだった。二が、三が、あったはずだった。しかし、ここに届いているのは、一だけだった。


装置の光が、消えた。


また、暗くなった。


カリンは、手を、離した。


指先が、冷たかった。装置に触れている間、自分が、どれだけ、緊張していたか、わかった。肩が、凝っていた。首が、張っていた。


「全部で、何行、あった」と、カリンが、言った。


「十一行です」と、クロードが、答えた。「うち、六行が、構文。五行が、コメントのみの行」


「コメントのみの行は、全部、読めなかったか」


「はい」


カリンは、広間の暗さの中で、構文を、頭の中で、整理した。


接続。状態確認。待機。実行命令。検証。条件分岐。ピング。リターン。


これが、断片だった。バラバラに届いた、原点からの信号の、断片。それが、装置の中に、積み重なっていた。二百年間、積み重なっていた。


「宛先は」と、カリンが、言った。


「relay_1、node_7、relay_all、という指定が、ありました」


「フォルスの管理者は、relay_1か」


「おそらく」


カリンは、広間を、見回した。暗かった。天井は、見えなかった。


「他に、relay_2以降がある、ということだ。七体の中継器が、それぞれ番号を持っている」


「そう、読めます」


カリンは、深く、息を、吐いた。


■3.カリンは、石段を、登りながら、考えた。


管理者の居室に、戻った。


管理者は、待っていた。カリンの顔を、見て、何かを、読んだのかもしれなかった。すぐには、聞かなかった。


カリンは、椅子に、座った。


「メッセージが、出た」と、カリンが、言った。


「どのような」


「コード魔法の構文だった。コメントの部分は、古代文字で、読めなかった。構文の部分だけ、読んだ」


カリンは、覚えている限りで、内容を、伝えた。接続命令。状態確認。ノード七番へのリストア命令。エラーの場合の切り離し命令。全中継器へのピング。


管理者は、黙って、聞いた。


「どう思う」と、カリンが、聞いた。


「ノード七番というのが、どの管理者を指すか、わからない」と、管理者が、言った。


「おまえが、フォルスのrelay_1なら、ノード七番は、別の管理者か」


「そうなる。しかし、私には、他の管理者の番号が、わからない。私自身が何番なのかも、私には、わからない」


カリンは、それを、聞いて、少し、驚いた。


「自分の番号も、知らないのか」


「知らなかった。二百年間、気にしなかった。他の管理者と、やりとりしないのだから、番号は、必要なかった」


カリンは、腕を組んだ。


「でも、そのメッセージは、relay_1宛てだった。フォルスが、relay_1なら、おまえ宛て、ということになる」


「そうかもしれない」


「二百年間、届きそびれていた命令を、今日、俺が読んだ」


「そうだ」


管理者は、それを、静かに、言った。


カリンは、管理者を、見た。管理者の光は、安定していた。動揺していない。しかし、ゆっくりと、変わっていた。何かが、内部で、整理されているような、光の変化だった。


「コメントが、読めれば」と、カリンが、言った。「もっと、わかることが、ある」


「そうだな」


「古代文字を、読める人間が、いれば」


管理者は、何も、言わなかった。


クロードが、カリンのそばで、静かに、浮いていた。


カリンは、クロードを、見た。クロードは、返事を、しなかった。返事を、求められていない、と、わかっているような、静かさだった。


カリンは、立ち上がった。


「もう一日、ここに、泊めてもらえるか」


「構わない」と、管理者が、言った。


「明日も、降りる」


「わかった」


カリンは、窓の外を、見た。フォルスの空は、曇っていた。遠くに、砂漠の縁が、見えた。砂が、風に、巻き上がっていた。


『コメントの部分に、答えがある。でも、今は、読めない。読める人間が、どこかに、いるはずだ』


カリンは、そう思った。


今すぐ、答えが、出なくてもよかった。でも、覚えておかなければならなかった。この装置が、何を、待っていたか。どこから、信号が来ていたか。その信号が、完全に届いていれば、何が、起きていたか。


それを、忘れては、いけなかった。


装置は、また、地下に、あった。暗い広間の中央に。台座の上に。静かに。


でも、今日、初めて、完全に黙っていなかった。


断片であっても、言葉を、出した。


それは、二百年間で、初めてのことだった。


そして、その断片を、読んだのは、カリンだった。


なぜ、カリンが触れたとき、装置が動いたのか。


管理者も、わからない、と言った。クロードも、答えなかった。


カリンも、答えを、持っていなかった。


ただ、今は、それでよかった。


知らないことは、知らないままで、いい。でも、知らないということを、知っていなければならない。


石段の冷たさが、まだ、足の裏に、残っていた。


『(第108話へつづく)』

面白いと思ったらブックマーク・評価をいただけると励みになります!

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

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