23 / 08 / 13

氛围感的初次尝试——NetRunner开发札记

有句话好像是这样说的:“长期项目就像普通人跑马拉松,需要一些间歇性的休憩来维持创作热情。” 在过去的一个月中,我投入到一个新的中等项目之中。如今经历了一番折腾,终于尘埃落定。

首先介绍下这个游戏:它的中文名《网络跑手》来自我对《赛博浪客》中文翻译的不满——明明《边缘跑手》这个名字多帅气!具体一点,它是结合了视差要素的平台游戏,带来惊喜和惊吓的同时,混合了探索和解谜要素,轻松愉悦的平台体验以及带有磁带朋克世界观风格的角色。我从纸模开始,逐步尝试构建游戏的各个核心要素,并与陆续加入的八名队友一起努力完成了这个游戏,最终的效果对策划案还原精度远超预期。

一开始的预期是“比GameJam游戏多走一小步”——追求表达的一致性和氛围感。我不打算在这里按照时间顺序把开发流程过上一遍,还是有所侧重好些。

感谢美术老师凌晨三点还在燃烧自己画封面!

类型混合,创新的万能药?

可能有点逗乐,但我确实是从设置显示器中获得了这个游戏最初的灵感。细细想来,之前每一次做游戏好像都拥有 “从身边的生活中获得了某些趣味”一类的开始。 不过,idea 本身并不能当饭吃:衍生出自洽的机制,才算走出了第一步。我自己的习惯是,在原初阶段回到那个预设情境中去,反复拷问自己在那时候会做什么—找鼠标!不知道读者有无类似的经历,至少我自己经常反复大力晃动鼠标,却发现指针在旁边的窗口上。但这也许仍不足以支撑一个核心想法,很快我自然而然地想到了把笔记本电脑从一台高 DPI 显示器上断开并连接到低 DPI 显示器上时,有些窗口仍然会以原来的尺寸显示,导致大部分窗口露在外面,需要仔细摸索把它拽回来—也许这样可以!能不能把这种探索感做到电子游戏中呢?

既然提出了问题,就要用原型来解决。我尝试切出了一沓纸片,在上面画上联通的房间,开始尝试选择性地展示一部分。发觉这还挺有趣,于是决定让角色来操作视野—显示器—本身,而不是里面的内容。在拼凑之中,发觉了三种可能的互动方式,也成为了接下来设计的起点。

这里展示的是最早的电子原型:演示了移动显示器进行探索的功能

这三种能力被我称为拖拽、冻结和切换。具言之,“拖拽”就是可以移动显示器的位置,改变视野和移动范围;冻结可以停下正在自行移动的显示器;切换则是在不同的桌面间切换单个屏幕的显示内容—所谓的里世界罢了。“冻结”很好理解,就是维持状态不动—无论是位置还是显示内容。

尽管这时还处于策划案阶段,已经可以意识到这会对关卡设计造成极大挑战。因此,出于路径依赖,我选择了缝合平台跳跃玩法作为补充—毕竟,每个人的第一款游戏应该都是平台跳跃,对吧?!

好吧,此时的我并没有意识到,这个决定并没有经过任何原型的检验—而它被草率地添加到了核心玩法上,只是因为类型混合很方便。团队会为这个决定付出难以接受的代价。

别以为自己懂

书接上回。

两人花了一晚上接入LDtk,决定尝试设计端与逻辑端分离让设计师可以快速测试关卡,程序同学也无需操心具体逻辑的实现。于是,我简单拉着策划同学对接了一下,就开始切粒设计目标搭白盒复刻纸模关卡了。

在设想中,游戏以解密为主,平台为辅,因此核心3C手感要力保。一开始写文档提需求的时候,我提到希望能够通过数值调整角色跳跃的高度,平移加减速距离和冲刺距离。这时,设计端和实现端分离的规划就已经开始显得不合理了:程序同学不理解为什么不使用力来调节角色的手感,因此觉得重新实现一套角色控制器很麻烦,而且没什么必要。

一开始这似乎只是普通的沟通和磨合问题,但三天之后关卡仍然没有搭起来。这时候我意识到,如果不能让所有人有相同的愿景,游戏是一定会走样的。

“来玩《蔚蓝》吧。”

“停下来探索没什么不好意思的。”我试图安慰几名有些沮丧的同学。

就这样,大家暂时停下了手头的工作,换了一个地方接着自我折磨。好在,团队中有几个人玩过这款游戏,这次重新接触唤起了他们之前的印象。最终,虽然已经过去了五天时间,但程序同学终于决定站出来,重构整个角色控制器,在早期就加入土狼时间、边界推动和操作缓冲的支持,并在后期逐步合入。

顺水推舟的,我也不再坚持只有策划才能产出设计,程序才能写代码,而是开始发挥原本就存在的代办事项列表的作用:从具体表现到实现方案到落地,每个需求在前后端根据实际情况让不同职责和能力的同学参与进来,进行全流程跟踪。我很庆幸及时的转向了:之后即便面临了重重挑战,得益于设计端到产出端的扁平流程,再也没有发生过功能上的返工。

