3-2.シミュレーター
小休止を取るため、ログアウトする。
ヒロモンの世界では王都からエブン港町まで旅をしてきたが、リアルの世界では2日目だ。
会社での連泊仕事も始まったばかりなので、気持ちも体もまだ慣れない。昨晩は、ほとんど寝ずに過ごしてしまった。
ヒロモン世界の丸1日はリアルの4時間だ。3時間ごとに1時間の睡眠を取る、レオナルド・ダ・ヴィンチのような生活をしなければならない。できれば5時間くらいまとめて眠りたいところだが、そんなに長時間ログアウトしていると、ヒロモンの住人から不審がられてしまう。
小刻みに眠る生活に慣れないと、これから1週間以上もの廃人生活を乗り切れやしない。徹夜なんてしている場合じゃないのだ。
世間は15時過ぎ、昼飯を食べた後の眠気を何とかやり過ごし、仕事に集中し始めた頃だろう。
俺は、そんな静かな会社の中で、ひとりトイレを済ませ、いつものベンディングマシン・コーナーに行った。
すると先客に山際さんが居た。
山際さんとは、なんとなしに出会う。もしかしたら、俺のログイン状況をモニタリングしていて、タイミングを合わせて会いに来てくれているのかも知れない。
「函崎さん、調子はどうですか。」
いつものように、にこやかに話しかけてくる。
「なんか生活のリズムがつかめないですね。昨日も思わず徹夜してしまいました。」
「それはいけないですね。難しいでしょうが、ところどころ仮眠を取られた方が良いですよ。」
「そうなんですけどね、町中に居るのと違って、旅をしていると常に周りに誰か居るんですよ。どうもログアウトもし辛くて。」
「そうですね。函崎さんは一人でプレイされてますからね。」
俺は山際さんの呟きに少しだけ引っ掛かりを覚えた。
「ヒロモンって、一人プレイが基本ですよね。」
「函崎さんはカプセルですから、専用アカウントに成らざるを得ませんが、研究チームや他のテスターはPCを使ってプレイしてます。アカウントを共有しています。2交代制以上のシフトでプレイしていることが多いんですよ。」
「そうだったんですか。じゃあ、会社に泊まり込みしているメンバーも、何日も徹夜でゲームしているわけじゃないんですね。」
「そうですね、そんなことをさせたら労基法上、かなり問題ですから。」
俺は問題行動の真っ最中なんだがな。
「鷹野君に、みんな会社に泊まり込んでヒロモンを廃人プレイしているって聞いていたので、他のメンバーもてっきりそうなのかと思ってました。」
「いや、鷹野君は特別です。彼はサービス開始以前から、ほとんどログインしっぱなしですよ。」
特別になれない(なりたくない?)俺としては、鷹野君の真似をしないですむ方法が知りたい。
「函崎さんが倒れないように、対策を打たないとなりませんね。」
山際さんも俺のことを気遣ってくれる。いい人だ。
「カプセルですとアカウントの貸し出しはできませんから、何とか鷹野君の真似をして細切れの睡眠に慣れるようにしますよ。」
特に、俺が使っているカプセルは生体データを取得するために、かなりチューニングされている。他人は使えない仕様だ。
「模倣AIを借りて来ましょうか。」
山際さんが少し考えた後、言った。
模倣AIか、確かにあれを使えば俺は長時間のログアウトが可能だが、気は乗らない。
「そうですね、それもありですが、使わなくても良いですね。」
「気が進みませんか。」
「ええ、どうもイメージが悪いんですよね。それに、模倣AIの対応も、まだまだ質が悪い様で、使った後のフォローが大変なんですよ。」
実際、子供にすら変だと言われ、関係修復に苦労させられた。
冷静に考えれば、何日も寝ずに過ごすことはできないし、かといって長時間のログアウトはヒロモン世界での何日もの行方知れずになるためできない。模倣AIを使うのは良い案なのだ。
単に、模倣AIといけすかないエーオースとイメージがだぶってしまい、気分が悪いだけなのだ。
山際さんも俺のことを思っての提案なのだから、俺の気分の問題だけで断るのも何だろう。
「念のため準備だけは頼んでおいて良いですか。」
「分かりました、調整しておきましょう。それと模倣AIの質の話ですが、この間とは別の使い勝手だと思います。」
「バージョンアップでもしましたか。」
「いえ、違うバージョンのものみたいです。何でも、元から数パターンのアルゴリズムでAIを作っていたようです。前回、函崎さんに試してもらったのはそのうちのひとつです。模倣AIチームからは、別のものも試してみたいと打診されています。」
「それはそれで怖いですね。何をするか分からないものに俺の替わりをさせるのは。」
俺は少し不安を感じたが、山際さんは俺の不安を吹き飛ばすように言ってくれる。
「大丈夫だとは思いますよ。あくまでも模倣の精度が異なるってだけですから。突拍子もない事はしないでしょう。函崎さんが突拍子もない人間だと言うのなら分かりませんが。」
山際さんは、会社は別なのだが、良い上司だと思う。頻繁に様子を伺いに来てくれるし、俺が作業をしやすい環境を整えてくれる。そして、仕事上の知識も豊富だ。俺のメンタル面も含めてケアしてくれる。
俺は、せっかく山際さんと話をしているので、最近の悩みについて聞いてみることにした。
「また聞きたいことがあるんですが、良いですか。」
「はい、私に分かることでしたら。」
「スキルの使い方なんですが、最近、だいぶ分かってきたのですが、まだ使いこなせていないんですよね。
鷹野君の(陰謀の)せいで、今、ヒロモンでは魔道具師兼魔物料理人と言う立場で旅をしています。知識面はヘルプを見たり、リアルの知識を使ってなんとかしようと思ってますが、実技を求められると不安です。
キャラクターの性能はスキルレベル50あるので、本当なら困ることはないのでしょうが、スキルを上手く使えないとなれば話は別です。
何かスキルの使い方にコツはあるんですかね。」
俺は、ヒロモンを始めてからずっとこの問題に悩まされている。
スキルは、自分の行動に補正をかけてくれたり、戦闘であれば自動的にこなしてくれる。
しかし、スキルに身を任せると言うのは操作が難しいのだ。
スキルを起動しつつ、頭を空っぽにしないとならない。少しでも余分なことを考えたり、反射的に体を動かしてしまうとスキルがキャンセルされてしまうのだ。
意識を半分保ちつつも、頭を空っぽにするって、いったい何の達人技だと思ってしまうわけだ。
「やはりカプセルユーザーには、カプセルユーザー特有の悩みが生じる様ですね。」
山際さんは頷きながら言った。
「函崎さんはPCや携帯端末からプレイしたことないのでご存じないのは承知でお聞きします。通常プレイヤーは、どうやって操作をしているかご存知ですか。」
「キーボードやコントローラーですよね。」
「ええ、そうです。もう少し細かく説明します。函崎さんが仰られたのは操作のための機器のことですが、World of Heroes & Monsters Online側で用意されている操作方法の話をします。」
理系っぽい話だ。
ようは、俺が行ったのはプレイヤーが触る装置の話で、山際さんがこれから話そうとしているのはヒロモン側の画面などのことなのだろう。
「操作方法は、いくつかあります。
1.コマンドを選択する方法、2.コントローラーで操作する方法、3.カプセルで操作する方法。そして、4.音声またはキーボードで命令する方法です。」
「命令ですか。」
「そうです、命令です。順番に説明します。
1.コマンドを選択する方法は分かりますね。画面に行動メニューが表示されて、それを選ぶことでキャラクターが行動します。コマンドにも複数あって、選択肢の数が少ない大ざっぱなモードから、細かく指定する詳細モードがあります。
例えば、戦闘シーンを思い浮かべてください。一番大ざっぱなモードでプレイしている場合、攻撃するや防御すると言うコマンドが画面に表示され、選ぶことになります。これが、細かいモードですと、画面に表示されるコマンドも複雑で、殴る、蹴る、避ける、剣で受け止める等から選ぶことになります。」
なんと、コマンドモードにも色々あるのか。
「ゲーム初心者は、コマンドの数が多いだけでゲームそのものを忌避する傾向にありますから、デフォルトは一番大ざっぱなコマンドモードになっています。ゲームに慣れてきたところで、コマンドを細かくして自由度を上げてもらうことにしています。」
「なるほど。」
「次に、2.コントローラーで操作する方法は、コントローラーに今言った細かいコマンドを割り当てる方法です。格闘ゲームのように戦闘を行うことができるようになります。大昔に流行った、巨大モンスターを狩るゲームのような遊び方ができるので、一定層のファンが付いているモードです。」
俺はどちらかと言うとこれが普通のモードだと思っていた。
コントローラーを握り、前に移動させたり、ボタンを押すとパンチを繰り出したりするイメージだ。
「実際は、コントローラー上のボタンの数が限られてるので、ところどころコマンドモードとの併用になります。」
まあ、そうだろう。
「3.カプセルで操作する方法は、函崎さんが行っている方法です。脳波や筋電流、体の動きなどを組み合わせることで、一番、思い通りに、かつ自由度の高い行動ができます。まあ、これはカプセルの普及率が低いため、日本では100人もプレイヤーが居ませんが。」
「日常生活を送る上では楽ですね。戦闘やスキルを使うと言った、非日常の行動をするのが大変なんですが。」
「そうですね、私もメーカーの体験コーナーでカプセルを試したことはありますが、慣れがかなり必要だと感じました。自分が現実にできることをするのは簡単なのですが、現実ではできない行動を操作するのは難しかったです。」
カプセルがもっと普及して、カプセル・ネイティブと呼ばれる世代が出てくると話は変わるんだろうが、今の世の中では誰でも慣れが必要だと言うことだ。
「そして、最後の4.音声またはキーボードで命令する方法があります。World of Heroes & Monsters Onlineの自由度を高めている機能そのものだと思っています。
例えば、モンスターと戦っている最中に、武器を取り落としてしまったとしましょう。コマンドでは、武器を持ちかえると言ったコマンドを選択しない限り、モンスターに素手で殴りかかるでしょう。コントローラーでは、コマンドと同じような行動を取ります。ところが、命令では、かなりの自由な行動を取れます。道端にある石を拾って殴り掛かれ、と言えばその通りの行動ができるのです。」
「そうだったんですか。」
「音声でもキーボードからの自然言語入力でも同じことが出来ます。カプセルでの操作と違い、言葉を発しなければならないので、タイムラグが生じますが、何でも試すことができるのでユーザーには好評です。」
それはそうだろうな。
戦闘では時間的に不利に感じるので有効性は疑問だけど、日常生活や生産は何でも試せそうだ。
道を歩いている時に、木に絡みついている蔦をナイフで切り取れとか、蔦の先端を輪っかにしろとか、選択式のコマンドやコントローラーでできないことができると言うことだ。
生産系のスキルを持っていなくても、簡単な道具くらいなら作れると言うことでもある。いや、そうした行動を行うことでスキルが身に付くこともあるのか。
「自然言語解析は、翻訳みたいにユーザー側のインターフェースが持っている機能なんですか。」
「いえ、World of Heroes & Monsters Online側で処理しています。キャラクターごとにユーザーには見えないサポートAIが付けています。サポートAIがコマンドの内容を理解して、キャラクターを動かしているのです。開発陣はサポートAIのことを妖精さんなんて呼んでます。」
なんと言うか、ことごとくサーバー側に負荷をかける設計だ。
「サポートAIをサーバー側に置いてるには理由があるんですよ。」
山際さんは俺の感想を読んでいたかのように答えを教えてくれる。
「ゲーム上の色々な判定を個別に行うのに、キャラクターごとに専用の判定ロジックを置いておいた方が融通が利くのです。」
「融通ですか。」
「ええ、融通です。World of Heroes & Monsters Onlineでは、原則、各シミュレーターによるシミュレーションが行われています。物理シミュレーターと気象シミュレーターが主な物です。ところが、ゲームであるため、魔法があったり、戦闘があったりと、各シミュレーターの計算結果を無視しないとならないことが多いのです。」
「シミュレーション結果の無視ですか。」
「そうです。考えてもみてください、ドラゴンが空を飛んだり、ドラゴンの攻撃を人間が受け止めたり、物理的にできるわけないではないですか。」
「そうですね。」
「ですので、戦闘が始まると、通常のシミュレートされた世界から一定の空間が切り取られ、戦闘用の特殊なシミュレーションモードに切り替えています。」
「モンスターが跋扈していることを考えると、世界中が特殊空間のようですね。」
「その通りです。そのため、特殊空間内のシミュレーションはサポートAIが行い、OASIS側はそのアウトプットを元に世界全体の整合性を取る計算を行うと言う役割分担ができています。」
「具体的に何をどう計算しているかさっぱり分かりませんね。」
「私にも分かりません。」
山際さんはにっこりと笑いながら言う。
「多くのキャラクターは、物理シミュレーションと特殊シミュレーションの間を小刻みに切り替えられた結果を受け取っていることになります。」
「と言うと。」
「例えば、3階から花瓶が落ちてきて頭にぶつかって割れるとします。花瓶が落ちて割れるというのは物理シミュレーターで計算されます。人間の頭も、3階から落ちてきた物がぶつかるのですから、それだけの衝撃を受けることになります。下手すると頭蓋骨が割れます。」
「そうでしょうね。」
頭蓋骨の固さも一定なのだろうから、物理シミュレーターで頭が割れるかどうかも計算できそうだ。
「キャラクターに付いているサポートAIは、頭蓋骨が割れたり、首の骨が折れたりした結果を元にダメージ判定を行います。」
「ダメージを負ったから怪我をするのではなく、怪我を負ったからダメージを負うのですか。」
「はい、順序が逆ですが、そうなります。怪我の度合いに応じた生命力(HP)が減るのです。」
そう言うシチュエーションになったことがないから知らなかった。
「ところが、戦闘モードでは優先順位が逆転します。戦闘モードでは、物理的な力関係は無視され、ダメージ判定が行われます。ドラゴンが体当たりをしてきたとして、物理シミュレーションを行えば、普通、人間は弾き飛ばされるか、押しつぶされてしまいますが、そうはなりません。」
リアルに考えればそうだろうな。
ドラゴンの体当たりだなんて、トラックと正面衝突するようなものなのだから。
「戦闘モードへの切り替えって、いつされるんですか。ナイフを人に向けて投げたとして、それが攻撃なのか、放り投げただけなのか分かりませんよね。」
「判定基準は不明です。と言うか、その行動を攻撃とみなすかどうかをサポートAIが判断しているのです。通常の行動ですと説明は難しいですが、スキルの発動だと分かりやすいと思います。
例えば、あるキャラクターが投擲スキルを使うとします。サポートAIは、それを攻撃だと判断し、標的側のサポートAIに攻撃が行われたことを伝えます。すると、標的側では、ナイフに対してダメージ判定を行います。
こうした、キャラクターごとの行動を、物理シミュレーションするかどうかを判定するのに、サポートAIを付けていると言うわけです。」
インフラ屋としては、サーバー負荷を軽減するためにサポートAIもユーザー側の端末に配ってほしいところなのだが、何かの理由でそうしていないのだろう。
「サポートAIの気持ちひとつでダメージ判定の結果が変わったりしませんか。」
「サポートAIには自我エンジンは組み込まれていないので、判定は公平に行われていると思います。とは言え、判定ロジックにはゆらぎと言うか、サポートAIごとに癖はあるようなことは聞いたことがありますが。」
「ブラックボックスなんですね。」
「ええ。ですが、サポートAIの判断ロジックのコアな部分はOASISが管理していますから、ルールの変更が生じた場合はOASISを通じて配信しています。」
ヒロモンの世界はOASISで満たされていると。さすがOASISだ、世界中のどこにでも存在しているらしい。
「そのサポートAIが、翻訳作業や自然言語解析も行っているわけですか。」
「そうです。」
「サポートAIにも癖はあるんですよね。」
「はい、サポートAIも処理を最適化するために、ユーザーが入力する命令の言葉遣いを覚えていくことになります。行動パターンもでしょうね。」
「そうなると、自我は無くても、他人の命令は受け付けないみたいな感じになりそうですね。」
「どういうことですか。」
「サポートAIの入れ替えってのも難しそうだなって。」
「そうですね、難しいでしょうね。携帯端末やグラスも、他人のは使い勝手が悪いですもんね。」
「開発陣が妖精さんと呼ぶのも理解できますね。」
俺と山際さんは、ちょっとだけアプリ屋の気持ちが少しだけ理解できた気がした。多分、気のせいだが。
「話が脱線しましたが、カプセルモードだけは、極めて特殊なモードになるのです。他のモードは併用が可能なのですが、カプセルモードは併用を考慮されていないのです。考慮されていないと言うより、インターフェースが熟れていないと言った方が良いかも知れません。」
「それは何とかならないんですかね。」
「カプセルモードだけでなく、ユーザーインターフェースの設計と開発はヨーロッパで行っていますから。要望は挙げておきますが、どこまで対応してくれるか。」
グローバル企業の悪い点だ。
日本ローカルで出た問題を解決するのにグローバル全体への影響を考慮するため、改善がものすごく遅く、対応レベルも中途半端になると言う。
「仕方ないですね。それでも、もう少しコマンドを使いやすくするとかして欲しいですね。メニューを呼び出すの、あれ、脳波だけでしてますよね。少しは慣れてきましたが、最初はかなり集中しないとできませんでしたよ。」
山際さんと話をすると、カプセルによる操作がいかに特殊なものかが分かる。
結局、スキルの使い方も、ヒロモン内での過ごし方も、固有の条件が多すぎて参考にできる事例がないと言うことだ。自分で解決していくしかないと言うことだ。
まあ、仕方ないなと思う。疑問は解決しなかったが、何をしなければならないかが自覚できただけ良しとしよう。
状況が特殊だからこそのテストプレイなのだから。
「そろそろヒロモンに戻ります。」
2杯目のコーヒーも飲み終わってしまった。
「ええ、無理はなさらずにお願いします。」
俺はカプセルのある部屋へと向かった。




