在停运之前,我保存下了港台服 3DS eShop 的所有游戏元数据和图片视频

2023-03-22 星期三
就人气与普及率而言,3DS 在国内绝对算不上是一台冷门的掌机;但和 PS、Xbox 系主机不同的是,面向港台地区发售的繁体中文版 Nintendo 3DS,却通常会被国内玩家们所忽略。
这种情况并不让人意外。尽管有着更接地气的繁中系统界面,以及一批官中大作游戏;但 3DS 上严格的锁区政策,无疑是让繁中版 3DS 一出生便被判下了死刑。雪上加霜的是,虽说任天堂一开始推出中文游戏的频率不可谓不高,但这种积极也不过维持了一年有余。
在随后近乎三年的时间中,不仅任天堂第一方的中文化工作完全停滞,就连实体版游戏的推出频率都大幅下滑。
一个数据是,从 2014 年至 2016 年,任天堂只为繁中版 3DS 推出了 9 款实体卡带游戏;其中除了《精灵宝可梦 太阳/月亮》均未中文化,属于纯粹为了应对锁区而生的产物。
我们至今仍未可知的是,任天堂为何会在 2013 年后踩下中文化工作的急刹车,甚至于对整个大中华区市场呈半放弃状态,在各路厂商的中文化工作搞得如火如荼的三年间完全「躺平」。一说是因为盗版(Gateway 烧录卡恰好就是在任天堂暂停第一方汉化工作的时间节点发售的),另一说是因为游戏和机器的销量都上不去;无论如何,最终的结果都演变成了一种恶性循环,就连港台地区的玩家也纷纷投奔到了日版、美版的怀抱中。
当然,在这个时间段里,任天堂 —— 尤其是 2014 年后统管港台市场任天堂相关业务的任天堂香港 —— 总归要给支持了繁中版 3DS 的玩家们一些交代。
这时候就轮到 eShop 登场了。
必须要说的是,和日美欧等地区相比,繁中版 3DS 上的网络功能是相当阳春的;不仅后续 NNID、MiiVerse、主题商店等服务均未实装,任天堂第一方的一大批官中 3DS 游戏 —— 例如《时光之笛 3D》、《马力欧卡丁车 7》等等等等,也从未在 eShop 上发售过数字版。
往好了想,至少港台区还有个 eShop,再往下比就没得比了,只能欺负欺负基本没有网络服务可言的神游 3DS XL。
2013 年末开始,eShop 成为了港台区 3DS 新游登场的主舞台,有很多引进的大作,都是通过仅发售数字版的方式,与繁中版 3DS 的玩家们见面的。
虽然其中大多数都不支持官中(甚至还诞生了「英文亲切,乐享游戏」这个梗),但这么做至少变相解决了正版玩家们「玩不到」的问题,甚至还有小厂发行了一些仅港台区提供中文版的游戏。
然而随着 3DS eShop 结束服务的日子 —— 也就是几天后的 3 月 27 日 —— 日渐临近,这些游戏也将彻底无法购买。
在这个节骨眼上,我突然意识到了一个问题:待港台区 eShop 停运之后,我们所失去的东西,很可能会比想象中的更多。

一块缺失的历史拼图

