原文:From zero game dev experience to publishing a VR game on Steam & Oculus Home - what I learned
作者: Brett Jackson
译者:张新慧
审校:屠敏,关注 VR/AR/MR 等领域,寻求报道或者投稿请发邮件tumin@csdn.net,另有「CSDN VR 开发群」,技术之路,我们共同进步,欢迎开发者加微信tm_forever_miss申请入群,务必备注姓名+公司+职位。

对于有志从事 VR 游戏开发的人而言,这篇文章或有借鉴之处。我将谈及诸多相关经验,包括在 Kickstarter 和 Greenlight 上的宣传,参加 VR 竞赛,准备免费的 demo,发布抢先体验版以及最终在 Steam 和 Oculus 主页推出正式版。

这些日子以来学到的东西不少,我会谈谈什么样的错误会阻碍游戏的销量。

从开发 Dimensional 到登上 Steam 和 Oculus。

起点

我是 Brett Jackson,今年 45 岁,18 岁起从事软件开发。后来在 Kickstarter 上为 Oculus 众筹,激起了我对 VR 的兴趣,从此一发不可收拾。之前我完全没有游戏开发经验。

如今全职做 VR 游戏开发已两年有余,还推出了自己的作品 Dimensional(空间),是时候放慢脚步,回顾一下这两年来学到的,经历的东西。开发 Dimensional 的初衷只是赚钱做更多 VR 项目而已,后来竟花了过山车般紧紧张张的一年半时间。想说的太多,但我尽量长话短说,去繁就简。先从每个 VR 开发者所面对的最重要的决定说起。

你的目标是心之所向吗?

如何回答这个问题将决定你今后所做的每一件事。拿我自己来说,VR 开发以及伴随这一事业的种种可能性深深吸引着我。我从来没想过在这一行发大财,只是希望自己做过的每一个项目至少能支撑下一个项目。学到了很多,实现了开发游戏的梦想,我无比骄傲,从不后悔。

如果 VR 也是你的心之所向,且打算全身心投入,那么就努力做到有始有终。付出了那么多却无疾而终将会是痛彻心扉的打击。

可用的资源超乎想象

不错的游戏引擎如 Unreal 和 Unity 让新手也能轻松构建原型。项目越有进展,你就越能体会这些工具真真一应俱全,方便好用,但完全掌握不容易,要不断学习使用才行。

我用过的有:Unreal、Blender、FMOD、Audacity、Quixel、Lightworks、Gimp、Inkscape、Acapella-box 和 Libre Office。这些工具都有个学习过程。

我在下面的信息图中标出了开发过程中曾经考虑的因素和使用的工具。

学会与他人合作

从上图可以看出,开发者需要学习的新技能很多。或许你天生有才,既是编程高手,又有视觉和音效的高度鉴赏力——即便如此,繁重的工作量也难以应付,建议请擅长不同领域的人一起做。我的长处是构想和编程,图形和音效则心有余而力不足。要是当初资金充足,能借他人之力就好了。

做好耗费心力的准备

你恨不得把新技能硬生生地塞进脑袋,但技能学也学不完。开发阶段满脑子都是游戏、游戏、游戏!时不时冒出一个新点子,于是不断修改游戏叙述,不断完善不满意的细节。计划多久完成就拼命赶时间,因为拖延不起,再加上游戏中各种 bug 让你晚上辗转反侧,难以入眠——那些日子太苦,但充满乐趣,成就感爆棚!

一步一步慢慢来

有了创意后先别急着动手,不如以实验性的技术 demo(演示)为切入点,测试创意的可行性,收集反馈。小心别泄露了自己的创意,除非心甘情愿让其他开发者使用。我的早期技术 demo 包括:

  • Breath Tech Demo - 呼吸技术demo,借助麦克风让呼吸出现在VR场景中来增强参与感并与周围物体互动。我已将源代码公开,很高兴看到其他开发者在使用。
  • eve-Books - 用头部移动来追踪玩家正在进行的故事线。场景和音效会根据故事线的改变而改变,这是为了让他们更好融入相应的故事叙述中去。
  • Playpit locomotion system - 我的初版定位系统,让现实中的小空间也能支持VR中的大空间体验,帮助玩家避开物理障碍。

项目时间远远超过计划

计划半年完成,结果花了一年半

