ラグの原因ですが、他に原因が見当たらなくなったのですが、やっと原因が分かりました。
ここに書いた内容は、あくまでも、予想していたことが当たっていたことが確認取れたと言うことです。
では、本当の原因は何か?
犯人は、Googleです。
と断定したいのですが、残念ながら、私はデータの流れを観測できるほどの技術を持っていません。しかし、スプラトゥーン3が、過去作品の初代、2代目、両方とは圧倒的に異なり、ラグが頻発、大きく発生しています。
その原因は、1080pでの高解像度化によるハードウェアの能力不足でもなく、20or22
Hz→16Hz→15Hzと通信頻度(チックレート)を下げたことでもなく、各家庭での通信環境の善し悪しでも無く。
Googleのサーバーが邪魔をしているからと考えられます。
↓任天堂の資料のようです。記事に書かれています。
https://services.google.com/fh/files/events/gcd22-d3-appdev-02.pdf
理由
無料会員になれば、中身を見ることができますが、通信状態が悪い人は、GCP(Googleクラウドプラットフォーム)というGoogleのシステムを間に入れて、他の7人と通信することが明記されています。これは、Googleも発表している内容で、私も認識していました。しかし、この記事の中で、通信は良好とのことで書かれていたので、それを信じ切っていました。しかし、そこが盲点でした。
記事を読めば分かりますが、他の7人に対して恐らくサーバーを経由します。下の記事にありますが、通信の設定値を予測するために、何らかの機械が間に挟まって通信を手助けしています。ここにラグが発生する原因があるんじゃ無いか、ということです。
ちなみに、我が家の有線接続時のNATはB。Aにするのは大変なので、パスしました。
Wi-Fiにしても、Bです。じゃあ、Bなら有線と同じだろ、と思いますが、そんなことが無いんです。
ちなみに、下りは50Mbps、上りは15Mbps程度出ていますので、300kbpsで十分なスプラトゥーン3だと全く問題ありませんが、それ以上に問題なのが、遅延です。
ありがたい記事を下にアップします。
↑なんだったら、その通信の中身を予測している時間だけロスが発生しているんじゃ無いかとさえ疑ってしまいます。
こちらもオススメの記事です。
NATがDでも接続できるようになった、という話の大本は、こちらです。
通信が難しいところを、Googleがルーターの通信設定の中身を予想して接続し続ける、ということでしょうか。わたしは全く理解できません。
さて、最初に貼り付けたリンク先の日経の記事では、TCPもデータも流れているとのことですが、もしかすると、これが「絶対に定期的に流すデータ」なのかもしれませんね。一気にインクが塗られたり、いろんなものが降ってきたりする事がありますが、それだったりするんでしょうか。
本題ですが、記事の中ではP2Pのデータ通信が安定性を持って行われているとのこと。記事の当時はP2Pでのプレイとの差は感じなかったとのこと。この記事は2022年11月22日のもの。今でも同じ様に感じているんでしょうか?
Wi-Fiユーザーは6割では効かない割合で存在であることが非公式ながらスタッフから公表されている。
スプラトゥーン2も初代も、ラグは滅多に遭遇しませんでした。
対して3は、光回線+有線接続では、常にラグのプレイヤーと対面しています。
スプラトゥーン3で、画質を落としてもラグは消えません。
実際に、何をやっても変わりませんでした。
しかし、以前から、お出かけしたときのWi-Fiでのプレイ時は、圧倒的有利に戦いを進めていて、違和感を感じていました。
そこで思い出したのが、最初の記事です。
https://services.google.com/fh/files/events/gcd22-d3-appdev-02.pdf
こちらより抜粋です。
P2Pは通信を行いながらも、一部のゲーム情報の状態共有、とあります。ここでの通信が遅いことで、スプラトゥーン3のどのゲーム情報の状態かは分かりませんが、データの何かの遅延が発生している、と考えるのが妥当だと考えます。
例えば、メインのキル情報、サブのデス情報がGoogle経由だったとしましょう。
いくらメインでキルしても、相手に届かず相手がデスせず反撃をしてくる。
立派なラグですが、これはP2Pで直接通信をしていれば、まず起こらないでしょう。
また、サブでのデス情報も、ボムが爆発した後にもかかわらず、大幅に遅れてキル情報が到達することでしょう。
逆に、こちらがキルされた情報も遅れて到達するから同じ、と思うかもしれませんが、これは、敵を先に発見できるラグ持ちが有利なため、先にキルされてしまいます。反撃しようとしても、その敵はもう逃げるだけで良いので、追い打ちすることが難しく、追い打ち中にデス情報が到達して、対等に戦うことはできないでしょう。
何かの情報がGoogle経由な上に、サーバーは他のゲームとも共有されている可能性もあり、新しいゲームがNPLNサーバーを使用するのであれば、遊ぶユーザーが集まれば集まるほどサーバーの反応も悪くなることでしょう。
P2Pだけでラグが発生するのなら、スプラトゥーン2で発生していたはずです。でも、発生はわずか。
大きな違いは、システムが、アマゾンのサーバーを使ったNEXからGoogleのサーバーを使ったNPLNに変わりったこと。そして、P2Pのみでのプレイでは無く、GCPを経由してプレイするようになったことです。
恐らく、GCPを経由するのが、NATがDだから、だけでなく、BでもCでも、何らかの無線通信を確認した時点で、GCPを経由するようになってるんじゃないでしょうか。
そう確信するレベルで、有線での『圧倒的なインク塗られ』、『圧倒的な理不尽デス』が、一気に改善します。Wi-Fiならね。
ここに書いた『管理者』、実は、Googleのサーバーなんじゃないでしょうか。
これを書いた当時はGCPは通信を正しくリアルタイムに行っていると思っていました。
しかし、実際には、GCPを経由した上で、サーバーでの情報提供の遅延がさらにかさ増しされて、いろんなデータがリアルタイムに届いていないんじゃ無いでしょうか。
それ以外、考えられないんですよね。ラグの原因。
そして、塗られない原因も、こんな予想をしてみました。
bokeboke