即便如此,仍有遗憾:游戏因为复杂的碰撞玩法不得不从头造出的控制器/物理轮子,直到最后仍然存在不稳定的输入延迟。哪怕是平台跳跃这个看上去很基础的品类,也是不可轻视的啊。

一致性:风格表达上的重重挑战

终于来到正题。

很长一段时间以来,我一直在思考游戏设计与叙事的关系。从工程角度,尝试过用把数据结构纳入故事节点排布中;从文案角度,探讨过让玩家与角色产生关联的技法。然而,如果主语换成「目标」呢?

“给玩家良好叙事体验”显然不是一个好的出发点,因为不够具体。尝试分解这句话—“让玩家经历精彩的冒险”?“让玩家经历起伏的故事”?“让玩家扮演鲜明的角色”?这些也许都可以,但需要做些抉择和具体诠释。但无论如何,在工程层面上,首先要有丰富的内容,然后让它们之间产生纠缠和关联,由此打造具有可信度的世界。

内容的丰富不一定是特别大量,因为不论游戏大小,沉浸感的重要来源都是“透视感”——以小见大。那些刀法精准的游戏深谙此道。

《星空》很大,内容堆满,但还是让人感觉相比那些 BGS 的巅峰作品少了些醍醐味

作为不断拓展关卡的游戏,很难规划一个完整的故事流程,然后一定要做完—隔壁组这时候已经决定只做七天故事中的一天了。也就是说,选择在广度,也就是沉浸感上拓展要更保险些:也就是说,除非游戏以故事为支点,选择构建有沉浸感的体验——也就是所谓“氛围”——本身会成为一个相对自然的目标。这一次幸运的是,在策划案阶段我就决定要做磁带朋克,在保持一定气质特异性的同时,还暗含了cult片的一些特征:重表达而轻故事情节本身,与实际情况不谋而合,便决定沿着这个方向先做下去了。

之前的一些错误逐渐开始让我意识到,如果要实现什么走远一步的改进型需求而不让它被不断新增的修复性需求盖过,唯有在一开始划出专门的资源。这时候新手关卡告一段落,便决定把自己的相当一部分时间转移到 “确保一致性”本身上来。白盒后的重构阶段在客观上也让我松了口气,去做与之相关一系列琐碎的事情。

这意味着要统筹调度一系列视听资源,便信手列出了和下面差不多的表格。

  • 视觉:角色、背景、可交互物件、UI控件、动画与特效;

  • 听觉:背景音乐、场景交互音效、UI交互音效;

这是最后完工的一部分资产——由多个人接力制作。

此时我脑海里已经有一个愿景,总体上也确实一以贯之了。美术方面,在策划案中指定的清晰线风格跑到了最后;在与音乐同学沟通的时候,也很快敲定了风格和配器。麻烦在于,这些要素事实上位于整个开发流程的不同环节:就拿角色相关的一切来举例子,如果只是 “设计一个角色”的话,大可直接划定性别特征/年龄的坐标,然后找些参考,交给美术同学动工即可;但如果要求变成了“设计一个可信的角色”就复杂多了:

  • 首先,为角色赋予背景,并形成他的语言特点,进行对话写作;

  • 确定年龄/性别特征、标志性动作等要素,汇总到角色设计文档中,并交付给美术同学;

  • 在这一阶段,策划搜寻相应的美术资料,对风格参考/角色身上的细节参考进行深入搜寻,在足够丰富之后开始初步制作;

  • 根据世界观中科技特点以及角色背景为他设计可信的装备;

  • 将装备与游戏性设计结合,并列出特效/音频需求,交付给相应的同学;

  • 稍后,将半成品导入引擎并进行技术测试,划定相应的参数规范(最简单的例如图形尺寸);

  • 半成品进行世界观监修,并进行相应的调整需求并反馈给美术同学;

  • 到这一步修改完成之后,主要角色设计应当已经完成70%,正式导入引擎并继续制作其他内容;

  • 细化时,根据世界观产出角色的喜好(如他喜欢的电视节目等,并在文案支持下进行相应内容的平面设计);

  • 将这些内容加入角色设计文档,交给美术同学进行细化;

  • 进行到这里,角色设计完成。但美术制作才刚刚开始:根据以上的全部成果,完成细分内容的制作:如角色包含立绘、小人、大头、漫画框插图……

  • 这些全部内容仍然需要进行一次监修,以确保风格一致。

最后组装好的游戏长这个样子:

如果考虑到排期和依赖关系的话,情况更加复杂。先不说具体的产出可能由之间完全没有联系的几个人产出,哪怕只是在技术验证的层面上考虑,因为白盒不能解决所有问题,所以需要及早导入相应规格的美术资源(比如,确认角色在特定比例上与关卡要素配合得当);美术资源的产出周期会受到许多不可控因素如排期和监修的干扰,只能尽力加以协调……