几天之前,我正捧着自己的繁中版 3DS,在 eShop 里翻阅着各种犄角旮旯的地方,想看看有什么之前没有发现的东西,好和它做一次体面的道别。
接着,我的目光突然聚焦到了首页的一个视频上。
这支视频的标题叫做「Nintendo預付序號及預付卡之購買方法 介紹影片」,预付卡也就是我们俗称的点卡、充值卡,是唯一能够在港台区 3DS eShop 上消费的支付方式。视频长度为 1 分 47 秒,全程粤语女声讲解,介绍了香港玩家能买到预付卡的几种不同渠道。
在我模糊的记忆中,这支视频已经放在 eShop 首页很久了,久到我早就习惯了它的存在;似乎每次在这台机器上打开 eShop 时,它都在那里,不离不弃。
我对它的内容并没有什么印象,也许是因为它的标题已经说明了一切,让我没有点进去看的动力;更重要的是,在潜意识中,我认为这些视频应该都被上传到了网络上。因此我做出了一个习惯性的动作 —— 在谷歌上搜索这个视频的标题。
出乎意料的是,我一无所获。搜索引擎只返回了任天堂香港官网上的一些文字说明,然后我又从 B 站找到油管,到处都没能发现这支视频的踪影。就连 New Bing,对此都表示无能为力。
这时我的脑海中闪过一个可能会成为事实的假设:待 3 月 27 日任天堂正式停运之后,这支视频很可能就会彻底消失在历史的长流之中,再也无法被人看到。
意识到这个问题之后,我对 eShop 上的各种内容进行了一番查阅比对,最后得出了这样的结论:虽然很多内容可以在网络上找到,但有那么一部分内容,确实存在永久遗失的风险。
首先是游戏的基本信息,这其中最重要的就是游戏的中文介绍部分。是的,无论游戏本身支不支持中文,无论第一方还是第三方,无论游戏规模大小,它在港台区 eShop 上都会有一段中文的简介文本。
你可能会说,这个好办,像其他区一样去网页端看一下游戏的商品页面,不就可以了吗?
问题就在这里。上文中有提到,繁中版 3DS 的网络服务是很不完善的,所以港任压根就没提供这样的服务。
虽然港任为一部分游戏开设了专题页面,但这项工作并未覆盖到 eShop 上的所有游戏;很多后续发售的第三方作品,在港任的官网上,均只提供了原日/英文网站的超链接;甚至连后期的一部分第一方游戏,都会直接跳转到日任或是美任的相关网页。
状况稍好一些的是游戏截图,但也不能排除有一部分中文版游戏的官方截图无法在其他地方找到。
再然后是视频方面,eShop 里的视频基本上都是各种预告片和游戏试玩录像,虽说大部分内容在各种渠道都能观看,然而总有例外,比如说上面提到的那则影片。
此外,还有一类视频也没有得到妥善保存:为了展现招牌特性之一的裸眼 3D 功能,任天堂为一些游戏特地准备了 3D 宣传视频,内容基本上都是游戏的实机游玩画面,只不过无法用滑块调节 3D 效果的强度。而港台服 eShop 上的这些 3D 游戏视频,都是利用繁中版游戏录制的。
作为面向 3DS 用户量身打造的视频,任天堂自然没有把它们放在其他网站上的动机。因为提供 3D 视频的大多数都是没发售过数字版的游戏(《马力欧卡丁车 7》、《星际火狐 64 3D》、《生化危机 启示录》等),恐怕连买了繁中版 3DS 的人也不一定全都看过。
接着,我又碰到了一个可以说是「出乎意料」的状况。过去,任天堂在台湾地区的业务,是交由全资子公司「任天堂溥天」负责的,繁中版 3DS 在台湾上市时,包括 eShop 运营在内的相关工作,也在它们的职责范围之内。
然而,2014 年 4 月 7 日这一天,任天堂突然宣布,台湾市场的相关业务将由任天堂香港接手;失去了存在意义的任天堂溥天,则在运营了 23 年之后,于同年的 5 月底正式宣告解散。
就在同一时期,台湾地区 eShop 的营运工作也被转交给了任天堂香港负责;从现有的信息来看,权力让渡后 3DS 端提供的服务并没有什么太大变化。然而奇怪的是,台湾地区 3DS 官网的 eShop 页面却下线了,访问相关链接时只会提示「跳转至香港官网」。这样的情况从 2014 年五月底一直持续到了现在。
台湾地区的 3DS eShop,与香港地区是有着一些不同之处的;像是货币单位上,香港采用 HKD 结算,台湾则是采用 Nintendo Points 点数系统,两边的预付卡也互不通用。而且台湾地区有基于《游戏软体分级管理办法》的分级制度,香港地区没有。
按理说,港任接管了台服运营之后,应该会在官网上列出这些有着地区差异的信息吧?然而并非如此,或者说,有,但不多。除了一小部分游戏在台湾官网上有着单独的专题页面,可以看到台服的售价、分级等信息之外,港服的 eShop 网页大体还是优先为香港玩家所设计的。
一个非常典型的例子是,港任官网提供了一个「能够下载的软件」列表,但其中却只包括 HKD 售价。
发现这一点后我有些讶异,一方面多半理解了 Switch 推出之前台湾玩家为何没给老任啥好脸色,另一方面,这或许也意味着,待 eShop 停运后,想要查到台服相关的游戏信息,可能就会比较麻烦了。
虽然 3DS 上的 eShop 已经进入了死亡倒计时,但我其实对那些数字版游戏的去向并没有太过担心。3DS 游戏的 dump 保存流程已经很完善了,大多数的游戏文件应该是没有遗失之虞的。在我撰写这篇文章的时候,外网的一位视频播主 Jirard Khalil 就花 2 万多刀买下了 3DS/Wii U 的所有在售数字版游戏,并将这些内容捐献给了一家游戏历史基金会以供永久保存,此举一时引发了不小的讨论。
所以,现在我更担心的,反而是港台区 eShop 上这些被大多数人遗忘的商店信息。在我眼中,它们也代表着电子游戏中文化历程中的关键一环,其重要性和游戏本身不相上下;不如说,只有当这些信息内容和游戏搭配在一起,才能构建出真正完整的历史记忆。
要知道,就连传到互联网上的东西都有可能会遗失,何况是一个即将关门大吉的数字游戏商店呢?抱着这样的想法,我开始寻找起了将这些内容全部下载留存的手段。

