第3話 ソースコード
「さーて、こいつはどんな魔法が使えるのかなー」
いつもの自宅近くの洞穴にて、14歳になったユキは魔法補助具を構える。
その日、ユキは新調した魔法補助具の試し撃ちをしようとしていたのだ。
いざ魔法補助具を使おうとしたときのことであった。
(……!)
「あれ……」
なぜか使う前から、どんな魔法が放たれるのかがわかったのだ。
魔法のイメージが頭の中に流れ込んでくるような感覚だ。
「いやいや、まさかな……」
ユキはそんなまさかなと思いつつも、心臓ばくばくで、魔法補助具を使用する。
「実行!」
(……!)
小さな光の弾が一定間隔で四発、放たれる。
「うそだろ……」
それはユキが事前に想像した通りのものであった。
だが、これだけなら偶然という可能性もある。
ユキは居てもたってもいられず、街の武具屋へ走った。
安物の魔法補助具を一つ購入し、その足で洞穴へと戻る。
そして、再び、魔法補助具を使用する。
(……!)
すると、先程と同じく魔法のイメージが頭の中に流れ込んでくる。
「実行!」
小さな光の弾がやや正面から外れた角度で二発放たれる。
それはユキが事前に想像した通りのものであった。
「すご……」
これにより、自身の感覚が再現性のあるものであると確信に到る。
しかし、ユキは同時に一つのことに気付いてしまう。
(ん……? でもこれ……何の役に立つんだ?)
そう。魔法補助具から発生させられる魔法が事前にわかったところで、何の役にも立たないことに気付いてしまう。
その日、ユキは非常に興奮した後、急激に冷めてしまうのであった。
だが、その一か月後。
ユキは更に別の感覚を感じとれるようになってくる。
魔法補助具から数値的な情報を文字列的なイメージで感じとれるようになってきたのである。
具体的には、射出時間、射出間隔、射出角度、発射位置、大きさ、威力、属性、速度、加速度、……といった情報である。
////////////////////////////////////////////
time = 480 // 射出時間
interval = 120 // 射出間隔
angle = device.angle // 射出角度
position = device.position //射出位置
size = 1 // 大きさ
power = 1 // 威力
attribute = NONE // 属性
speed = 2 // 速度
acceleration = 0 // 加速度
・・・
////////////////////////////////////////////
(な、なんだこれ……まるでソースコードにおける変数の初期化じゃないか……)
ユキは動揺する。
想起した文字列から簡単に読み取れたのは……、
(大きさと威力が1、属性が無、速度が2ってことか……?)
そうして放った魔法補助具からは、一定間隔で四発の小さな無属性の弾がややゆっくりとした速度で放たれたのである。
大きさ、威力、速度については確かなことは言えなかったが、属性に関して言えば、完全に的中していた。
しかし、それはこの世界の魔法における根源たる魔法論理を、ユキが世界で初めて具体化できる人間となった瞬間でもあった。
◇
ユキは魔法補助具の魔法論理を読み取れるようになり、その後も解析を続けた。
(そもそも魔法補助具の内部は、マイコン(マイクロコンピュータ)に類似してる。メモリ(記憶装置)に魔法論理が組み込まれているんじゃないかって予想は多分、的中していたわけだな)
「でもなぁ……」
(だけど、そのメモリ(記憶装置)の内容を読み取り、魔法論理を解析することができる装置……つまるところマイコンに対する〝パソコン〟に当たる存在がないんだよなぁ)
=================================================
【マイコン】
CPU ← 処理装置
メモリ ← 記憶装置……プログラムが格納されている
┃
┗パソコン……メモリにアクセスし、プログラムを読み取ったり、編集できる。
【魔法補助具内の球体】
中央の球体 ← 魔法の出力に関わる?
脇の紙 ← 記憶装置?……魔法論理が格納されている?
┃
┗???
=================================================
ユキは眉間にしわを寄せ、思考する。
そして、ふと閃く。
(ん……? ちょっと待てよ……。魔法補助具内部のコアに対してパソコンの役割を果たすもの……それは〝人間〟なんじゃないか? だって、今、俺が魔法論理を読み取れてるわけだし……)
「おいおいおい、それってつまり……」
(この仮説を信じるなら、魔法論理を読み取れるだけじゃなくて、編集……つまり〝改変〟することも可能ってことじゃないか!?)
ユキはとんでもないことを思いついてしまったと、思わず身震いする。
(善は急げだ……)
ユキは夕方にも関わらず、家を飛び出す。
「ユキ!? どうしたの? もうすぐ夕飯よ?」
「ごめん、母さん、ちょっとだけ遅れるかも」
「え……!? あんまり遅くならないようにね」
「わかった……」
そうして、ユキは訓練用の洞穴へと駆ける。
魔法補助具を手に持ち、いつものように壁に向かってかざす。
そして目を瞑る。
(……さぁ、やるぞ。俺はパソコンだ……。ならば、魔法論理は編集できる。イメージするんだ……)
ユキはイメージしたのは非常にシンプルなものだ。
////////////////////////////////////////////
speed = 2 ⇒ speed = 1
////////////////////////////////////////////
速度を少し遅くするというものだ。
(遅くなれ……遅くなれ……)
強く強く念じ、そして、放つ。
「……あ、あれ……?」
(気のせいじゃないよな……?)
心なしか魔法補助具から放たれた光弾の速度がゆっくりになったのだ。
ユキは慌てて、魔法論理の読み取りを行う。
すると、確かに魔法補助具内の魔法論理の数値が、ユキがイメージした通り(speed = 2 ⇒ speed = 1)に変わっていたのである。
そうして、ユキは魔法補助具内の魔法論理の改変を修得したのであった。
(うぉ……できる……。これつまり……実質、プログラミングができる……!)
実はものすごいことができるようになったのだが、ユキは別のことに喜んでいるのであった。