曾经在2K总部做了一年软件工程师,我会先讲讲工作环境与体验,配一些自己拍的照片,再由亲身经历的几个事件延伸开去,聊聊游戏行业,最后着重讲一讲被忽视的游戏开发资源,以及我眼中的独立游戏开发陷入的怪圈。前半部分图会比较多,后半部分以文字感悟为主。
地理位置
2K Games的总部坐落在旧金山北边僻静的小镇诺瓦托(Novato),而诺瓦托隶属的马林县(Marin County),正是《看门狗2》开场时,依靠着栏杆的主角马可仕所在的县。
这里离硅谷车程两个小时,而除非事先知晓,恐怕没人会猜到这样一个大农村的废弃飞机库里,藏着这个行业巨头之一,以及它的子公司Visual Concepts与Hangar 13(Hangar正是飞机库的意思)。
在离公司不远的一个供人散步的小土丘上,可以一览公司全貌(图里只有白色飞机库是公司,红色的都是居民住宅):
(左边那两个白色的飞机库里,就是2K,Visual Concepts和Hangar 13)
可以看到再往远处就是一片不大不小的湿地——是的,非常亲近自然。事实上,从这个小土丘往另一边拍照,是这样的:
以及这样的:
从公司的停车场往上爬一个坡,就是一条毗邻刚才那片湿地的超长步道。头图便是那条步道上的一个座椅。
(这个坡从某种角度看,会有XP桌面的感觉)
这么原生态的环境里,你会感觉一切似乎都和游戏、科技没有关系,甚至连公司正门外的2K标牌也小得不起眼。接下来就进入公司内部吧。
内部环境
说是总部,其实并不大,两层而已,第一层还有一大半是对外开放区域,分布着沙发、自动售货机、街机等。最显眼的当属这几位:
(《生化奇兵》系列等身雕像,可能是除了前台Logo以外、唯一能看出“这里是2K”的地方)
办公室走道之类的,我并没有拍照留念,不过有一张我当时的工位(后来被改成升降桌了):
左边那两台叠着的是Xbox One和PS4的开发机,右边是一堆万智牌
由于面积不大,公司是没有食堂的。午饭可以选择去对面——也就是走十步就能到的、Visual Concepts和Hangar 13所在的楼——购买一些限量供应的外卖,会有专人每天从餐馆订一批吃的,摆在一楼的休息区域里以低价售卖。
我印象最深的一次去那边吃饭,是在桌子上发现不知是谁摆在那儿不要了的老游戏:
(中间的《三角洲特种部队:大地勇士》是我儿时快乐又刺激的回忆)
可惜我能找到的室内照片不多了。总的来说,和外部的原生态比起来,公司内部的游戏氛围是比较浓厚的。休息区的街机和主机、桌上摆着的游戏光盘、会议室里摆着的《无主之地》系列销量超过多少多少千万的奖杯、楼道里占了一整面墙的《The Darkness II》的海报(从这点来看,这个冷门游戏的派头可不比其他的IP小)、办公区域随处可见的开发机、正在进行实机测试的员工、大显示屏上的游戏预告片和带调试参数的实机画面等等。这一切应该只有在游戏公司才见得到吧。
我的日常
我所在的组隶属2K Games,而不是Visual Concepts或是Hangar 13。我们组负责编写SDK,功能简而言之是让游戏与2K的服务器建立连接,传递诸如账户资料、玩家排行榜、玩家行为之类的数据。所以,我们的客户才是真正的游戏工作室——Firaxis Games,Hangar 13等,我本身并不会参与任何Gameplay的开发。
这是一件好事,也是一件坏事,取决于从哪个角度去看了。
往好的方面想,我不需要加班,游戏临近发售时的996不会殃及我们这样的组。往坏的方面想,我并不能真正接触游戏开发——直到离职我都没有打开过虚幻4一次,整日都与Visual Studio和C++为伴。不过,我当时也并没有那么想真正着手开发游戏,能呆在大游戏公司的这样一个比较轻松的组里,我其实是挺满足的了。而且,毕竟这里是游戏公司,对同时是一名游戏玩家的我来说,即便是由部门总领导召开的那种、放在别的公司一定会很无趣的会议,在这里也总能令我兴奋。
我时常会在这样的会议上了解到公司旗下各款游戏的开发进度、时间线,被废弃的项目、以及公司未来的动向。像是用新引擎重制的《四海兄弟1》、《生化奇兵》续作的存在、《文明》系列新添加的启动器并登陆Switch等,在内部都不是秘密。不过,当时无关人员(即使是公司员工)并不能随意进出《生化奇兵》的相关办公区域,可能是为了最大程度防止泄露吧。我们的每款游戏、大型DLC都会有各自的“代号”,所以外人即便听到有人讨论也会一头雾水,甚至是Xbox、PS4都会以代号来指代。有趣的是,有些作品的代号会被SteamDB里的相关条目暴露。
我清楚地记得当时规划了一部《XCOM》衍生作品,说是会在某某时间段发布,但我离职后一直没再听到关于那部作品的任何新闻,直到今年四月的《奇美拉小队》。SteamDB里显示的代号告诉我,这的确就是那部作品,然而……计划之中它原本的样子,可能只有相关员工才知道了,因为《奇美拉小队》主角团的人设,与我最早被告知的消息大相径庭。我只能说,它原本规划中的模样,或许能吸引到更多的玩家和粉丝。
至于午休时间,我的几个同事热衷于万智牌。我也试着入了坑,买了几套卡组,还玩了好久Steam上的《Magic Duels》。但后来深感这个坑实在很深,便在离职时把我的卡全都送给他们了。
刚才说过公司没有食堂,所以午饭我也会选择出去吃。问题是,诺瓦托是一个几乎没有华人的地方(所以呆了一年使得本就自闭的我更加自闭了),正宗的中餐馆是完全不存在的,有也只是美式中餐。
幸运的是,我发现一家日本餐馆,老板是中国人,员工也大都是中国人。它们中午供应的便当盒非常不错,炸鸡柳、炸猪柳什么的,配上味增汤和色拉,现在想起来还有些馋。我由于去的次数过多,后来只要往吧台一坐,大家就都知道我要吃什么了。在清闲的时候,老板还会过来陪我聊会儿天。如果晚上不和同学联机打游戏的话,那便是我每天唯一能说中文的机会了。
(阳光下的Chicken Katsu)
(我的车在餐馆停车场,Sushi Tri就是店名了)
几种非日常
有几天过得和往常很不一样。
一是Hangar 13,也就是《四海兄弟3》的制作组,裁员的那天。不少媒体也报道过那次裁员。那一天,对面那栋Hangar 13所在的楼的入口处站着两名墨镜黑衣人,他们会非常仔细地看你进去的时候是否刷了工牌,为了防止任何闲散人员进入(通常是没有人来检查的,可以跟着别人溜进去)。这也体现了裁员是一件很严肃的事。
那天上午我在停车场停车的时候,已经能看到几个员工拿着黄色信封,在那条湿地旁的步道上一边踱步一边打电话了。仅是这一个画面,就已经能解读出很多信息。黄色信封里应该是最后一次工资和未来几个月救济金的支票,打电话则应该是告知家人这个坏消息——这样的裁员一般是不会提前通知的,往往早上到达公司,只消上级一个简短的5分钟会议,自己的工作就毫无预兆地丢了,工牌归还,账号撤回,不能再登录使用自己的工作站,能做的只是拿着信封和个人物品,走出那栋楼。
据我的观察,游戏公司的人员流动是比较厉害的。因为销量不好而被迫裁员,因为不满意工资而跳槽,因为一个项目的结束而被开除,总之原因可以有很多。我在网上搜寻我那几个前同事的现况,发现他们几乎都换公司了,有的去了Twitch,有的去了EA,有的去了手游公司。
二是去GDC(游戏开发者大会)的那天。因为2K离旧金山市中心也就一个小时左右的车程,我们组当时得以轮流去逛GDC。
其实现在想来,我当时的心态还是不够专业,在把GDC当做小型E3来逛,尽找大公司或是自己认识的作品的展台,乱看一通,什么技术都没有学到(本文最后会展开讲这个问题)。
(《失落之魂》试玩)
(育碧的一场讲座)
(独立游戏节展台,《掘地求升》、《茶杯头》、《憎恨之西》等试玩)
(Valve展台,走近能听到《传送门2》里那首《Still Alive》,很难让人不想跟着唱)
不过体验还是很新鲜的,也有一些作为玩家身份的收获。我仍然记得看《Baba is You》的作者Arvi Teikari在台上介绍这款游戏,当他操控Baba突然开始推动“规则”时,底下一片惊呼——那种集体一齐被惊艳的感觉,让我当时就打开Steam App把它加入了愿望单。
《Noita》的主创之一Petri Purho则简单展示了每个像素都被模拟的奇观,他还在Q&A环节被人问道“请你简单讲讲你的引擎是怎么做到每一帧都能模拟屏幕上每个像素的”,他说“这个没法简单讲”,提问人锲而不舍,说“如果你非得用十个字概括呢”,结果他还是没能回答。
GDC举办地离日本城比较近,所以那天我又去日本城逛了一圈。印象最深的就是那家书店里齐刷刷一排游戏设定集了。
梦想vs现实
“在游戏公司工作”这件事,在一些人的脑海里,会直接和“开发自己喜欢的游戏”划上等号。我的工作已经是一个反例了。
我承认我最初接到Offer的时候,真的在异想天开我能加入哪部游戏的开发:“可别是我不喜欢的《文明》”、“《XCom》倒不是不可以”,云云——在游戏公司即使是做软件开发,也完全可能干着和游戏基本无关的活儿。写一下这个线程管理器,分别查一下PS4、Xbox和Switch上的线程亲和性要怎么设置……嗯,得阅读官方文档了,因为这种问题即便是万能的Stack Overflow都不会有答案。我来看看索尼的官方文档……啊,和任天堂的比起来好像精简了很多,看来是要开发者自己去悟吗……咦,怎么回事,这个错误信息?Google一下呢……零条结果。
我甚至在我们的某一行非常晦涩的代码旁边看到过这么一条注释:Really, Sony? 一定是先前写这行代码的程序员对API奇特的使用规则留下的抱怨。当然这里不是为了拿索尼开涮,只是为了体现这样一份工作在某种程度上的特殊性和枯燥性。你看,我所做的,虽然对游戏制作组来说必不可少,但其实和玩家最终看到的内容毫无关系。我不能决定这个敌人的攻击欲望,不能决定那件物品的被动效果,不能决定过场动画的时间长度……我甚至看不到除开SDK之外的代码。就像我知道我正在造一台酷炫的、巨大的高达,但由于我的视野被局限在一块很小的机体、我的工作被局限在拧一个很小的螺丝,无论这台高达的全貌多么壮观,我都很难真正和它建立情感上的纽带。
而即便我真的在某个游戏制作组里,刚才说的那些,也都不是我能决定的事。这个道理应该也很显然了——程序员只是负责实现分到他/她身上的那一点点需求而已,越是人多的公司,细分到每个人头上的那一片就越小。至于真正玩法的个中变数,有策划呢,有产品经理呢,有制作人呢。
这应该也是“制作人”这样的头衔被很多人向往的原因吧,能主导整个游戏的基调、观感、玩法、剧情,那样才能体验到造物主般的快乐吧。不然,即便作为玩家我十分讨厌氪金,如果上边要求我一个程序员来实现这个氪金的功能,我也只能答应不是吗?那样才不是什么“开发自己喜欢的游戏”。
不过我没有在抱怨什么,我之前也提了,对当时的我来说,在那个组里并没有什么失落感,相反其实挺开心的。作为软件工程师,能学到领域内的新知识,还能因为在游戏公司耳濡目染而对业界有所了解,是为一举两得。
陈述完我身上的事实,我想谈谈那些有梦想的人的未来。如果想要开发自己喜欢的游戏,我认为最脚踏实地的起点其实很明确——从现在开始,利用业余时间着手行动起来,引擎和工具学起来,技术分享看起来,游戏设计也要试着从正在游玩的游戏里开始领悟、汲取。说白了,就是成为业余独立游戏制作人。
没有什么好怕的,这真的比进入大公司去“开发自己喜欢的游戏”那条路快多了。我知道诸如版号之类的阻力仍然不容小觑,但请恕我不想在这篇文章里引入那些话题,这里只是广义上的建议。真的要较真的话,制作游戏所需要的各种技能点早就宣告了没有一条路是简单的。
而在自己的开发取得阶段性成果以后,可以再考虑要不要继续追寻那些大公司。如果要的话,简历上或许已经能放上自己的作品了;而更关键的,到那时候你很可能已经找到了适合自己的平衡点,觉得独立游戏就很好,甚至想组建自己的工作室,不再向往大公司了,谁知道呢?
无人问津的资源
最后,我还想聊聊类似GDC这样的资源。
上文我提到过我曾经把它当作E3来逛,那当然是错误的打开方式。2K为员工报销去GDC而不是报销去E3,本身就能看出这两者本质上的区别了——前者是面向开发者的,后者则更多地面向媒体和玩家。我也是后来才领悟到,认真对待的话,GDC上的资源其实是非常珍贵的,在电波对上了的时候,哪怕是一个讲座里的一句话,都可能为开发者带来巨大的启发或是灵感。
例如Valve早在八年前的GDC 2012上的一个讲座AI-driven Dynamic Dialog through Fuzzy Pattern Matching,至今仍然不过时,甚至还启发了《看火人》中Henry和Delilah的对话方式、启发了《最后的生还者》中所有AI的对话方式,后两者分别都有自己的GDC讲座来介绍它们的对话系统,全都直接鸣谢了Valve当年的那个讲座,可见它的影响力——V社之所以是V社,还是有道理的啊,不仅仅有玩家接触到的精彩绝伦的游戏本身,更有能启发开发者的业界超前的设计理念。
我相信,无论想做什么类型的游戏,都能在GDC Vault中找到相应的技术分享。GDC Vault分收费和免费两部分,而免费区域里的讲座量也已经很大了。讲座,通常是其他(很可能是已经做出过杰出游戏的)制作人把经过萃取后的知识有条理地、无私地展现出来(不需要扫码,没有,没有二维码可以扫,没有公众号需要关注),这对整个游戏产业能起到非常健康的推进作用。而对独立游戏制作人来说,更是无价之宝。不然,我还真的不知道去哪儿能获取同等质量的资源——知乎上的内容杂乱参差不齐(“X个赞以后再补充”,“剩余的更新在公众号”,呵呵),奶牛关定位不明确、和知乎有很大重叠并且活跃用户很少,书籍则通常只是泛泛而谈,英文原著往往还相当昂贵,为此专门攻读相关专业也有很高的时间和金钱成本,INDIENOVA倒是不错,但我仍然觉得里面各种日志的被关注度不够。
我一度疑惑独立游戏开发者都是在什么平台上交流的,难道真的是小范围建一个微信群就完事儿了吗?可是那样的话知识的流通就完全被限制住了啊。比方说,我特别想把Valve的那期讲座分享给所有想为自己的游戏里加入更高级的对话系统的开发者,但是我根本不知道该去哪里做这样的分享。每次有新出的文字冒险游戏,或是拥有对话系统的游戏,当我看到里面的对话还是那死板的你一句我一句、每句话都是被预设好的时候,我都在心里,一边困惑怎么八年前《求生之路2》就已经做到了的动态对话到今天还是这么罕见,一边猜测是否是因为太多不思进取的游戏和引擎被市场纵容,而导致革新迟迟不来。我不相信玩家发现游戏里商人见面打招呼的方式会随着自己身上的装备而变化时会不感到新鲜,我不相信玩家发现盯着选项发呆能触发隐藏对话时会不感到惊喜,我不相信玩家发现如果正好在下雨则会出现额外选项时会不感到意外,但是这样细节上的创新,我真的几乎不曾见到过。
我见到的,最近几年,起码两万个独立游戏吧,一万个是《杀戮尖塔》的复制品,一万个是《死亡细胞》的复制品——想到这里,我大概知道原因了。很多人是作为玩家看到什么火了就想去做什么,因为火了至少代表好玩,但作为开发者,他们被一叶障目,注意不到这么多年业界积攒下来的技术和设计理念,忽略了那些最成功的例子背后的细节。他们光顾着复制表面上的玩法,殊不知角角落落里有那么多值得借鉴的、能为玩家带来更好体验的技术。
正好提到《死亡细胞》,我必须介绍Youtube上“How Dead Cells Secretly Stops You From Dying”这个视频(我在百度之后没有发现国内有搬运,而这从侧面验证了我的想法——这样的技术分享根本没有得到足够的重视)。它非常生动地介绍了在《死亡细胞》中,为什么你总是能感觉你的动作很顺滑——总是能成功地跳上一个平台,即使严格来算,你本该够不着,总是能成功地打到自己想打的敌人,即使严格来算,你的操作本该使你挥向另一边的空气。这是因为游戏一直有在检测这些微小的操作失误,并帮你纠正,毕竟这是一款以砍杀为主、而不是平台跳跃解谜为主的游戏,游戏不应该在跳跃上给你制造太多的惩罚。
受《死亡细胞》启发而制成的游戏,我也玩过几款,可惜的是完全没能复制成功这样的手感。我在想,但凡我们能有一个活跃度够高的平台做技术分享,但凡有一个人,把这个视频广播给了各位独立游戏制作人,那起码这类作品的Steam评测区内,能少一大半“手感怎么这么垃圾”的差评。学当然可以学,但请务必不要只学表面啊!已经有这么好的资源详细解释了它的手感为什么这么棒,请把这关键的技术也学过去啊!我十分确定,这个视频里介绍的思路,只要愿意花时间打磨,是完全可以被应用进独立游戏的,和许多昂贵的高精尖技术比起来,这样易于投入使用的设计理念简直是瑰宝。可惜,就是不存在一个全知全能的课代表,及时地把这样的资源输送给广大独立游戏制作人。
再举最后一个例子吧,《杀戮尖塔》。如果是我来仿制,起码有一个功能我会加。我会试着让敌人在和我交战前,根据我身上的遗物种类和牌组性质,来说一些应景的话:
“上一个使毒的,没在我这儿撑过三下。”(如果玩家此时走的是毒药流,并且上一把毒药流死在了这个怪的手里)
“你的那只眼睛,该不会是从我这儿偷的吧?”(如果玩家持有混乱之眼遗物,并且此时的敌人是本就可以造成混乱的异蛇)
“来和我心理战吧。”(如果玩家持有符文圆顶,效果是无法再看见敌人的意图)
“还留着那个诅咒呐?”(如果玩家连续三次路过商店,都没有去除牌库里的某张诅咒牌)
这样的动态对话真的不难做,多花一点心思打磨,就能让细心的玩家时常被惊喜到。《杀戮尖塔》本是个和对话系统没有什么关系的游戏,但是如此结合,既不会影响游戏节奏,又能让游戏里的世界更加活灵活现,这说明这些技术是完全可以被灵活运用的。如果那个Valve的动态对话讲座已经被广泛流传了许多年,或许已经有许多独立游戏制作人都受到了启发。而在那个平行宇宙里,我们早就玩上各种样把对话玩出花儿来的游戏了。
我相信这不是态度问题,我相信如果这些资源得到足够的曝光,是可以确确实实提高大家制作的游戏的质量的,没准还能让一些人灵光乍现,搞出极好的创意来。
最后放一张在2K工作时,家门口望出去的照片吧。爱车与游戏,是我在漂泊的日子里唯一的陪伴了。
地址:https://mp.weixin.qq.com/s/271utlpo9XPd9c0vi1GEqQ
|