Nianticは、「Pokemon GO(ポケモンGO)」でのバトルシステムの大規模なアップデートを実施した。今回の改修は、「レスポンスのよい操作」と「トレーナースキルの反映」をより高い次元で実現するため、システムの基盤レベルから再構築したという。
トレーナーバトルはフレンド同士で対戦できる他、「GOバトルリーグ」で多数のプレイヤーと対戦できる。トレーナーバトルはCP上限や出場可能ポケモンなどのルールに則したリーグがあり、3体のポケモンを選出してバトルする。先に3体のポケモンを倒したプレイヤーが勝者となる。
トレーナーバトルには「ターン」という概念が存在し、このターンの範囲でノーマルアタックを打ってゲージをため、スペシャルアタックを発動できる。しかしこのターンがプレイヤー間でずれると、「同じタイミングで場に出たはずなのに、相手の方が多くノーマルアタックを打てている」といったことが起こる。特に1ターンでも差が出ると、打てたはずのスペシャルアタックが打てず、先に倒されてしまう(あるいはシールドを剥がされる)といったことが起こり、勝敗に影響を及ぼす。

同じわざを使う同じポケモンが同時に出れば、スペシャルアタックのゲージがたまるタイミングは基本的に同じになるはずだが、バグでターンがずれる場合がある(写真=左)。HPが尽きる直前でわざを打てるかどうかは勝敗に直結する(写真=右)また、ポケモンが「ひんし」になる直前でスペシャルアタックを打てたり打てなかったりするケースもあり、挙動が統一されていないことも課題だった。通信環境に依存する部分も大きく、「通信環境が不安定でフリーズして負けてしまった」といったことも頻発する。今回のアップデートによって、これまで課題となっていたネットワーク遅延やデバイス性能による「挙動のばらつき」の解消が図られている。
これまでは、通信環境により、同じターン内でもダメージが反映される瞬間にわずかな差が生じることがあった。新システムでは、全てのダメージ判定とゲージの増加を「ターンの終了時」に集約する。
これにより、1ターンのノーマルアタック同士がぶつかった際、確実に引き分けとなる。相手の攻撃でひんしになる直前のターンでも、スペシャルアタックを一貫して発動できるようになる。
ポケモンの交代についても、ネットワーク品質に左右されないようルールを厳格化する。交代は、ダメージが発生する前に確定する。相手のスペシャルアタックが発動するのと同じターンに交代する場合、新しく場に出るポケモンがスペシャルアタックを受ける。
ユーザーが任意にポケモンを選ぶ「クイック交代」では、常に1ターンを消費する。ポケモンがひんしになった場合の「強制交代」では、ターンを消費しない。これにより、交代のタイミングが明確になり、相手の挙動を予測しやすくなることが期待される。
スペシャルアタックの発動タイミングが「発動した次のターンの開始時」に統一された。これに伴い、バフ・デフバフ(攻撃や防御のアップ・ダウン)の効果が、ダメージ計算より先に適用されるようになる。
また、スペシャルアタックの演出終了直後に交代ボタンが従来より早く表示されるようになり、交代の先行入力がしやすくなる。
HPゲージの挙動動作をアップデートし、ダメージが確定前か確定後かをより明確に判別できるようになる。
オンライン対戦で最もストレスを受ける「通信切断」への対策も強化する。片方のプレイヤーがアプリのフリーズや通信ダウンで応答しなくなった場合でも、サーバ側でバトルが進行し続け、正常に決着がつく仕様に変更する。意図しない切断によって勝敗が不明確にならないようにする。
今回のアップデートでは、端末のスペックや通信環境といった「プレイヤーの努力ではどうにもならない差」をシステム側で吸収し、純粋な読み合いとタップの精度だけでトレーナーバトルの勝負が決まる環境を整えた形だ。
Nianticはアップデート後も、バトルの状況を継続的にモニタリングし、必要に応じてさらなる調整を行っていくとする。
「Pokemon GO Fest:東京」は楽天モバイルも対策 目玉の「ミュウツー」は古参ファン“胸熱”な登場に?
ポケモンGO、新レベルアップ開放 レベル70到達者多数、報酬アイテム多すぎで悲鳴も「ポケストップ回せない」
ポケモンGO、レベル80に必要な経験値は「約2億」 新レベルアップシステムの詳細発表
ポケモンGO「ムゲンダイナ」のイベントが酷評された理由 ワクワク感なく「単なる作業」に、強まる“課金圧”に不満も
ポケモンGOの「不具合」や「地域格差」は解消されるのか? 10周年に向けた動きも? 開発責任者エド・ウー氏に聞くCopyright © ITmedia, Inc. All Rights Reserved.