saveShop:一道曙光

幸运的是,外网上也有抱着相同想法的人,而且他们比我有能力得多。
一番搜寻后,我发现了 saveShop,一个由开发者 Tony Wasserka(又称 neobrain)编写的开源小工具。
它的作用,正是从任天堂的 eShop 服务器上抓取并下载各种商店信息,其中包括:
  • 游戏的元数据,包括游戏介绍、价格、投票数据以及分级内容等信息
  • eShop 上的专题页面构造和对应的 banner 头图、首页缩略图
  • 游戏的图标和截图
  • 各种视频,包括前面提到的 3D 视频、以及预告片等
不过必须要强调的是,它所下载到的数据并不包含游戏文件本身。
这个工具是在今年 2 月 23 日发布的,开发者的初衷正是想让大家能为 3DS/Wii U eShop 上感兴趣的内容进行留档,让这些和游戏本身发售时相关的信息不至于永久丢失。
虽说如此,这个工具的使用还是有一定门槛的;例如它并不提供现成的程序下载,你需要自行 clone 整个仓库并进行编译,同时也没有提供特别具体的使用说明。据开发者所述,设置这些门槛其实是故意为之,因为他并不想让太多人涌入到 eShop 的服务器中,这样无异于是在自找麻烦。
有鉴于此,我不会对工具的使用方式进行特别具体的描述,感兴趣的朋友们可以自行翻阅 GitHub 上的项目文件。作为一个不太熟悉编程知识的麻瓜,我自己也是经过了一番研究,才让其顺利运行。
这其中当然有一些小插曲,由于抓取游戏的完整元数据需要经过任天堂的「ninja」服务器(是的,「任天堂忍者」是真的),而该服务器需要从 3DS 中提取并解密证书后才能正常访问。这个步骤卡了我很久,在此要特地感谢喵喵酱在解密过程中提供的帮助。
总之,我最后成功地下载到了港台区 eShop 的所有游戏元数据,以及所有的图片和视频文件。
120 个应用的元数据(其中包含游戏本体、工具软件以及更新包等)、1131 张图片、112 段视频……这些拢共仅 3GB 大小的文件,刻画出了任天堂 3DS 在港台地区跌宕起伏的一生。

来,亲自一探究竟

当然,光有这些数据还不够,如何让这些数据更直观地呈现出来,方便大家浏览,也是一个很重要的问题。
好在 neobrain 并没有忘记这一点,他同时还编写了一个简单的网页工具,你可以借助这个页面随意浏览抓取到的各种内容,就像是在逛 eShop 一样。
但我觉得就这样似乎仍然不够,至少体验还不够完美。于是我对这个 html 文件做了一些简单的汉化。最后的结果如下:
这个浏览工具默认会显示在 eShop 上架的所有软件应用,按发布日期的先后顺序排序。
只要点开其中一项,就可以看到和该游戏相关的各种信息,例如价格、发布日期、完整介绍以及截图、视频(如果有的话)等等。
「专题分类」这一项对应的则是 3DS eShop 首页上的各种大图专题,其中的内容排布,也和 eShop 中的实际情况保持了完全一致。
1 / 2
而在「所有视频」中,你也能直接看到这次抓取下来的全部视频文件,其中就包括上文中提到的那个购买方法介绍影片。
从任天堂 CDN 上下载到的视频,都是老任自家 Mobiclip 解码器适用的 .moflex 格式文件。我虽然用 convert-media 命令将他们转成了 .mp4 格式,但还是保留了所有 .moflex 文件。
这样做不止是出于让数据能够以原貌完整留档的考虑,同时也带来了一个额外的好处 —— 还记得上面说过的 3D 游戏视频吗?3DS 是有办法播放 .moflex 文件的。所以现在,你可以在自己的 3DS 上亲自感受这些视频的立体效果了。
以上都是以港服抓取到的内容为例,台服和港服大体上是相同的,但在部分视频等内容上有些许不同,详细信息中也会显示分级信息;在初次打开网页工具时便会要求你选择地区,后续也可以点击上方的地区选择进行切换。
1 / 2
另外,台服多出了一款未在港服发售的游戏。至于是什么游戏,就交由各位自己去发现了。
话说了这么多,也是时候说到正题了。
我将上述的所有内容,全部打包上传到了网盘。以下是下载链接:
链接: 点击跳转提取码: 0928
压缩包中包含所有抓取到的原数据,以及 python 3.10 的运行环境和一个 .bat 脚本文件。后二者的目的是为了建立一个本地 HTTP 服务器,以便使用网页工具进行内容浏览。python 下载自官网,若对其内容不放心、本地已经部署过 python 环境或是 Mac 和 Linux 发行版的用户,也可以通过 python -m http.server 命令激活本地服务器。
激活成功后,命令行窗口应该会如下图所示:
此时在浏览器的地址栏中输入 localhost:8000 后回车,就可以访问网页工具了。

结语

说实话,我至今都很难接受老任停运 3DS 的 eShop 这件事。这台掌机对我而言有着非常重要的意义,它是我的第一台正版掌机,也是它带领我进入了主机游戏界的大门,给了我一个接触各类优秀作品的契机。
因此,尽管从道理上也许能找出一百种说法,可能这些说法也确实说得通,但我就是不能理解老任这种近乎无理的固执。3DS 确实很老,但家族中最后的一个型号,2DS LL,也不过是在 2020 年 9 月才正式停产;作为销量上压了对手一头的胜利者,也有可能是任天堂的最后一台传统掌机,至于要让它这么快就销声匿迹吗?
话虽如此,我相信,这台掌机在大家心目中的印象,以及那些美好的记忆,一定是无法磨灭的。
同样无法磨灭的,还有它之于整个中文区游戏界的意义 —— 它承担了任天堂太多在港台地区的第一次,从初期的小高潮到后面的低谷期,再到《精灵宝可梦 太阳/月亮》的任系中文化复兴,它很好地承担了承上启下的作用,让任天堂能再次重视起中文市场。如今 Switch 的第一方中文能实现常态化,多少也有 3DS 和《日月》的功劳。
纵使有再多的不满,道别的那一刻还是会到来,我想,用尽全力去保留下它存在过的痕迹,也许是现在的我唯一可以做到的事情。或者说,这就是我纪念它的方式吧。

One More Thing……

不知你有没有注意到,上文中 eShop 的截图里,有这样一行小字:
这是 eShop 的滚动新闻,讽刺的是,其他服务器早已将这条新闻换成了关服通知,而港台服仍旧是「新游上市」。
在这里提它当然是有原因的,因为我发现了这行字在任天堂服务器上的地址,并将其作为 .xml 文件下载到了本地。
既然要留存一切,那这些显然也是很重要的信息,不是吗?
此外,eShop 上还有一个单独的新闻板块:
这当中的内容我也发现了对应的地址,同样将其留存到了本地。
对应的 .xml 文件已经包含在上方的压缩包内,希望你能喜欢。
I
原文地址:点击