切勿好高骛远。我最开始想开发一个复杂的清醒梦境 VR 游戏,但数月后才意识到手头资金有限,计划 12 个月恐怕不够。

后来有了 Dimensional 的构想,并不复杂,我想 6 个月就能搞定,结果花了18个月。

原型简单,成品难

我花费数周开发出复杂的原型来演示游戏的主要技术特点。感觉过了最难的坎儿,剩下的只是打磨润色,设计更多关卡而已——绝对是一大误区!

有了构想的雏形,就要做好不断修改的心理准备
打磨润色要花费很久
关卡设计和难度的平衡难以把握

我受到启发,把玩家放在每一关的不同情境中来测试效果。如果以追求利润为主,这样的付出成本太高,并不推荐。

艺术风格

对于小型独立开发团队,我推荐风格简洁的图形设计,可以把精力集中在特效和灯光上来打造独树一帜而不复杂繁琐的游戏风格。

当初我没有追求风格是因为更喜欢写实、有融入感的场景,还加了灰尘和刮痕等元素让物体兼具质感和重量。副作用是:如果游戏在风格和写实之间更倾向于后者,玩家会对周围的细节尤为敏感。比如游戏中的叙述已经向玩家解释了为什么房间里空荡荡的,但后续我还是忍不住加了更多内容(如机器人)来减弱“空荡荡”的感觉。如果是追求利润为主,我就不会这么纠结了。

开发者要铭记:能体现游戏亮点的截图和小视频能有效提升销量。卖相不好看,难道还指望别人直接掏腰包再欣赏 Dimensional 的魅力吗?

音效

音效花钱买现成的或自己录制均可。录音或编辑音效推荐免费的 Audacity 软件。

三维 HRTF 音效可以让玩家判断声音发出的方向,对 VR 项目必不可少。该音效可利用第三插件通过 Unreal 引擎实现。我用的是 Oculus Audio 工具包和 FMOD。

游戏不论进行到哪个阶段,都不能没有声音,所以开发者还需要背景/氛围音效。在 VR 中可尝试添加能够制造声音的游戏资产,好决定声音从哪个位置传出。

故事叙述要求有声音时,第一需要脚本,第二需要专业人士,第三需要录制准备——这些要花费的时间和精力超出你想象。我通常用 acapela-box.com 文字转语音,非常适合 Dimensional 里人工智能的感觉。

全球市场

VR 头盔销售的数量不大,却遍布全球。要游戏销量最大化,不如试试尽可能简化的文字提示/语音旁白。旁白的话最好加上字幕,哪怕只有英语版本也行,主要为了降低理解的难度。

Dimensional 中有很多提示,其中还可以听到我本人的约克郡口音。若预算充足,建议把钱投在最好的图形和视频 demo 上,有条件最好做多语言版本,但文字提示就别浪费资金了。游戏尽量简洁,不需要那么多文字提示,叙述也能简则简最好。

游戏内容

大部分射击类和益智游戏场景有限,都是挖掘了一个有趣的亮点,再最大化利用同一种游戏机制,这对于小独立开发者十分值得借鉴。很多经典游戏就是这么做的。

乐此不疲地为 Dimensional 添加新内容完全出于一腔热血——这可是我梦想的化身啊。Dimensional 场景包括了很多房间,虽然诸多 3D 模型是重复利用的,但每个关卡都会添加新元素、新资产、新谜团;每个关卡都是我的心血,是数周的编码和测试的结晶。如果要开发多关卡的游戏,一定要规划好游戏长度和关卡数量,尽可能利用已有的游戏资产。

定价

合理定价

你想开发的是低成本的小游戏呢,还是需要数小时高质量游戏时间的大型游戏呢?从一开始就需要考虑定价的问题。

我以前觉得:开发时间长且内容丰富的游戏,以低价卖出,玩家肯定趋之若鹜,越多人买我越高兴,也可以弥补低价的损失。结果却不尽如人意,“薄利多销”怎么在我这儿就不凑效了呢?真相是:人难免有“一分价钱一分货”的印象,4.99 美元看似划算,可并不吸引追求高质量和丰富内容的玩家。“省钱”有时候动听,有时候则会适得其反。

跟紧潮流