不管怎样,我还是尽力呈现一些亮点。《暗影火炬城》中雷德文不耐烦地敲击锈蚀的修复机,《集合啦!动物森友会》中小动物拒绝你的钱,这些不乏趣味的小细节往往成为通关后玩家津津乐道的闪光点。我也计划了将首页做成沉浸式的屏幕,在其中展示与关卡和对话要素产生关联的平面广告,并一路落地。但总体上来说,还是不乏遗憾:例如我们本计划奖励不走寻常路的玩家,在大地图周围制造了利用机制进入的岔路和房间,并制作了一些收集品——磁带。尽管包括音频在内的所有资产都准备完毕,由于修复错误的时间无限拉长,哪怕最后通宵加班也没能把这些东西放进去。

翻得最大一次车是,当主要角色B的立绘进行初步设计时,由于给到美术同学的世界观支持文档中只提到该角色 “喜欢用外骨骼装饰自己的身体”但并未提供相应的参考图片(她同样无法看到内部对磁带朋克风格的详细描述如“与赛博朋克的区别”),导致一个包含义肢的设计在流程中存在了相当长的时间。并且因为工程上的需要,这个设计在未上色的时候就通过了一名策划同学的监修,而我把细节参考交给美术同学时也没有看到这张图;一切导致了直到细化立绘接近完成时,在制作动画的环节上我才第一次看到这个设计!

但无论如何这是非常出戏的。最终导致了与之相关的资产全部推倒返工。对方表示提供的美术参考支持相比既往工作缺失了很多关键内容,只好靠自己设计。更糟糕的是,由于关卡——一开始产出太慢——最后打磨欠缺,到了最后一天还在改结构的地步;错误修复随即开始过晚,一路推到了最后一刻,比起来不那么关键的 UI 工期随之压了又压,立绘资源完全没能落到游戏之中。虽然人们总把冰山理论挂在嘴边,但它并不能为一切浪费和不当安排开脱。

最终改成了现在这个腿上夹板的感觉

现在事后诸葛亮的话,如果是更长期项目的话,确保每一个人都具备创作热情和能力,才是让此类流程能够正常运作的保障吧。但回到那个时候,采取的应急对策是请策划同学抽出时间详细审读世界观文档的同时,将所有的监修工作以及一部分资产的制作压到自己的案头。如果再来一次的话,也许会在一开始考虑的更全面些吧……至少应该在一开始把相关资料充分暴露给美术同学,并给予更有力的支持。

结束之后我为这次不愉快的返工表达歉意之时,也下定决心从头补习美术知识。希望下一次进行深度合作的时候,自己能以更加负责任的做法来进行合作吧。

画大饼则烙大饼,画小饼则烙小饼

项目诞生于实习期间,做起来也就心无旁骛。

一开始我自视甚高,觉得另外几组饼画太大,肯定做不完——3D空间折叠解谜、多人3D物理派对、电影化演出文字游戏,而且他们的主策都没有技术背景。诚然,自己以最小保守创新为目的去做”高完成度“的游戏,目的是达到了;但那几个宏伟的项目表现也确实更好。即便最终的成品和策划案相比差别不小,效果是实打实的。

也许,GameJam 思维天生是双刃剑:Jam 本身催化创新,但有些创新完全无法通过这种模式诞生。而那些从建筑角度、电影角度切入的作品,某种程度上也有很多不那么“正统”的张力。

没错,我们确实制作了40多个关卡并整合了近30个,并提供了 Boss 战和精致的周边包装。但最后回顾,似乎在关卡设计和基础体验上仍然只能说差强人意甚至不算及格——哪怕如果没有持续投入,游戏甚至不能流畅游玩。两相叠加,也就显得平庸了。”短板出清,长处有限。“有试玩者这样评价。

既然合作的同学把我这张饼不走样地画了出来,也就从侧面反映出它的保守了。

以终为始

中二时期观看的动画常常有所谓” 强化合训“情节,主角总是经历挫折之后,在里面吸收力量,结识伙伴,走向下一程。诚然,现实中的故事不会那样热血,人心也要复杂和难以捉摸的多。结束之后,我花了很多精力才整理和平复下来,重新投入长期项目的开发。

是啊,我确实不会像故事的主角一样,一路走向世界巅峰;但收获的经验,结识的伙伴也实实在在。过去的一个半月仿佛是一场梦,又那么触手可及。这是我第一次设计联通关卡,第一次打造完整,落到项目中的世界观包装,第一次K动画,第一次协调十个人的团队……

在机场休息室中,我满怀感激敲下这些文字。有个经典的故事设定手法是 “夏令营“:互不认识的角色在封闭环境中邂逅和联结,在一小段之后又回到各自的生活中去,仿佛未曾偏离过生活一样。一直不理解为什么他们会反反复复回想当时的事情,而现在这个问题的答案不言自明。