「アナザーエデン」はどのようにしてRPGの体験をスマホで実現したか。Split」出場チーム情報をお届け。今シーズンの覇者となるのはどのチームかなぜ新スタジオなのか。eスポーツ選手をいかにしてサポートしているのかフォーナインズがゲーミンググラス「PLAIDe」(プレイド)を立ち上げた理由とは。「レジェンド・オブ・ルーンテラ」デッキガイド。STRANDING」の世界をより理解するための“運び方”ガイド姿の見えない世界中のプレイヤーと緩く助け合う。2019]ティガレックスやバフバロの狩猟に挑戦。REMAKE」の最新映像が公開。19:47イベント「アナザーエデン」はどのようにしてRPGの体験をスマホで実現したか。時空を超える猫」(以下,アナザーエデン。Android)のサービスが始まったのは,今からおよそ1年前の2017年4月12日(関連記事)。古き良きコンシューマRPGを思い出させるビジュアルとプレイフィールで注目を浴び,2018年で設立5年めとなる若いゲームスタジオの名前をゲーマーの間に広く認知させた作品だ。時空を超える猫』スマートフォンでのRPG体験の実現のためにしてきたこと」と題した講演が行われた。現在,エンジニアを統括する立場にあるという西田氏。スマホでRPG体験を実現するために,主に技術面でWFSがやってきたこととは,どのようなものだったのか。本稿では,その内容をレポートしよう。※記事内に掲載した画像は,SlideShareから切り出したものになります。講演で使われたスライドは「こちら」から閲覧できます。システム面から支えたRPG体験のための工夫WFSがアナザーエデンの開発にあたり,最初に目指したものはスマホでコンシューマゲームのような体験のできるRPGを作ることだった。そこで西田氏達は,スマホゲームとコンシューマゲームの差異について考えたという。両者の違いは,サービスとパッケージという販売方法の違いであったり,ホーム画面の有無であったり,パッと思いつくものから,ちょっと考えないと分からないものまでさまざまだが,技術的な部分で西田氏達が注目したのが,「データ通信速度」「ユーザデータを保持する場所」の2点だった。スマホ向けのゲームは頻繁に入るネットワーク処理,チート対策,ランキングなどに対応することに重きを置いたデザインになっている。ユーザーデータの保持する場所は大きな問題であり,通信待ちが頻繁に発生してしまっている状況を改善しなければならない。コンシューマライクな作品を実現するためには,この部分をシステム的に見直さなければならなかったと西田氏は振り返る。西田氏達がこの見直しを行った結果,アナザーエデンはどういった立ち位置の作品になったのか。詳しくは資料のスライドを確認してほしいが,極論を言えばスマホ向けゲームとコンシューマゲームの中間に位置する,ハイブリッドな作品と位置づけることができる。データ通信をバックグラウンドに寄せることで,0とはいかないまでも通信量を大幅に軽減できたという。データの更新も基本的にはクライアントメインで行うが,ものによってサーバーからも行えるようにするといった,技術的な面におけるアナザーエデンの位置は,非常にユニークだ。上記のようなシステム面の見直しが行われたところで,西田氏達はオートセーブ機能に着目した。コンシューマライクな作品を実現するために,下記4つの要素を担保したオートセーブ機能を作る必要性に気がついたという。Saving...」の表示が出る。このタイミングでは,プレイヤーの行動は阻害されず,バックグランドでサーバーとの通信が発生しているとのこと。ちなみに,本作でオートセーブが行われるタイミングは,以下のとおりだ。各種設定UIクローズ時(全画面を覆うパーティ編成など)フィールドのエリア移動時luaイベント終了時シナリオ進捗時バトル終了時1分に1回(プレイ時間が積み上がる)このほかにも,ゲーム的に際どいタイミングでのオートセーブも行われている。確率と実力に左右される釣りをプレイしたときは,魚を釣り上げてから,何を釣り上げたか分かる間にセーブが行われる。これにより,結果を確認してからのリセット,やり直しができないようになっているという。技術者向けになるが,スライドではステートの遷移図やクライアントからサーバへの同期についても解説されているので,興味のある読者はぜひ参照してほしい。面白いのは,サーバー障害時やオフライン時,アナザーエデンではクライアント側にオートセーブの情報を溜め込むようになっており,障害解消後またはオンライン時に,止めていたデータが一気にサーバーへと送られる仕組みになっている点だ。このため西田氏は,サーバー障害時にひやひやすることもあるという。アナザーエデンのオートセーブについて,西田氏は下記のようにまとめる。「ステート区切りのオートセーブ制御によって,適切なタイミングでオートセーブを走らせ,アプリケーションを中断しても納得感のあるタイミングで復帰が可能になった。キューイングとバックグラウンド通信の組み合わせによって,なるべくプレイヤーの操作を阻害せずデータの同期を行った。続いて西田氏は,コンシューマゲームでの開発手法を元に,イベントスクリプトに比重を置いてアナザーエデンの開発は行われたと話す。西田氏は,RPGの醍醐味を冒険であるとし,さらに冒険とはタンスを開ける,NPCに話しかける,カーテンを開けるなど,調べたい場所を調べられること,プレイヤー目線で言えば「ここ触れたらいいよね」という状態が作り込まれたものなのではないかと持論を展開していった。エンジニアサイドから言えば,これらはすべてイベントスクリプトに帰結するという。アナザーエデンのイベントスクリプトは,ゲーム開発者にはおなじみのLua(ルア)という言語で記述されている。本作では,フィールドの制御など多くのシーンに利用されているそうだ。今回のセッションで西田氏は,イベントスクリプトで制御されているシーンを列挙してくれた。サブクエストが記述される。バトル中のスキルの特殊ギミック上記の通り,アナザーエデンでは非常に多くの要素がイベントスクリプトで制御されている。西田氏によると,本作の制作チームは約80人で構成されており,そのうち25人はイベントスクリプトの記述ができるそうだ。ゲーム開発に携わる人なら分かるかもしれないが,この比率は非常に高い。これによって,各チームの実装担当者達が思い思いに自分が入れたいと考えた要素,良いと思った要素を自由な発想で入れていけるという。アナザーエデンでは,そういった発想から生まれたイベントスクリプトの事例に出会う機会は多い。主人公の妹が朝起こしてくれるイベントで,その声を無視して眠り続けると何かが起こるとか,フィールドの一部分が一定間隔ごとに光ってバトルが発生する床になるとか,街中でいきなり発生する鬼ごっこなどが挙げられる。いった自由な発想から生まれるイベントスクリプトだが,そのレビューにプログラマが関わることは少ないそうだ。実装担当者が思い思いのスクリプトをトライ&エラーで入れていき,新しいスクリプトが生まれた際には共有され,発展していくという。そんな環境で記述されたイベントスクリプトは,現在146万行に登る。西田氏いわく,アナザーエデンのリリース当初は63万行であり,1年で約100万行増えたとのこと。余談だが,アナザーエデンのチームには職人スクリプターがいるらしく,そういった職人の書いたスクリプトはもはや魔術だという。このほかにも,若手のスクリプターがいきなり1500行のイベントスクリプトを書いて実装するなど,西田氏自身も驚かされることが多いようだ。西田氏はこの経験からある確信を持ったという。それは,イベントスクリプトに最大限の裁量を与えること。結果的に,アナザーエデンでは,イベントスクリプトとオートセーブの合わせ技によって,プレイヤーの行動を阻害せず,自由な発想で開発を行っていける環境を作ることに成功したそうだ。ここまでの講演内容を振り返ってみて,鋭い読者は「こんなことは,昔からゲーム業界で行われているのでは」と思ったかもしれない。これはその通りで,西田氏によればアナザーエデンの開発は「スーファミ(向けゲーム)の作り方だね」と愛を込めて笑われることもあるとのこと。それをスマホゲームで可能にしたのが,西田氏達がシステム面で支えた結果に生まれた,アナザーエデンの魅力なのかもしれない。※なお,本講演ではこのほかにセキュリティについても語られたが,本稿では割愛する。気になる場合は,以下のリンクからスライドを参照してほしい。2.3.20にアップデート。