VR 产业日新月异,每次出现新的 VR 功能或工具包时,就不得不花大量时间升级项目软件。当下暂且风平浪静,但不进则退的危机感丢不得,能跟紧就跟紧一些。V2 硬件一出现,估计新的挑战和更新的需求便接踵而至。

最新的硬/软件可帮助快速定位 bug 和缺陷。我开发大部分都是依赖 Blueprints ,但也需要反复查看代码,解决问题和填补缺失的功能等。

VR 竞赛既提供资金又提供反馈

经验比金钱更宝贵

随时关注 VR 竞赛,仔细阅读参赛规则。2015 年我用 Dimensional 原型赢得了 VRTGO 竞赛的冠军,奖品并非奖金,而是一台价值 1000 磅的个人电脑。有机会站在 VRTGO 舞台上,受到 nDreams(英国游戏开发商)和 Sony 的点评更是弥足珍贵。要不是这次竞赛,恐怕我都没有坚持下去的信心了。专业开发者的赞扬给了我很多底气,而宝贵的点评意见及 nDream 给予我在 Kickstarter 上宣传的支持都是无价的。光是看别人在 VTRGO 上玩 Dimensional 原型也让我获益良多,大开眼界。竞赛给予开发新手的价值贵于黄金。

在 Kickstarter 上众筹

在 Kickstarter 上发起 Dimensional 的小型众筹一来解决资金问题,二来看听听市场对于 Dimensional 的创意反响热不热烈。

Kickstarter 对整个宣传过程提供宝贵的建议和指导,尽可能为你扫清障碍,是个很赞的平台。Kickstarter 员工给我的项目加上了“强烈推荐”的标签后,不但让我信心更足,还吸引了更多人气。在 Kickstarter 上众筹主要考虑如下几点:

  • 视频、demo、截图和宣传文案要花不少时间;
  • 要注重宣传,及时回答来访者的问题;
  • 要做好花费大量时间更新内容的心理准备;
  • 在 Kickstarter 上准备一些礼物作为回馈,才更易得到支持做你想做的事情,不论是开发游戏资产还是打造艺术效果;
  • 礼物回馈避免选择 T 恤衫等费时费力的东西;
  • 礼物回馈建议 1-25 英镑不等划分级别;
  • 建议在 Kickstarter上 更新项目进展;
  • 如果把数额定太低,信誉度也会降低;
  • 别信口开河——目标小不要紧,但一定要可行;
  • Kickstarter 可提高项目知名度,吸引一批追随者。

登陆 Greenlight 平台

当前 VR 项目不一定非得通过 Greenlight 这一关,但这不会一成不变。我在 Kickstarter 上的众筹是和 Greenlight 同时推进的,两者相辅相成。Greenlight 跟 Kickstarter 都需要投入时间精力,双管齐下的代价则是拖慢项目的进度。

是否需要 demo

大部分 VR 游戏发行没有 demo,所以可有可无。我个人认为 VR 还是新事物,考虑到很多 VR 游戏容易让人头晕恶心,所以 demo 作为“试用装”比较保险。

如果口袋里有 10 英镑,很多人可能会体验免费的 demo,再拿这钱去买另外一个游戏,一份预算,两份收获。一个误区是:免费的 demo 已浓缩了游戏的精华,没必要买正式版。

如果你决定制作 demo,就要确保每次改良游戏机制,打磨润色之后,也要及时更新 demo。当然 demo 的制作、推出和多次测试很费时间。

Demos 应短小精致

我早期的 demo 还不赖,但视觉和音效非常粗糙。通常流传到 Youtube 上的游戏视频所留下的第一印象最为深刻的。如果第一印象不好,玩家十有八九不会买账。

早期 demo 最好能体现你所追求的终极效果。我早期的 demo 大多是游戏进行时的画面,展示了我引以为傲的所有亮点。短小精致总好过冗长乏味。我把 UI 设计放在抢先体验版差不多出来时才做,以为UI事小,游戏事大——可是细节无小事——UI、音效、氛围、乐趣,塑造完美的第一印象一个都不能少。

过早融资是浪费时间

项目成功与否,融资并非决定因素。当初融资占用了我很多时间,因为我想有钱才能买到优秀的设计和音效。我求助了很多业界的大公司,申请了 Unreal 引擎开发者奖金,通通无果而终。投出的 Email 如石沉大海,让我士气大减,无比沮丧。我的创意与众不同,值得投资,但想法太不切实际——谁会给一个名不见经传,游戏原型粗枝大叶的独立开发者投资呢?

