任天堂 NPLN 服务架构演讲学习笔记

2022-10-10 16:17:03 +08:00
 lxdlam

个人博客自产自销: https://blog.lxdlam.com/post/24e3aa77/

这个是在 Google 日本主办的 Google Cloud Day: Digital ’22 活动上做的主题演讲的翻译&个人备注,是我在网上能找到最全面的资料之一,可惜没有 SDK 部分的内容。从流传的数据挖掘结果来看,目前的 SDK 部分还是基于 PIA 的老一套,走 P2P 联机,所以 NPLN 更多是解决了传统 NEX 的可扩展性、可维护性以及一些联机之外的通用在线游戏体验问题。

先把正文里面的阅读提示贴一下:

注意,这篇文章无法回答以下问题:

为什么 Splatoon 3 联机还是这么烂?

NPLN 最大的更新是在游戏的其他在线体验上,而对局的联机方案还是跟 Splatoon 2 一样的基于 P2P 的方案。也就是说,2 代存在的问题,3 代大概仍然存在。

有种说法是 NPLN 有 UDP Relay ,在 NAT 打洞失败后会 Fallback 到这种模式,由于官方演讲没有提及,我在此无法下定论。(根据数据挖掘的结果,NPLN 也许使用了基于 WebRTC 的 TURN 模式)

具体 XXX 技术是怎么实现的?

目前由于 SDK 没有开放,同时逆向分析难度较大,本文仅总结任天堂在 GCD ‘22 上公开的部分,特别细节的部分暂时不知道。

这篇文章会涉及到具体某个游戏吗?

不会。本文只包含了 NPLN 服务端的整体架构和实现分析。对于游戏怎么接入的、SDK 怎么使用的等等都不包含在内。

演讲里有些内容是基于特定 Google Cloud 问题进行的分析,这部分可以粗略扫一下或者略过不看,对了解这个新系统整体工作原理没有太大帮助。

感谢阅读。

1969 次点击
所在节点    Nintendo Switch
2 条回复
secondwtq
2022-10-11 12:39:30 +08:00
貌似很少见过老任的技术分享 ...
ShirolinEX
2022-11-30 11:48:28 +08:00
不错,学习了。
之前用的 NEX 是在太老了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/885826

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX