2-3.チュートリアル_3
リアルでの翌朝、コーヒーメーカーの前でようやく鷹野君を捕まえた。
「いきなり放置プレイはないんじゃないか?」
俺は開口一番に文句を言ったが、鷹野君はどこ吹く風である。
「後のことはハンナに任せておいた。特に問題なかったろ?」
「なんとかはなったが、気分的には問題だったよ。」
それに、結構な難問だったぞ。
「で、急用ってのは何だったんだ?」
聞いてみると、ミホークは、とある貴族からの呼び出しを受けたとのことだ。政治的情報を入手するには、政治に関わっている人物と仲良くなる必要がある。ミホークは少しずつ人間関係を築いている最中だそうだ。呼び出しを受けたのは、国をも動かす重鎮貴族との会合を調整してもらっていた貴族からで、何をおいても駆けつけなければならなかったのだと。
なので、俺のことは放置したのだと。
仕方ないと言えば、仕方ない。
俺は鷹野君といつもの会議室に陣取り、少し話をすることにした。
「事情は分かった。」
ただ、俺は、今、見知らぬ外国の町に一人で放り出されている状態だ。
オートマッピング機能が付いているおかげで、外を出歩いても迷子にはならないだろう。
だが、俺はそもそも出歩いて良いものなのかの判断も付かない。
ミホークが消えてから3日分ほど、自分の部屋にこもり、精霊言語プログラミングの本を読んで過ごしていた。
「聞きたいのが、ケージの身分のことだ。何の審査もなしに教団に居付いているが、ケージは町を出歩いて良いのか?」
教団員でもない、冒険者ギルドにも所属していないとなると、ヒロモンの世界では、俺は何になるのだろうか。
「ケージは普通に平民だ。称号はあるから特権的な地位も得ようと思えば得られる。しかし、そのためには、それなりの手続きが必要だ。そういう意味で、今は内層へは行かないように気を付けて欲しい。内層は貴族が主に住む町だ。身なりも常識も、今のケージでは少々まずい。身分の方は教団から身分証を渡す。リアルの明日には渡せる予定だ。」
まあ、ファンタジーな世界では、何者でもない人ばかりなのだろう。気にすることじゃないか。
それよりもさらりと格好のことを指摘された。
確かに、近所のコンビニにでも行きそうな格好だ。王侯貴族や騎士と出会っても、確実に見劣りするだろう。と言うか、失礼にあたる?
「了解。外層の方は大丈夫なんだろ。」
「大丈夫だ、問題ない。よっぽど犯罪者のように見えるか、騒ぎを起こさない限り、王都は出入り自由な町だ。正直、人が多すぎてチェックがしきれない状態だと言うのが実情だろう。」
教団に来るまでに外層の中を通りぬけて来たが、正直、広すぎて全部囲いの中だと言われてもイメージが湧いていない。
囲いも、外の方から柵だったり塀だったり、城壁とは名乗れないよねと思うものが何回か通ったが、それぞれが町全体を囲っているのかと思うと、チェックなんて端から無理だと思う。
町も賑わっており、人の数も多かった。
あれだけの人を、いちいち門でチェックなどはしていられないだろう。
平民として大人しくしていれば文句は言われなさそうだ。
「前に、山際さんと話した時は、王都では冒険者登録するようなことを話していたんで、冒険者ギルドに行こうと思っているのだが。」
「今は勧められない。」
外層は、さすがに身なりの問題じゃないよね。
「俺が世間知らずだから?」
「いや、時期が悪い。啓治さんは、公式サイトは見てないのか?」
「ああ、見てないよ。見てもテスト環境のことは載ってないわけだし。」
業務時間後は仕事のことを極力考えたくないと言うだけだ。家に帰れば、なるべくオフタイムを楽しみたい。
「なるほど。今、ゲームの世界は『魔獣の季節』と言うのを迎えている。モンスターの活動、繁殖が活性化する年だ。」
「それが冒険者ギルドと、どう関係するんだ?」
「逆に聞くが、リアルの世界では、今は何の時期だ?」
俺がテストにアサインされたのは4月からで、早いもので1ヶ月が経っている。
「ゴールデンウィーク?」
「そう、ゴールデンウィークだ。レジャー業界の書き入れ時だ。ゲーム産業も例外ではない。今はゲームユーザーのための討伐クエストが盛んに行われている時期だ。ゴールデンウィークのラストには、魔獣が町を襲う大規模イベントが行われる予定だ。その際、冒険者ギルドに所属していると、強制的に討伐イベントに参加させられることになる。」
「テスト環境はイベントの影響は受けないんじゃないのか。」
「いや、魔獣季節そのものは大陸全体での出来事だ。王都の冒険者ギルドでも、今は討伐隊の募集が盛んなようだ。」
君子危うきに近寄らずか。
冒険者ギルドにちょっとだけ入ってみたかったけど、今は止めておこう。
「冒険者ギルドに入らなくても、旅は続けられるよな。」
「問題ない。一部の遺跡ダンジョンは、冒険者ギルドの許可が要るようだが、そうした所に行くのでなければ、冒険者ギルドは特に入る必要はない。最終的な判断は啓治さんがしてくれて良いが。」
「分かった。冒険者ギルドへの加入は保留にしておく。」
宿に泊まるとかなれば、冒険者か行商人でも名乗らないと怪しいことこの上ないとは、先日のミホークのセリフだ。
俺の場合は、教団に泊まれば良いので、困ってない。素直に教団関係者ですと言う顔をしているのが一番だろう。
別の町でも冒険者ギルドに入れるだろうしね。
「次に、精霊語プログラミングと言う本を読んだ。あれは何だ。」
俺が精霊語の話題に触れると、鷹野君は少しだけにやりと笑った。口角が一瞬動いた程度だが。
「文字通り精霊語の本だ。向こうの世界において、魔法は全て精霊語により記述され、呼び出される。精霊語は人と人がコミュニケーションを取るための言語ではない。人が魔法とコミュニケーションを取るための言語だ。」
まあ、それくらいは本をざっと読めば分かる。
「魔道具作成のスキルを持っていると、ARに翻訳が出てくるのか?」
「いや、精霊語スキルを持っていないと翻訳は表示されない。精霊語スキルは開発者用のスキルだ。プレイヤーが身に付けることはできない。ファンサイトでは、精霊語を解析しようと言う試みもあるようだが、カードや魔道具を解析しても難しいだろう。」
「確かに。通常の言語ならともかく、プログラミング言語だもんな。通常の言語のつもりで解析すると混乱しそうだ。」
いや、それでも分かる人には分かるのか。世の中のマニアは凄すぎる人が多いからな。
「精霊語の理解は、魔道具の基本構造を理解した上で、魔道具の作成機を入手しないと難しいだろう。精霊語を実行し、結果を確認しないと意味は分からないだろう。」
「魔道具の作成機って、あのピザ窯みたいなやつか。」
「形状は色々ある。作成機は各教団か、いくつかの工房や研究所に僅かばかりあるだけだ。プレイヤーが触れる機会は、まず無いだろう。」
「作成機を持ってないと、魔道具が作れないのか。それにしては、日常の道具に魔道具が使われていたが。」
「作成機がなくても、魔法が閉じ込められた魔晶石を組み込んだ道具に、精霊語を刻み込めば魔道具はできる。素材から特定の魔道具を作成するのが作成機で、作成機にしか作れない道具と言うのがある。」
紋様を刻むとは、手書きであの複雑な図を書くと言うことか。彫刻スキルとかで道具にコンコンと打っていくのか。それは勘弁願いたい。面倒そうだ。
彫刻だけではできないのが、カードか。確かにユーザーが自由にカードを作れてしまうのは、ゲームバランスを考えると良くないことだ。
「魔道具の基本構造って何だ?」
「カードや魔道具には、必ず魔晶石が組み込まれている。プログラムの本体は魔晶石に記録されていて、カードや魔道具に描かれている精霊語によってプログラム本体を呼び出している。どちらかと言えば、精霊語は、プログラムの実行環境のコマンド群(注1)に近いな。」
「プログラム本体はいじれないのか。」
「作成や変更が出来ないこともない。ただ、プログラムの本体はバイナリデータ(注1)なので、向こうの世界から解析するのは骨だぞ。こっちの開発環境でコンパイル(注1)したものを向こうに置いてあるだけだからな。」
バイナリを弄るなんて勘弁だ。俺はインフラ屋なんだし。今時、アプリ屋だってバイナリを見る機械なんて稀だろう。
それにしても、魔法までもがデータとして扱えるのか。
ゲームの世界なのだから当たり前なんだが、ファンタジーにしては夢が足りない。
ただ、精霊語を覚えると、魔法に対する技術力が一段上がると言えるな。
「そう言った知識は、ハンナさんにはどこまで教えて良いんだ?」
「理解できるかはさておき、いくらでも良い。ハンナひとりに精霊語を教えたところで、向こうの世界の文明には影響ないだろう。」
「小説の世界では内政チートとか言う言葉があるけど、テストプレイヤーが文化や文明に影響を与えるような行動をしてしまっても良いのか?」
「cheatと言うからにはプレイヤーに利益が発生すると言う意味だろうが、そういうことにはならない。精霊語は先程も言ったように、魔昌石に記録されているプログラム本体を呼び出すことしかできない。そう言った知識すらも、教団や工房といった組織の中で秘匿されている。ハンナが精霊語を操れるようになったらからといって、向こうの世界の科学技術が発展することもない。一人の人間が文明に与える影響なんて、たかが知れている。」
まあ、ハンナさんは王侯貴族でもなければ、大商人でもない。一介の教団員だもんな。
それに、現代と異なり、ファンタジー世界は中世ヨーロッパのイメージなのだ。情報の伝達速度が遅いと考えられる。何かが流行ったとして、地域限定のブームにしかならないのだろう。
「それに、影響が出たなら出たで良い。プレイヤーが向こうの世界にどのような影響を与えるかを調べるのも、立派なテストと言える。」
俺もアプリ屋じゃないし、ライブラリを見ながら簡単なバッチが組める程度しかできない。ハンナさんに教えると言っても、コードの読み方を教えるのが関の山だな。
「それにしても、精霊語でプログラミングができるとはね。他にもありそうだな。」
こういったものは、ゲームデザインと言うか、ゲームのアーキテクチャには作った人の癖が出てしまうものだ。
「他にも向こうの世界の言語は、いくつかあるが、何らかの現象を引き起こせるのは精霊語だけだ。」
それは良かった。
あれもこれも覚えろと言われなくて…。
「そう言えば、ヒロモンの住人は外国語を話しているけど、あれはヨーロッパのどこかの言葉なのか?」
「違うな。オリジナル言語だ。アルダの言語やクリンゴン語(注2)などと一緒で、向こうの世界のためだけに作られた人工言語だ。」
「わざわざ作ったのか。」
「ヨーロッパの人間と言うのは、リアリティの追求には容赦ない気質があるようだ。それに、トールキンに負けたくないとか言っていたぞ。」
オタク気質は日本の専売特許ではないらしい。
「ん?開発者に知り合いが居るのか。」
人工言語の開発者とも知り合いとは、鷹野君の交遊関係は侮れない。
俺が聞くと、一瞬、間が空いた。
「そうか、啓治さんは知らなかったか。私はヨーロッパオフィス採用だよ。AIの実装がこっちのチームで行われるから日本に来たんだよ。」
どうやら高野君はグローバルエリートだったようだ。世界を股にかけるビジネスマン。ただのバックパッカーではなかったのか。
鷹野君の態度が偉そうなのは西欧風なのかな。
「言語もそうだが、魔法の仕組みの部分はヨーロッパオフィスでアーキテクチャを設計したんだが、私も関わっていたんだ。」
道理で詳しいはずだ。
「魔法の仕組みは、俺は知っておいた方が良いものなのか。」
難しいことは覚えたくないのだがと言うニュアンスを込めて言ってみた。
「もちろんだ。魔法の仕組みを理解していないと、魔道具も何もない。ケージさんには、魔道具の専門家として各地を回ってもらうと言う名目がある。」
空気を読んでくれるのは純正日本人だけなのか、鷹野君は容赦ない判定を下す。
俺としては、詳しくは知りたくないですと言う空気を漂わせてみたんだが。
これは腰を据えて話をしないとならなさそうだ。
鷹野君は、フットワークが軽いくせに、融通が利かなさそうな性格しているんだよな。そのくせ、他人に対しても自分と同レベルで物事を考えていると思っているというか、頭が良い人にありがちなことでもあるけれど。
なので、魔法のアーキテクチャも本気で学習しないと怒られそうだ。
「少し不思議なんだが、魔法って、物理法則はどうなってるんだ。物理エンジンはエラーを起こしたりしないのか。」
これでも理系だ。疑問くらいは持っている。
何もない空中から火が現れるのだ。そのエネルギーは、どこから来ているのだろうか。
小説やゲームでは、それらしい説明をしているものもあれば、説明することを最初からしないものもある。
「そうだな。
向こうの世界は、3層アーキテクチャで考えると分かりやすい。プレゼンテーション層、アプリケーション層、データ層だ。向こうの言葉では、物理層、魔法層、精霊層だ。
人が暮らしているのが物理層。目に見える、結果が現れると言う意味でプレゼンテーション層だ。シミュレーションのための各種エンジンが実装されているのもこの層だ。この一層だけで考えれば、質量も熱量も保存されている。我々の常識の世界とも言える。
次に、魔法層は無限の質量と熱量を持った仮想空間だと理解してくれ。プログラムが実行されるのでアプリケーション層だ。炎を出す魔法カードがあったとしよう。魔法カードの精霊語はどれも共通の紋様だ。最初に魔法カードを手に持つ者の魔力を抽出し、魔晶石の魔法を起動する。魔晶石には炎を出す魔法が登録されている。起動された炎の魔法は、魔法層の中で実行される。つまり、精霊語がキーボードからのコマンド入力で、魔法の実行はコンピュータの中で行われるのと同じだ。最後に、魔法が魔法層で実行された結果を物理層に出力する。hello world(注3)と言うわけだ。
この時、物理層に呼び出されたものが占める空間にあったものは、そのまま魔法層に追いやって破棄している。正確には、魔法によって何かが発生した場所と重複している部分が破棄される。例えば、魔法カードによって炎の弾を出したとしよう。炎の弾はそこにあった空気と入れ替わって現れる。この場合、世界において体積に変化はないが熱量と質量は増加することになる。質量と熱量は魔法によって保存されないわけだ。」
すまないが、俺はアプリ屋じゃないし、理学屋でもないんだ。その喩え、分かりにくいよ。
期待したよりも複雑に回答されてしまった。情報量が非常に多い。
鷹野君を始め、アプリ屋さん達は、ゲームと言うか、世界を作ろうとしているのだ。複雑な理屈が山のように実装されているのだろう。
「残る精霊層は、どう影響してくるんだ。」
「精霊層をデータ層と捉えると分かるだろ。ライブラリ(注1)や保存データが置いてあるストレージだ。」
精霊=データね…。
「魔法はライブラリだ。No.001の魔法はNo.001の魔法として関数のように動きが規定されている。精霊語を使って、連続10回呼び出す等のバッチを作ることはできるが、魔法の中身を変更することはできない。
一方、人やモンスターのデータは個体ごとに保存されている。例としてNPCの誕生を挙げよう。NPCが誕生するとき、ライブラリから人の基本データが呼び出される。これに対して、両親から受け継ぐ資質が加えられる。固有のIDが振られて保存される。ちなみに、基本データ部分は日々アップデートされているが、既存のNPCには差分が反映されない。個体データへの変更は、誕生プロセスの中からしか変更できないしようになっているからだ。人も社会も世代が変わらないと変わらないと言う思想があるのかも知れないな。」
説明の最後が哲学的だが、なんとかついていけた。
魔法がバイナリデータだと言うのも何となく分かった。
魔法がライブラリの一部なんだとすると、プレイヤーやNPCの誰かが新しい魔法を開発することは無理そうだ。
魔法は作れない、これはシステムの制約なんだろう。
一方で、制約には回避方法がある。精霊語でバッチを組めば、見た目は新しい魔法が作れないこともなさそうだ。
それにしても、NPCの個体のデータ量がどれくらいかは分からないが、モンスターも含めて変更できるものが全て個体として保存されているとすれば、ゼタ(注4)でも容量が足りないはずだ。
「色々まとめると、ヒロモンの世界をひとつのコンピューター環境とみなすと、作成機や精霊語を刻んだもの操作するための端末で、魔晶石がアプリケーションと言えるのか。」
「大雑把に言えばそうだ。ケージさんの手元には、精霊語の本もあれば、各種の辞典もある。KTはここまでで大丈夫だな。」
「KT?チュートリアルじゃなくて?」
俺が自分でも分かる驚いた顔をしているのを見て、鷹野君は何を今さらと言う顔をして言った。
「ゲームのプレイ方法なら家に帰って新規アカウントでも取れば、学べるだろう。ゲームの開発側に居ることにより知ることのできる知識を与えることこそ、私がすべきKTではないか。これだけの知識があれば、後は一人でも生きていけるだろう?」
それはどうだろう?
確かに、教団員の身分もくれて、魔道具のメンテナンス員と言う仕事もくれて、仕事に必要な(?)知識ももらったが…。
うん、まあ、きっと大丈夫だろう。
改めてと言うか、ようやく分かった。鷹野君に何かを期待するのは無駄だ。いろいろ教えてやると言われたが、方向性が明らかに違った。
「分かった。後は自分で何とかするよ。」
俺がそう言っても、鷹野くんは当たり前だと言う顔をしている。
「話は終わったな。私は向こうの世界に行く。そろそろ夜が明けるからな。では失礼する。」
鷹野くんは、すっと立ち上がると、振り向きもせずに出ていってしまった。
この、思い立ったが吉日的な行動は初めて会ったときと同じだ。
俺は、当たり前だが自分のことは自分で決めようと思うのであった。
注1
コマンド群、バイナリデータ、コンパイル、ライブラリ等のコンピュータ用語は無視しよう!
知らなくてもストーリーは進められる。
注2
アルダの言語:『指輪物語』シリーズに出てくる人工言語群。
クリンゴン語:『スタートレック』シリーズに登場する宇宙人、クリンゴン人が使用する言語。人工言語。
ちなみに、トールキンさんは指輪物語の作者。
注3
hello world
プログラミングの勉強をはじめる際、最低限の機能と出力をしてみるため、例として使われる有名な文言。
C言語を使って画面に文字を表示してみましょう、みたいな例題。
注4
ゼタ
ゼタバイト。とにかくいっぱい。
ストレージ(ハードディスクとかメモリとか)の容量の単位。
キロ<メガ<ギガ<テラ<ペタ<エクサ<ゼタの順に千倍ずつ繰り上がっていく。