另外,一定要提高自己的知名度才能获得更多资源。我曾收到 HTC Vive、Oculus Rift、Touch 和 OSVR HDK2 的免费硬件设备,省了很多钱。

卖点要看得见,简单易懂

Dimensional 有诸多与众不同之处:游戏中的移动、大小空间的支持、越界行为的处理、前进方向为主、麦克风的使用等等。我的出发点是绞尽脑汁去想 VR 可能面临的局限性,然后积极探索解决方案,让游戏尽可能有融入感……所有的技术卖点及其存在的意义恐怕一页 A4 纸就能写完——这可不妙。卖点要淋漓尽致地体现在短视频中而无需多做解释。有趣好玩的卖点胜于任何技术优势。

性能

性能差=体验差

性能对 VR 至关重要,所以要保证开发和测试要应付得了最差的状况,即符合头戴设备(HMD)说明书中的最低配置。

先做好简单的场景再完善细节好过先设计完美的关卡再优化性能。

动态光会拖性能的后腿,所以使用要克制,尽量避免动态光源重叠。我的脾气是怎么难怎么来,游戏从头到尾都有动态光,其中有物理特性的物体都有动态光影,看起来更写实。玩家每进入一个房间,灯会打开;离开一个房间,灯会关掉——这样避免了不必要的动态光。有时动态光会跟着人移动,所以一个光源就够了。

定期检测并收集反馈

玩游戏时,控制的感觉应是自然而然的,解开谜团的方法应是理所应当、清晰明了的——这些体验都需要让没玩过该游戏的人来评判。

第一次明白这个道理是在 VRTGO 播放 demo 时。观察玩家看哪里、注意什么、如何对线索作出反应以及揭开谜团等等很有好处。

抢先体验版发布后,建议定期去 Youtube 搜一下游戏的相关视频。我就是看过大量视频后对关卡和游戏机制进行修改的。Youtube 网友 Shane4Games 玩过我开发的所有关卡,发现了无数问题,让我有机会去修正,更好的正式版才得以诞生。

Bug难找

之前曾出现过一些让我无比焦虑的 bug。

抢先体验版登陆Steam时,一些玩家反馈说 HTC Vive 控制器干不掉游戏中的机器人。我以为问题出在玩家和控制器上,但后来其他人也出现了相似的情况。真相是:一些Vive控制器无法将触发值归零。我没用 HTC Vive 控制器玩过,很难发现问题。千万别以为所有硬件都相似,新出现的硬件尤其不能掉以轻心。

一个 Youtube 视频中,Shane4Games 在第一关无法瞬间移动到另一个平台上,他试了五分钟才成功——这样的漏洞简直是灾难。我试了很多次,想要漏洞重现,但没能如愿。后来我注意到 Shane4Games 要比我高一些,于是我站在一张椅子上又玩了一遍,果然漏洞又出现了。看样子身高也会有影响。每个 VR 游戏中的 bug 可能各不相同。

早期出现的另外一个问题是定位音效有时会突然消失。我曾以为问题已经解决了,但正式版发布前几个礼拜,我无意中发现一个 Youtube 视频中出现了同样的问题。之前之所以没发现,是因为我对游戏的测试时长很短,基本是玩一会就去修改。定位音效消失只有长时间才会出现,只有出现才有机会解决。所以测试也要像玩家那样正儿八经地玩够长时间才行。

另外,很多人即使发现了问题也不会反馈的,只会关掉游戏而已。如果一个 bug 出现,肯定还会重复出现的,别妄想它会自己消失。

宣传抢先体验版

宣传抢先体验版其实和发布正式版没太大区别。实际上因为人们更倾向购买内容较少的抢先体验版,所以前者的销量甚至超过了后者。

抢先体验版应该在润色、性能和稳定性上体现正式版的质量。我的抢先体验版内容丰富但不够精致。

发布前的准备工作和测试很费事,准备工作甚至经常会挤掉珍贵的开发时间。评差评中评都有价值。要重视批评才能改进游戏。

经常及时回应网友的评价和问题。不论是 bug,平衡问题还是一般的测试,玩家都能帮大忙。大多数玩家很友善,乐于帮助提升游戏,他们是珍贵的资源,珍惜他们,常怀感激。

