#032 暗中模索
「――ねえ、香田君。抽象的な意見だけど……ちょっといい?」
「ん? もちろん」
魔法を創ることが困難で悩み苦しんでいる俺へと気を遣い、丁寧に確認をしてくれる深山だった。
今は正直、どんな意見でも欲しい。
「これは勉強してる時の経験則なのだけど……壁に当たった時、わたしは出来る限り基本に立ち返って、そこからわかっていることを、ひとつひとつ手繰り寄せて前に進み直すの」
「出来る限り基本に立ち返って……か」
「うん。わからない時って『何がわからないか』をわかっちゃったら、もうほとんどわかったようなものだとそう思うの」
「何が、わからないのかを……」
俺は今、魔法の実行の仕方がわからない。
もっと具体的には、どうやって文として記述すれば良いのかわからない。
ルールが見えてこない。とっかかりが掴めない。
システム的には問題が無い。深山はあの文を実行可能らしい。
なら、なぜ実行されない?
何が足りない? 何かが邪魔をしている?
何が……?
「何だろう……魔法を実行する上で、何が足りない?」
「ね、香田君。もっと基本に戻ろう?」
「基本って……どこだろう」
俺は完全な思考の迷子だった。
これ以上、巻き戻れる場所なんてあるのだろうか?
「車とタクシー、とかは?」
「え」
「香田君が例えで出してくれたあの説明って、そんなに的外れじゃないと思うの。成立しているタクシーから改めて考えてみませんかっ?」
「……うん。そうしてみる」
ちょっと頭の中で整理してみた。
「タクシーは……」
「タクシーは目的地を伝えるだけで、あとは必要な金額が請求されて自動的に車で送ってくれるサービスである――だよね?」
一度だけ聞いた話のはずなのに、深山はスラスラと全文を出してくれた。
こうやって負担無く客観的に聞けるだけでも非常に助かる。
「ありがとう。じゃあ改めて置き換えてみようか。つまり呪文は、目的の呪文を唱えるだけで、あとは必要な魔力が消費されて自動的に魔法を放ってくれるシステムである、と」
「うん。じゃあ車の場合……」
うーん、と少し深山は思い出して。
「車はガソリンを消費することで相応の距離、速く移動出来る乗り物である――だったと思う」
「うん」
……つまり、どうだ?
「つまり……魔法は、魔力を消費することで相応の時間、属性効果を発揮できるシステムである、と――……うん?」
「え? 何か気が付いたこと、あるのっ?」
深山は身を乗り出して俺に問う。
「いや。大した話じゃないけど……そもそも、この例え自体が間違ってることに気が付いた。しかも車じゃなくて、タクシーのほう」
「どう間違ってるの?」
「タクシーの金額の請求は、実際には目的地に到着してからだなって」
「うん、そうだね。だとすると……タクシーは目的地を伝えるだけで、あとは自動的に車で送ってくれて最後に必要な金額が請求されるサービスである――みたいな感じでいいの?」
「それでいいと思う。たぶん俺は呪文に置き換える時のことを意識して、都合が良いようにそう手順を捻じ曲げて深山に伝えたんだと思う。つまり実際の車とタクシーでは、コストを消費するタイミングが違うのか。車は乗っている間、逐一減るのに対して、タクシーは最後にまとめて支払われる」
まあこれは車とタクシーの差の話であって、魔法と呪文にそのまま置き換えられるものでもない。
このディスカッション……深山には悪いが、単なる現実逃避に思えて来た。
「ううん、それ、厳密には違うと思うの」
「違う?」
「支払うコストの内容が揃ってない。タクシーの料金をコストとするなら、車も電気やガソリンを補給する時の『料金』で語らないと、比較として――」
「――それだっ!! 『取り出し』かっ!!!」
「きゃっ!?」
「深山、誓約紙!」
「は、はいっ」
ついつい忘れてた。
魔法は直接操作なのだから、主要な要素についてあらゆるものを管理しなきゃ成立しないってことに。
「魔力の取り出し……つまり変数の定義、みたいなものか?」
「?」
深山には悪いが、とりあえず文を完成させる。
解釈がまだ間違ってるかもしれないしな。
「――……こういうので、どうだろう?」
『■エムフレイムについて』
『{以下は魔法<エムフレイム>についての一連の記述である。』
『 <ミャア>が<エムフレイム>と宣言した時、』
『 まず、10の魔力が<ミャア>自身より取り出され、用意される。』
『 次に人差し指で方向を示した時、』
『 用意された10の魔力を消費しながら1m四方の大きさの炎を』
『 10m先に3秒間発生させる魔法が実行される。}』
「あ……書けた……」
少なくともシステム的にはOKを出してもらえた。
「深山っ!」
「う、うんっ。いきます……エムフレイム!!」
深山がやや緊張の面持ちで人差し指を正面の何も無い空間へと指し示す。
すると――
「きゃあっ!?」「きたあっ!!」
――ゴウゥッ……!!!
まさに記述そのもの。
深山が指で示した10m先の空中が一瞬で1mほどの炎で満たされる。
その炎が『ファイア』とは比較にもならない高熱なのは、その色だけでなく、じりじりと伝わってくるこの熱線の量でも文字通り痛いほど理解出来た。
ざっと見て2~3倍は強力に思える。
「深山っ、深山っ!!」
「こ、香田君っ!?!?」
嬉しくってつい、深山を強く抱きしめてしまっていた。
深山が目を白黒させて驚いている。
「ありがとうっ、深山!!」
「あ、あのっ、こ、腰にっ、手がっ……」
俺は感動で、もうそんなの知ったことではない。
このまま深山を胴上げしたいぐらいの気分だった。
「ねっ、何が原因だったの……?」
「ガソリン!!」
ああ、興奮がなかなか収まらないっ。
「ガソリンを入れないで車を走らせようとしていたんだ、俺!」
「あっ。タクシーみたいにまとめて後から支払おうとしてたってこと……?」
「そう、その通り。炎を発生させる時、それに相応な魔力が消費されるなんて、そんなの実行出来るはずがない! 文法は間違ってないから実行は出来るけど、燃やす燃料が無かったんだ! 車にガソリンが無くても、運転席に座ってアクセルを踏むことは出来ることと同じ!!」
もう少し言えば、魔力の管理が全然ダメだった。
『相応の魔力』って何だよって話だ!
直接操作でそんな曖昧な指定、無理に決まってるだろ?
「つまり……『どこ』から『何』に『どれだけ』使うのか。言われてみればごく当たり前な話だけど、それぐらいの自己管理が必要だった!」
コロンブスの卵じゃないが、問題発見っていつもこうだ。
こんな簡単なこと、どうして気が付かないのかと呆れてしまう。
「それが『変数の定義』なの……?」
「そう。プログラムでは『変数』と呼ばれる情報を入れる箱を用意するんだけど、それは多くの場合、使うより前に『どんな箱か』を明確に指定する必要がある。同じように、<エムフレイム>が魔法であることや、どれだけの魔力が使われるかも事前に指定しておくべきだったんだよっ」
そこが最大の勘違い。決済の順番が逆だった。
まず先に炎があって、それに相応しい魔力が消費されると思い込んでいた。
『魔法』という語句で、ゲーム的発想に囚われていた。
ではなくて、出した魔力に相応しい炎が発生するのだ。
炎=5、ではない。
3の炎も、5の炎も、100の炎だって存在する。
自然の世界はもっと柔軟に出来ているのだ。
「人間相手ならいきなり<エムフレイム>って叫ばれても『ああ、魔法使うの? じゃあ魔力頂いていくね?』って意訳して処理してくれるけど、機械のシステム相手なら事前にちゃんと設定してあげないと受け付けられないって理屈」
踏み込んで言うなら、誓約の処理が本人の解釈によって進められるのに対して、魔法というシステムはたぶんこのゲームのプログラムそのものだ。そこに受け皿としての柔軟性の違いがあるから、誓約紙上では成立してるのに、魔法のシステム上では処理出来ないというギャップが生じたのだろう。
「うん……わかった、と思う」
「――あれ、じゃあ……」
「え?」
深山の誓約紙のエムフレイムについての文を修正する。
『 10m先に1秒間発生させる魔法が実行される。}』
「よし深山、エムフレイム撃ってみて。……あ、直視しないように気を付けて」
「はい……では行きます。エムフレイムッ!!」
――ゴウウゥゥッッ……!!!!!
「ひゃあっ!?!?」「うわっとぉ!!!!」
こっちも事前に気を付けたつもりだが、それを上回る大迫力。
時間は1秒と短いけど、でも『その分』さらに熱量が明らかに上がった。
「香田君、これは……?」
「同じ10の魔力でも、より短い時間に費やすということは、それだけ一瞬の威力が上がることを意味するんだよ。同じ水の量をホースで流す時、短い時間で流すほうがもちろん勢いは増すだろ?」
「うん……良くわかる!」
深山なりに楽しんでくれているみたいで嬉しい。
ふたりでテンション上がりまくりだった。
「同様に範囲を狭くしても、さらに威力は上がる理屈だろうな。まさに水が流れ出るホースの口を狭めるような行為だ」
「香田君、それもやってみませんかっ?」
「だな、ひとつひとつ確認してみよう」
『 用意された10の魔力を消費しながら50センチ四方の大きさの炎を』
――こうやって数値を半分にすると、炎の勢いは4倍ほどになった。
当然だ、面積は25%まで狭くなったのだから。
最初のエムフレイムから比較すると、計算上は12倍。
そしてただの『ファイア』と比べるならきっと20倍以上の攻撃力を持っていることになっているだろう。
さすがに危なくて深山も絶対に了承しないし、具体的な数値を受けたダメージで算出出来ないのが非常に悔しいところだ。
「なあ深山。次はファイアボールみたいなものを創ってみてもいいか?」
「うんっ、実験はわたしに任せて♪」
ブレイクスルーの歓喜の中、このまま次のステップに突き進む。
……しかしその喜びも束の間だった。
◇
「――うううぅぅんん???」
いつだって、物創りはこうだ。
すぐに次の壁がやってくる。
『■エムフレイムバレットについて』
『{以下は魔法<エムフレイムバレット>についての一連の記述である。』
『 <ミャア>が<エムフレイムバレット>と宣言した時、』
『 まず、10の魔力が<ミャア>自身より取り出され、用意される。』
『 次に人差し指で方向を示した時、』
『 用意された10の魔力を消費しながら30センチ大の球状の炎を作り、』
『 示した方向へと時速50キロの速さで20m直進し、』
『 到達点である20m先に到達あるいは』
『 その直進途中で進行を防ぐ障害物に衝突した際に、』
『 球状の炎が全方向へと炸裂する魔法が実行される。}』
「……表記は問題無い……よなぁ?」
「困ったね?」
深山の目の前には、30センチ大の球状の炎がふわふわと浮いていた。
そう、空中で静止しているのだ。
「深山。危ないからそれ、とりあえず消しておくよ」
「うん」
深山が充分に後ろに下がったのを確認してから、その球状の炎へ石を投げ込む。
ボゥ……と弱く炎が広がり、それだけで消えてしまった。
「んー……」
最後の炎の膨らみも全然『炸裂』じゃない。
動作が複雑になった途端、こんな感じで色々と欠陥だらけだった。
「……ガソリンが足りないの?」
「いや、魔力10ってことは、呪文のファイアボールと同じ量だ。これで足りないならわざわざ魔法を創る必要はない――というか、無駄が多いはずの呪文より威力が弱くなるはずがないんだ。本来は」
少なくとも出てきた火球は、エムフレイムと同じで呪文以上のかなりの熱量を感じた。ではなぜ直進しない? なぜ炸裂がこんなに弱い??
「深山、何か気が付いた点はない?」
「ううん……ごめんなさい。特には何も……」
「う――ん」
なかなかのお手上げ状態だった。
ならば。
「また、深山方式で行こうか」
「あ。うん、基本に立ち返るのね?」
そう。そして俺たちの基本は車とタクシーだ。
「今回の場合は車が故障してるってことだ。車はある。ガソリンも入れた。でも走らない……なぜだろう?」
「ブレーキが入ってる、とか?」
「なら、そもそも炎が出ない気がするんだ。炸裂の件も気になるけど、問題をとりあえず移動に絞ろうか」
俺は完成しているエムフレイムの文に手を入れることにした。
『■エムフレイムについて』
『{以下は魔法<エムフレイム>についての一連の記述である。』
『 <ミャア>が<エムフレイム>と宣言した時、』
『 まず、10の魔力が<ミャア>自身より取り出され、用意される。』
『 次に人差し指で方向を示した時、』
『 用意された10の魔力を消費しながら1m四方の大きさの炎を』
『 10m先に3秒間発生させ、』
『 その発生の間、20m先へと移動する魔法が実行される。}』
後ろ2行にちょっとだけ手を加えて、移動するように加筆してみた。
「深山。ちょっと撃ってみて」
「はい、エムフレイム……!!」
――ゴウゥッ……!!!
深山の10m先に炎が発生して……そのままだった。
移動することなく、3秒後に消滅していく。
「んー……なぜ動かない」
「無視されちゃってる感じよね」
無視。そう、確かに無視。
『そんなこと出来ない』ってスルーされちゃってる。
なぜ出来ない? 指定の仕方が悪いのか?
「くそぉ……せめてエラー吐いてくれっ……」
まあそんな上等なモノを求めるなら直接操作なんて止めろって言われてしまうのだろうけど……膨大な遺品を創って残した先人の偉大さをこんなところで実感してしまった。
まさに大昔のパソコンって、絶えずこんな感じだったんだろうなぁ。
「なぜ命令を無視する? なぜ止まる?」
「ううん、香田君。『止まる』じゃなくて『動かない』だよ?」
「いや、そういう意味じゃなくて、順番に熟すはずの命令が止まるって意味で――」
ふと、気が付く。
「ああ、それも思い込みか!」
「問題見つかったの?」
「たぶんっ」
色々と手を加える必要がありそうだった。
『■連続実行について』
『{以下は<連続実行>についての一連の記述である。』
『 誓約の一連の記述内で<連続実行>と宣言した場合、』
『 以降に続く連続した誓約の命令は文頭に書かれた数字に則り、』
『 若い数字から順次、滞ることなく速やかに実行される。』
『 また、文頭の数字が同じ命令は同時に処理される。}』
まずは処理分割化の実験も含めて処理のルールを創る。
そして。
『■エムフレイムについて』
『{以下は魔法<エムフレイム>についての一連の記述である。』
『 <連続実行>』
『 1.<ミャア>が<エムフレイム>と宣言した時、』
『 10の魔力が<ミャア>自身より取り出され、用意される。』
『 2.人差し指で方向を示した時、』
『 用意された10の魔力を消費しながら1m四方の大きさの炎を』
『 <ミャア>の示した方向10m先に発生させる。』
『 2.その炎は3秒間、位置にこだわらず発生を維持する。』
『 3.その炎は3秒間、<ミャア>の示した方向20m先に移動する。』
『 以上の一連の魔法が実行される。}』
「――これで、どうだ?」
「あの……そろそろわたし、ついて行けないかも」
逆を言うと今までは何とか深山なりに解釈を進められていたらしい。
分野外だろうに、それは凄いと思う。
「深山はなんとなくで読み流してていいから、あとは任せて。それじゃテストでさっそく撃ってみてくれる?」
「は、はいっ……エムフレイム……!!」
――ゴウゥッ……!!!
まずは誓約記述の処理分割化は成功、と。
無事に深山の10m先に炎が発生して……でも、そのままだった。
やはり移動することなく、3秒後に炎は消滅していく。
「何が……足りないっ……」
いよいよもって、誓約記述との睨めっこが始まった。
「あの……香田君。素人だけど質問、いい?」
「うん、もちろん。何?」
「この1、2、3って分割してるのは、実行するお願い事に順番をつけて……つまり3つのお願い事を続けてしているのよね?」
「ああ、そうなるね」
「純粋に疑問なんだけど……つまりこれって、ただ車を運転するだけのお願いと、車で運転してさらに移動先で買い物までお願いしてる違いに感じるの。それって同じだけのガソリン代で大丈夫なの? 買い物代とか、必要ないの?」
「あーっ!!!」
もう完全にこれは深山に完敗だった。
「凄い! 深山、凄いっ!!」
「えっ、ええっ!? そんなことないけどっ」
「あとは任せてとか言ってて……俺、恥ずかしいよ」
「ううん、ううんっ、わたしの考え、間違ってるかもしれないし……!」
「いや。たぶんそれで正解」
これ、個別の命令に対してコスト概念のないプログラム的思考の弊害だ。
……そうかぁ。プログラマーは機械を奴隷にし過ぎてるんだなぁ。
『■エムフレイムについて』
『{以下は魔法<エムフレイム>についての一連の記述である。』
『 <連続実行>』
『 1.<ミャア>が<エムフレイム>と宣言した時、』
『 10の魔力が<ミャア>自身より取り出され、用意される。』
『 2.<ミャア>が人差し指で方向を示した時、』
『 用意された内で4の魔力を消費して1m四方の大きさの炎を』
『 <ミャア>の示した方向10m先に発生させる。』
『 2.その炎は3秒間、用意された内で4の魔力を消費して』
『 位置にこだわらず発生を維持する。』
『 3.その炎は3秒間、用意された内で2の魔力を消費して』
『 <ミャア>の示した方向20m先に移動する。』
『以上の一連の魔法が実行される。}』
それぞれの命令に対して、相応と感じる報酬を与えてあげた。
たぶん発生と維持に費やしている以上、単純な移動にはそんなにコストなんて必要ないと思うけど、万が一不足して実行されないことを考えると、とりあえずは手厚く与えることにしておいた。
「深山、何度もごめん。またテストお願い。たぶん上手く行く」
「ううん、何度でもやるから気にしないでね? ……では参りますっ」
深山も期待してくれているのか、今までより少し緊張した面持ちで。
「――……エムフレイム!!」
「きたあっ!!!」
ゴウッ……と唸りを上げ、炎がかなりの速度で遠ざかって行く。
期待通りの成功だった。
「ありがとうっ、深山っ」
「きゃあああっ♪」
感謝の気持ちをボディランゲージで示す。
もちろん深山も喜んでくれることを意識しての行動だったけど、それだけじゃなくてやっぱり純粋に抱き合いたいほど嬉しかった。
「じゃあ、最後に炸裂だ!」
総仕上げと行こう。
ついでに不必要そうな記述を削って、軽く整えてみた。
『■エムフレイムバレットについて<連続実行>』
『{以下は魔法<エムフレイムバレット>についての一連の記述である。』
『』
『 1.』
『 <エムフレイムバレット>と宣言した時、』
『 魔力10が取り出され、用意される。』
『 2.』
『 人差し指で方向を示した時、魔力3を消費して、』
『 30センチ大の球状の炎を1m手前に作る。』
『 3.』
『 魔力2を消費して、<2.>で示した方向へ
『 時速50キロの速さで20m直進する。』
『 4.』
『 到達点である20m先に達した場合は<6.>を実行する。』
『 4.』
『 進行を防ぐ障害物に衝突した場合は<6.>を実行する。』
『 4.』
『 もし<1.>より3秒が過ぎた場合は<6.>を実行する。』
『 5.』
『 もし<4.>のいずれにも該当しない場合は状況を維持する。』
『 6.』
『 魔力5を消費して、球状の炎が全方向へと炸裂する。』
『』
『 以上。}』
うん、多少は読みやすい。
ただし深山の誓約紙にはいつの間にかびっしりと命令文が綴られており、残りわずかあと一行である。
特にこのエムフレイムバレットは地味に制御が複雑だ。テストが終わったらすぐに消してしまおう。
「ではお待たせ。深山、お願い!」
「はいっ、エムフレイムバレット……!!」
――ゴッッッ……!!!
火球が勢いよく深山から飛び出し、20m先の空中で。
――パァァン……!!
「やったぁ! 香田君、やったねっ!!」
「…………うん」
深山は喜んでくれたけど、俺としてはかなり不本意だった。
「どうしたの? 何か、問題あったの?」
「深山。昼間に呪文で撃ったその倒木目がけてやってみて」
「あ、はい! エムフレイムバレット……っ!!」
パァン……と乾いた音が鳴り、倒木の樹皮が軽く弾け飛ぶ。当たった表面は、しっかり黒く焦げていた。
「……あ」「な?」
炸裂の威力が全然足りなかった。焦げについてはむしろ呪文版よりしっかり炙られている感じがするし、純粋な火力不足という感じでもない。
「一難去って、また一難、か」
炸裂に使用魔力量の半分である5も使ってこれじゃ、お話にならないぞ?
「炸裂って表現がマズいのかなぁ?」
「……破裂?」
「うん、とりあえずそれで行ってみよう」
「はいっ」
――結果はまったく変わらなかった。
『まったく変わらない』というのが少し気になる。
「深山。たぶん同じ結果だけど『爆発』でもう一度確かめてみていい?」
「だから香田君っ。遠慮なんて必要ありませんからっ!」
誓約紙の表記を『爆発』に直してまたトライ。
半ば予想通り、またしてもまったく結果は変わらない。
「――表現の問題じゃないってことかな」
内部でどんな処理がされているのか正確なところはわからないが、結局は深山の誓約紙に書いている以上は深山本人の解釈に委ねられているところが多少なりあるはずだ。
誓約紙の文章を深山が無意識に実行可能な命令として随時、内部変換して、それをシステムが魔法として実行する。そういう仕組み。
つまり漠然としたイメージで表記する限りは、ファイアボールの『炸裂』しているイメージに深山が引っ張られてしまう。
だからどんな文章の表現でも結果に大きな差が発生しない。
じゃあ、深山を説得すれば解決か?
「いやいや、そういう問題じゃないか……」
「……ふふっ」
独り言をつぶやいて悩んでる俺を、深山が眺めてまた喜んでる。
ちょっと恥ずかしいけど、でも、つまらないとボヤかれるよりずっと有り難い。
「……結局は、どんな派手な表現をしてもそれが実現出来ないなら意味がない」
例えば『弾道ミサイル並みの大爆発』とか書けば深山の固定されたイメージは払拭出来るかもしれないが、同時にそれを実行出来る膨大な魔力が現実的に必要となってしまう。
……つまり、深山のイメージに頼らない、何かの『炸裂』という結果の現象を起こすギミックを内部で実行させればいいのか?
――よし、今回は珍しく自力でここまで導くことが出来た。
「基本に立ち戻る、か」
「はいっ。また車?」
「……ううん、今度はファイアボールという基本に戻りたい」
「というと……?」
「呪文で撃ってみて。挙動とか色々観察したい」
「はいっ、わかりました香田博士っ!」
「博士って」
深山は嫌な顔ひとつせずに、目の前で何度もファイアボールを撃ってくれた。
こうして地道な実験を繰り返す上で、深山の魔力容量の大きさが非常に有り難い。
もしこれが数発で空になるような一般的な容量であったなら、ここまで辿り着くのにどれだけの無駄な待機時間が必要だったろうか?
待っている間に心が折れたり、あるいは色々と妥協していた気がする。
そうして何度も何度も観察している中で、むしろ気が付くのが遅いぐらいに必然でひとつの事実を俺は見つけた。
「――縮んでる……!!」
「えっ」
そんな難しい理屈でもなかった。
ファイアボールが炸裂する直前の一瞬、火球が半分以下のサイズにギュッと縮んでいた。つまり、圧縮されたエネルギーがあるから解放――炸裂が強烈になるという、至極真っ当な物理のお話だった。
「ああ。もう……このゲーム脳はっ……!」
またしても固定観念が邪魔をした。
現実の物理や化学反応より『ファンタジーの魔法だから』というよくわからない理由が勝ってしまっていた。確かに何もないところから炎は出てくるけど、その出てきた炎は物理の法則に従って振る舞っているのは、炎が上に揺らめいていることからも簡単に察することが出来る。
燃えて暖められた空気は上へと向かうし、乾いた枝が熱せられれば引火もする。
つい昨日、3人でポラポラ焼きを食べたというのにすっかり忘れていた。
「じゃあ……こんな感じで、成立するのだろうか?」
記述の最後の辺りに少しだけ手を加えることにした。
『 6.』
『 魔力4を消費して、球状の炎が全方向から圧縮される。』
『 7.』
『 魔力1を消費して、球状の炎が圧縮から解放されて炸裂する。』
あえて具体的な圧力の強さなどは書かなかった。
そのほうが消費する魔力なりの効果を発揮してくれることが繰り返される実験の中で経験則的に実感出来たからだ。
「さ、深山。答え合わせだ。撃ってみてくれ」
「はい!」
さすがわかっている深山は、倒木の幹へと方向を示して叫ぶ。
「エムフレイムバレット……!!!」
――ゴッッッ……!!!
勢いよく飛び出した火球は幹に衝突したその瞬間、限界まで圧縮させ、強力なエネルギーを蓄えて――
――バアアァァァァンンッッッ……!!!!
倒木の幹本体を粉々に破壊させていた。
明らかにこれは、元の『ファイアボール』の2~3倍以上の破壊力をもたらしていた。
強いて言えば燃焼はあまり見られなかったので、火球を精製するプロセスでもう少し魔力を投入すれば熱量は向上するかもしれない。
「深山っ! やった!!」
「はいっ!!」
両手を上げて俺が喜んでいると。
「……っ」
うん?
深山がぎゅっと身を縮ませ、黙って俺を見つめていた。
「……ああ、はいっ!」
「きゃっ♪」
遅れて、彼女の期待に気が付いた俺。
待ってましたとばかりに抱きしめられて素直に喜んでくれる深山だった。
「ヤバいっ! プログラマー的にすげぇ面白い、これっ!!」
「ふふふっ、香田君の瞳、子供みたいにキラキラしてるっ♪」
今のところ深山の属性である火に限定した操作ではあるが、まるで現実の世界を構築していくような全能感がある。
もっと、知りたい。
もっともっと、凄い魔法を組みたい。創りたい。
「よし深山! 細かいデータを取りたいからもうちょっと付き合ってくれ!!」
「はいっ♪ どこまでもずっとずっと……お付き合いますっ!」
こうしてふたりで、夕暮れまであらゆる実験を繰り返した。
そう。いつの間にか日中の8時間なんてものは簡単に経過していたのだった。