测试版

乐于助人的不少,但并不是每个人都会给你反馈,心态要好。不能指望所有人都无条件接受和热爱你的作品。通常我期待的反馈率是 50%,所以想要多少反馈,发放的秘钥数量就再乘2倍。

测试版在游戏正式上线前几周发布,多给测试者一些时间,留够时间去处理 bug。这期间测试者可能也会有新的点子供你借鉴。当初我给测试版并没有留太多时间就匆匆而过了。

宣传

开发游戏只是开发者的职责之一,还要保证有销量。优质而恰到好处的视频、文章、新闻稿和社交媒体上的信息更新能够引发关注和兴趣。专门开一个网站也不错,或者至少在 indieDB / VRDB 等平台上宣传宣传。

在 Kickstarter 或 Greenlight 上宣传最好在游戏发布前就有一定的玩家基础。

准备工作也应包括撰写和发布新闻稿,发布 demo,给 Youtube 玩家发放秘钥,更新社交媒体等。这些在游戏发布之前做,而不是之后。

也可以在 Reddit、Youtube、Facebook 小组、专门的 VR 网站如 UploadVR、VRFocus、RoadToVR 上宣传。

时机很重要

我是在夏季促销季时发布抢先体验版的,惨痛的教训。

正式版则快到圣诞节时发布,那时很多开发者也忙着推出游戏。Steam 尤其让人心塞,不到 24 小时我的游戏就从首页被挤了出去。很多感兴趣的玩家已买了抢先体验版,所以正式版的销量一直不怎么样。游戏也从未出现在 VR 网页顶端显眼的位置,很快我的游戏在 Steam 上就悄无声息了。

建议从一开始就计划好,脑袋要灵活。来得早不如来得巧,多等几周其实也无妨。

强大的心态

玻璃心不适合做游戏开发。开发要求全身心投入做到最好,但不保证别人会买账,这很让人沮丧。差评不好听,可忠言逆耳,接受批评才能改进。

别让 Reddit 上点“嘘”的人打击了自己。之前我在 Reddit 上激动地发了一篇 Dimensional 成功发布的帖子,不到十秒就有人点了“嘘”。这没什么,大多人还是很友善和鼓舞人心的,“嘘”票很快会被“推”票追上来的。其实去看看别的帖子,底下点“嘘”的也不少。

别试图讨好别人,众口难调,面面俱到的意图下做出的游戏风格可能哪一边都讨好不成。要定好目标群体,朝一个方向努力就好。

往积极里想,玩家的赞许和欣赏对于开发者而言是最大的鼓励了。

测试游戏是否有吸引力

自己开发的游戏,自己肯定喜欢;但要赚别人的钱,要让别人喜欢才好。

怎么知道别人喜欢不喜欢呢?最佳方法是在 Reddit、Youtube 和 Facebook 等平台上发布视频和信息。好评不担保游戏一定大卖,但如果社交媒体上更新的信息获得的“推”数超过 100 个,视频浏览次数上千且拿到很多“赞”和分享的话,肯定是好兆头。

如果视频反响一般,也并不意味着你搞砸了,但也许要考虑减少时间投入;若玩家没有预期的那么热情,可能需要减少游戏的关卡或难度。抢先体验版甚至正式版之后应需求丰富游戏内容也不迟。

写在后面

我努力把游戏做到理想中的样子,丝毫没有偷工减料。成品我很满意,一点都不后悔。但那 18 个月过得太粗糙,太匆忙,没有仔细去享受开发的过程。我希望此文可以给开发新手以启示,绕开我走过的那些弯路。


了解最新移动开发、VR/AR 干货技术分享,请关注 mobilehub 微信公众号(ID: mobilehub)。

从开发零基础到登上Steam和Oculus:一个VR游戏开发者的自述相关推荐

  1. 即时通讯音视频开发(0):零基础,史上最通俗视频编码技术入门

    [来源申明]本文引用了微信公众号"鲜枣课堂"的<视频编码零基础入门>文章内容.为了更好的内容呈现,即时通讯网在引用和收录时内容有改动,转载时请注明原文来源信息,尊重原作 ...

  2. .NET Core 小程序开发零基础系列(2)——小程序服务通知(模板消息)

    基于上一篇文件".NET Core 小程序开发零基础系列(1)--开发者启用并校验牵手成功"的反映,个人觉得效果很不错,大家对公众号开发还是有很大需求的,同时也收到了很多同学的问题 ...

  3. html5游戏开发-零基础开发RPG游戏-开源讲座(四)

    了解上三篇的内容请点击: html5[color=rgb(68, 68, 68) !important]游戏开发-零基础开发RPG游戏-开源讲座(一) http://www.html5cn.org/a ...

  4. html5游戏开发-零基础开发《圣诞老人送礼物》小游戏

    开言: 以前lufy前辈写过叫"html5游戏开发-零基础开发RPG游戏"的系列文章,在那里面我学习了他的引擎以及了解了游戏脚本.自从看了那几篇文章,我便对游戏开发有了基本的认识. ...

  5. 微信小游戏开发零基础教程(一)-CocosCreator

    微信小游戏零基础教程(一)-CocosCreator 最终效果预览 准备工作 创建工程 测试第一个场景 最终效果预览 本教程最后制作的游戏效果: 准备工作 下载 微信开发者工具 最新版->下载地 ...

  6. Ps编程脚本开发零基础学脚本(一)

    Ps编程脚本开发零基础学脚本(附电子书+脚本案例) PS脚本自动化简介: Photoshop 通过脚本支持外部自动化.在 Windows 中,可以使用支持 COM 自动化的脚本语言,例如 VB Scr ...

  7. Mendix敏捷开发零基础学习《三》-高级 (数据删除保护机制、数据关联删除、Security安全、调用外部接口、调用JAVA代码)

    目录 Mendix敏捷开发零基础学习<三> 一. 数据保护机制(Prevention of Delete) 1.业务需求 2.业务分析 3.项目实现 二.Mendix权限(Security ...

  8. Mendix敏捷开发零基础学习《二》-进阶(Microflow微流、表单验证、运算符、条件判断、数据嵌套、触发器、Debug问题跟踪、版本管理)

    目录结构 Mendix敏捷开发零基础学习<二> 一.Microflow微流 1.引言 2.常见的功能 3.微流可以做那些事情? 3.1 举例1(用微流打开新增页面) 3.2 举例2(用微流 ...

  9. 零基础,史上最通俗视频编码技术入门

    本文引用了微信公众号"鲜枣课堂"的<视频编码零基础入门>文章内容.为了更好的内容呈现,引用和收录时内容有改动,转载时请注明原文来源信息,尊重原作者的劳动. 1.引言 如 ...

最新文章

  1. flume 1.7在windows下的安装与运行
  2. python 报错 bs4 FeatureNotFound: Couldn‘t find a tree builder with the features you requested: lxml
  3. Android开发之通过反射获取全局的application
  4. 如何以及何时使用枚举和注释
  5. vector与list的区别
  6. 易错点:C 语言 continue while for 循环
  7. button常用操作
  8. JAVA 高频算法面试题汇总
  9. win7修复计算机无法修复工具栏,win7任务栏消失怎么办?win7任务栏消失的两种恢复方法...
  10. 圆柱体积怎么算立方公式_圆柱体积公式是什么,怎么算,
  11. PHP微信公众号开发之自动回复
  12. 前馈神经网络包括哪几类,前馈神经网络的结构
  13. 理解 Roslyn 中的红绿树(Red-Green Trees)
  14. 华为服务器SNMP协议怎么修改,华为S5700交换机开启SNMP协议
  15. 数组中重复的元素(剑指Offe.03)
  16. Win2003 IIS6.0性能优化指南
  17. Python基础 函数
  18. PhpStorm 配置 Xdebug调试工具
  19. Linux系统中 chown和chmod 命令的区别:
  20. dell服务器安装(dellemc服务器)

热门文章

  1. xml文件概述及作用
  2. 程序初始化失败的解决办法
  3. VS2010中VAssistX破解办法
  4. IDEA插件系列(61):BinEd - Binary/Hexadecimal Editor插件——二进制/十六进制编辑器
  5. qt控件显示当前实时时间
  6. 中英词典+mysql_php+mysql实现英汉查询词典的功能
  7. 风电随机性动态经济调度模型(Matlab代码实现)
  8. 三位共阴数码管动态显示按键控制加减
  9. 如何在Windows上创建,解压,更新.tar.gz压缩包
  10. tools自动登录签到脚本