第 7 章

独居与共处

把时间拨回2009年。这一年没有发生什么决定性的事件。没有一款游戏改变行业格局,没有一家公司横空出世,没有一个平台重新定义分发。它只是这样一个年份:足够多的人开始意识到,一个人做游戏这件事,在技术上已经可以想象了。工具链在之前几年里静悄悄地成熟了——GameMaker 已经更新到了第七个版本,Unity 在 Windows 平台上开始提供免费授权,RPG Maker XP 的英译版在欧美论坛上流通。分发渠道也在松动:Xbox Live Arcade 已经证明了小体量游戏的商业可行性,Steam 虽然还在严格筛选上架作品,但它的存在本身就是一个信号——数字分发不需要卡带,不需要货架,不需要说服沃尔玛的采购经理。一个人坐在卧室里,理论上可以把作品直接送到几十万人的屏幕上。

理论是一回事。实践是另一回事。深夜。一个房间。房间不大。书桌上摆着一台电脑,显示器是那种厚重的液晶屏,边框上贴着几张便利贴,字迹潦草,写着只有写的人才能看懂的缩写。

桌面上摊着半杯凉掉的咖啡,旁边是一包拆开的饼干。电脑屏幕上开着三个窗口:左边是编辑器,中间是编译器的报错信息,右边是浏览器,开着十几个标签页——论坛、教程、文档、以及一个搜索引擎的搜索结果页面,搜索关键词大概是“collision detection tilemap bug”之类。这个人已经在这个问题上卡了将近四个小时。没有同事可以转身问一句。没有技术主管可以拍板说“先用这个方案,以后再优化”。没有测试部门可以提交 bug 报告然后下班回家。这个人就是程序员。这个人就是美术。这个人就是测试。这个人就是那个必须在一个脑袋里完成所有决策的人。他切换窗口,登录一个论坛。TIGSource,或者 GameDev.net,或者某个引擎的官方社区。

他用不太熟练的英语打了几行字,描述他遇到的问题,附上一段代码片段,标题大概类似“Help with tile collision in GameMaker”或者“RPGMaker script conflict - need advice”。然后他点击发送。然后他等。这个场景在2009年前后大量发生。它不壮丽。它没有英雄气。它不会被写进任何一篇成功故事的导语里。但它是一种新的生产方式的细胞单元。在这个细胞里,一个人同时占据所有职位,同时承担所有风险,同时面对所有不确定性。自由这个词,在这种处境里首先不是一个哲学概念。它是一种结构性的现实:没有人替你兜底。你做错了,就错了。你做不完,就做不完。你在第三个月发现自己最初的设计思路行不通,那就全部推倒重来。没有人扣你工资,也没有人给你发工资。有一份材料可以帮我们看清这种状态的具体质地。它是一篇开发者日志,发布在大约2010年前后的一个 WordPress 博客上。

博客现在已经关闭了,页面背景是默认的灰色,字体是默认的宋体,没有任何设计可言。那篇日志的标题已经找不到了,内容大致是记录当月的开支。里面有一段话,大意是:这个月美术外包花了三百美元,所以伙食费还剩一百二十美元。算下来每天四美元。泡面大概一美元一包,还可以加个鸡蛋。这篇日志被阅读了几十次。有两条评论。一条说加油。一条问为什么不先用免费素材。

这份账本的存在本身就是一种证据。它精确地标定了一个位置:在这个位置上,创作不是灵感的喷涌,不是天才的独白,而是一道算术题。鸡蛋是可选项。

这种计算不是某一个人的怪癖。它是一种结构性的处境。当创作的全部成本——时间成本、生活成本、软件授权成本、外包成本——全部压在一个人的收入来源上,而那个收入来源很可能为零,计算就成为日常实践的一部分。不是浪漫的贫穷美学,不是“艺术家挨饿”的叙事,就是简单的加减法。这个月能不能加鸡蛋。下个月能不能付电费。这个项目还能撑多久。这种压缩结构定义了独居开发的物质基础。

一间卧室。一台电脑。一份泡面预算。压缩意味着把原本分散在多个部门、多个人、多个层级的工作,全部压进同一个空间和同一段时间。这个空间通常就是住的地方。它不需要很大。一张桌子,一把椅子,一台电脑。

电脑的配置在2009年的标准下可能不高——开发者论坛上经常可以看到有人问,自己的笔记本电脑内存只有一 GB,能不能跑某个引擎。有人在用一块屏幕坏了一角的台式机。这些设备不是用来打游戏的。它们是生产工具。它们被推到极限,同时运行着编辑器、编译器、绘图软件和浏览器里打开的十几个教程页面。风扇在深夜发出持续的嗡鸣。这就是那个房间里的声音。

物质条件描述的是边界。但边界之内,还有更难以描述的东西:心理节律。当一个人独自面对一个长达数月甚至数年的开发周期,他面对的最大困难不是技术。技术问题总有办法解决——查文档,搜论坛,试错。真正困难的是时间感的丧失。在公司里,时间是结构化的。晨会,周报,里程碑,季度考核。

这些外部时钟虽然令人疲惫,但它们提供了一个坐标系。你知道你在哪里,你知道下一步是什么,你知道如果落后了会有人提醒你。独居开发者没有这个坐标系。他只有自己设定的节点,而这些节点随时可以被自己推翻。

2011年初,TIGSource 论坛上有一个帖子。发帖人说,他本来计划去年十二月完成 demo,但现在已经是二月了。不是因为他懒。他每天都在工作。只是每次他觉得快到了,就会发现有更多东西需要改。这个帖子下面有十几条回复,内容大致相同——我也是。这种集体确认不是解决方案。但它至少说明这不是个人意志薄弱的结果。

它是一种结构性的特征。当一个人同时负责定义“完成”和判断“是否完成”,这两个角色之间就没有距离。没有距离,就没有刹车。每一次接近自己设定的终点,都可以重新定义终点的位置。

这不是拖延症。这是一个人的工作室里,内部时钟的天然缺陷。这种延迟的普遍性指向一个更深的问题:在缺乏外部时钟的情况下,如何维持一个作品的内部秩序?这个问题没有标准答案。

每个独居开发者都在用不同的方式摸索。有些人严格遵循自定的时间表,把每一天当作上班——九点开始,六点结束,周末休息。有些人完全放弃时间表,只在状态好的时候连续工作十几个小时,然后停好几天。有些人在墙上贴满便利贴,每完成一项就撕掉一张,用物理的动作替代虚拟的进度条。有些人在论坛上开一个开发日志帖,用公众承诺来制造外部压力——如果我说了月底要出 demo,月底就必须出 demo,因为有人在看。

这些方法的效果因人而异。但它们有一个共同的前提:没有人替你维持秩序。秩序必须从内部生成。这意味着独居创作不仅是一种生产方式,也是一种自我管理的实验。实验对象是自己。实验结果常常是失败。

失败在这里不是一个隐喻。它是一组具体的事实。游戏做到一半放弃了。游戏做完了但没有任何人下载。游戏发布后收到的第一条评论是负面的。这些事实在独立游戏的历史叙事中很少被展开。叙事偏爱成功者。成功者的故事可以追溯出一条清晰的弧线——灵感,坚持,突破,认可。

但大多数独居开发者的经历不是弧线。是散点。是几个月的工作化为废稿。是发布当天服务器日志里只有自己的 IP 地址。是深夜关掉电脑,坐在黑暗里,不知道该不该继续。2010年,GameDev.net 上有一个帖子,发帖人化名“endgame”。标题大致是:我做了三年,现在我想放弃。帖子很长,详细描述了他的项目——一个像素风格的 roguelike 游戏——从最初的兴奋,到中途的反复修改,到最近的彻底停滞。他说他已经没有钱了。他说他的女朋友离开了他。他说他不知道这三年是否值得。这个帖子收到了四十七页回复。有人鼓励。有人批评。有人分享自己的类似经历。其中一条回复的大意是:你的问题不在游戏本身。你的问题在于一个人承担了所有事情。这不是你的错。是这个模式的问题。这条回复被很多人赞同。它点出了一件事:独居的代价不是个人意志薄弱的结果,而是结构性的。

当所有决策集中在一个人身上,当所有风险由一个人承担,当所有反馈在发布前都无法获得,失败的概率本来就高。这不是辩护。这是数学。

但正是在这些失败的散点之间,有一些东西在缓慢生长。不是作品——大多数作品确实没有完成。而是一种知识,一种关于一个人如何从头到尾做出一个游戏的知识。这种知识不在教科书里。它在论坛的帖子里,在代码注释里,在开发者日志的边角里。

它在那些深夜交换的代码片段里。一个开发者在论坛上贴出一段处理粒子效果的代码。另一个人拿去改进了自己的爆炸动画。一个人写了一篇教程,讲如何在 GameMaker 里实现伪 3D 效果。另一个人用它做了一个赛车游戏。这些交换不是正式的合作。交换双方可能永远不会见面,甚至不知道对方的真名。他们只是共享同一个问题,然后共享同一个解决方案。

这就是共处的第一种形式:知识流通。这种流通依赖一种特定的媒介。在2009年前后,独立游戏开发者的主要聚集地是论坛。

TIGSource 的 DevLog 板块、GameDev.net 的技术讨论区、各个引擎的官方社区。这些论坛的结构大致相同:有展示作品的板块,有提问的板块,有闲聊的板块。闲聊板块里的话题常常从技术开始,延伸到设计哲学,再延伸到个人生活。有人抱怨美术太难学。有人争论像素画和矢量画的优劣。有人在凌晨三点发帖说,他刚刚删掉了三个月的代码,现在感觉很好。下面有人回复说你疯了。也有人回复说我懂。

这些对话看起来琐碎。但它们构成了一种松散的共处关系。这种关系没有公司同事那么紧密,没有朋友那么私人。但它提供了一种替代性的存在感:你知道这个世界上还有其他人,在同样的时间,做着同样的事,面对同样的问题。你知道你不必真的独自一人。

这种弱连接不是独居的补充。它是独居的条件。当一个人在自己的房间里无法判断一个设计是否可行,他把问题发到论坛上,收到五个回复,其中三个说不错,两个说这里有问题。这五个回复就是他的同事。他们不拿工资,不签合同,不承担任何责任。

但他们提供了一种东西:外部性。外部性打破了一个人头脑里的封闭循环。它让判断有了参照。它让创作者知道,他不是在对着虚空做游戏。有人会玩。有人会在意。有人会批评。这种知道本身就是一种支撑。

但这种支撑也有它的局限。论坛上的共处是松散的。它可以提供技术帮助,可以提供情感安慰,但它不能提供制度性的缓冲。当一个人真的做不下去了,论坛上的人不会给他发工资。当一个人的游戏被大量差评淹没,论坛上的人不会替他承担伤害。共处是一种弱连接。它足够轻,轻到可以随时加入随时退出。但也正因为轻,它无法承受太重的重量。

独居的重量最终还是要由独居者自己承担。2010年前后,一种新的共处形式开始出现:游戏 jam。Ludum Dare 是最早的之一。它的规则很简单:参与者在四十八小时内独自完成一个游戏。这个规则本身就说明了很多东西。它假设参与者有能力独立完成从编程到美术到音效的全部工作。它假设这种能力已经足够普及,普及到可以办一个比赛。

但它的有趣之处在于,虽然规则要求独自完成,参与者却并不真的孤立。他们在同一个时间开始,在同一个时间结束,在同一个平台上提交作品,然后互相试玩、评分、留言。这是一种有节奏的共处。所有人共享同一个时钟。四十八小时的倒计时替代了公司里的季度 deadline。它创造了一种临时的集体节律。

在这四十八小时里,散布在世界各地的单人开发者,同步地进入工作,同步地焦虑,同步地在最后几个小时里疯狂 debug,然后同步地瘫倒。这种同步是短暂的。但它证明了一件事:独居与共处不是对立的。它们互为条件。

Ludum Dare 的提交页面本身就是一份档案。翻看2009年到2011年的作品列表,可以看到大量粗糙的、未完成的、实验性的游戏。它们中的大多数只在这四十八小时内存在过,之后就被遗忘。但有些作品后来发展成了完整的商业项目。有些参与者在比赛中认识了未来的合作者。有些人在比赛后决定全职做独立游戏。这些结果不是比赛设计的初衷,但它们是这种共处模式的自然产物。

当足够多的独居者在同一个时间做同一件事,他们之间就会产生一些东西——不一定是合作,可能只是相互注意,相互承认,相互竞争。竞争在这里不是贬义词。它意味着一个开发者看到另一个开发者的作品,心里想:我能不能也做到这样?这种想法是驱动力的来源之一。它把独居从一种被动的处境变成一种主动的选择:我选择一个人做,不是因为我不需要别人,而是因为我想看看我一个人能走到哪里。

但这种主动选择也有它的阴影。当独居变成一种被推崇的模式,当“一个人做游戏”变成一种身份标签,一种新的规范压力就开始形成。论坛上开始出现这样的讨论:用现成引擎算不算真正的独立开发?用免费素材算不算偷懒?接受发行商的资金支持算不算背叛?这些问题听起来像是技术讨论,实际上是在划定边界——什么是真正的独立游戏,谁是真正的独立开发者。

这种边界划定是共处的另一面。当一个人独自在房间里做游戏,他并不是真的与世隔绝。他在内化一个社群的标准。他在想象一双双正在注视他的眼睛。

这些眼睛可能属于论坛上的同行,可能属于未来的玩家,可能属于他自己。独居的房间里挤满了看不见的人。这种内化过程塑造了作品的质地。

独立游戏常常有一种辨识度很高的气质:个人的执念、偏狭的趣味、技术上的粗糙,都毫不掩饰地呈现在作品中。这不是因为开发者不想打磨。而是因为这些“缺陷”本身就是独居生产的印记。在一个大公司里,一个过于个人化的设计会被讨论、被稀释、被砍掉。在一个人的工作室里,没有人砍掉它。它会被保留,被放大,被做到极致。

这就是为什么有些独立游戏玩起来像是一个人的脑内宇宙——因为它确实是。它没有经过委员会。它没有经过市场调研。它只是一个人,在漫长的独处时间里,把内心的某种东西翻译成了可玩的规则。这种东西可能很怪,可能很小众,可能让大多数人感到困惑。但对那些恰好与它共鸣的人来说,它是一种无法在别处找到的经验。2011年,一个叫 Lucas Pope 的开发者在离开顽皮狗之后,开始独自做一个关于移民审查的游戏。

他后来回忆说,这个想法在公司环境里根本不可能成立——谁会批准一个关于盖章的游戏?但在一个人的工作室里,不需要批准。只需要一个人觉得它值得做。他花了将近两年时间,独自完成了编程、美术和设计。《Papers,Please》在2013年发布,获得了巨大成功。

这个案例经常被用来证明独居模式的价值:个人的、偏执的、不经过滤的想法,可以在市场上找到它的受众。但这个案例也隐藏了另一些东西。Pope 在做这个游戏之前已经有多年的大公司经验,有积蓄,有技术积累。他的独居不是从零开始的。大多数独居开发者没有这些条件。

这就回到了那个问题:这种独居状态能维持多久?答案因人而异。有些人做了一款游戏,赚到了足够做下一款的钱。有些人做了一款游戏,没赚到钱,回去上班了。有些人一直在做,一直在赔,用兼职收入养着全职梦想。有些人做完了但没发布,因为觉得不够好。有些人发布了但没更新,因为精力耗尽了。这每一种结果都在发生,都在2010年代初期大量发生。

它们构成了独立游戏历史中未被书写的部分:不是成功者的传记,而是独居作为一种生活方式的可持续性实验。这个实验没有对照组。每个参与者都在用自己的生活做试验。试验结果不一定会被记录。但每一个结果都在塑造后来者对这条路的想象。

在那些被记录下来的片段里,可以看到一种特殊的疲惫。它与体力劳动后的疲惫不同,与办公室政治后的疲惫也不同。它是一种长期独自面对一个巨大不确定性之后的消耗。2012年,一位开发者在博客上写道,他已经做了四百天,每天醒来第一件事是打开电脑,最后一件事是关掉电脑,已经分不清今天是星期几,已经很久没有在白天出过门了。这段话没有抱怨的语气。它只是在陈述一个状态。但这个状态本身就是一种代价。

独居给予创作者绝对的自由,也给予他绝对的孤独。孤独不是一种情绪。它是一种认知环境。在这个环境里,没有外部声音来校准判断。一个设计决定是对是错,只能靠自己验证。一段代码是否足够好,只能靠自己判断。一个作品是否值得继续做下去,只能靠自己回答。

这些问题是开放性的。它们没有标准答案。它们会在深夜反复回来。2013年,一个叫 Davey Wreden 的年轻人发布了一款叫《The Stanley Parable》的游戏模组。他最初只是在 Mod DB 上贴了一个下载链接。他没有团队,没有预算,没有发行商。他只有一台电脑,一个 Source 引擎的授权,和一个关于叙事与选择之间关系的执念。模组发布后,在几天内被下载了数万次。玩家开始在论坛上讨论它的结局,争论它的含义,写同人小说。Wreden 后来回忆说,那段时间他每天醒来第一件事就是刷新论坛页面,看新的评论。那种感觉像是在一个人的房间里开了一扇窗。窗外突然涌进来很多人声。这些人声不是在跟他说话——他们是在互相说话。他们因为他的作品而聚集,但他们的讨论已经超出了他的控制。

这就是共处的另一种形式:作品发布后形成的临时社群。这个社群不属于开发者。它有自己的生命。它会在开发者离开后继续存在,继续讨论,继续争论。

它是独居生产的意外后果:一个人做出的东西,变成了很多人的共同经验。这个后果反过来又影响了独居者的下一段创作。

Wreden 后来和另一个开发者 William Pugh 合作,把模组重制成完整版。他不再是一个人了。他有了一个合作者,有了预算,有了发行协议。他的房间从一个人变成了两个人。这算不算还是独居?边界开始模糊。

实际上,很多独立开发者的轨迹都是这样:从一个人开始,在某个节点加入第二个人,或者第三个人,或者保持一个人但外包部分工作,或者保持一个人但使用越来越多的现成工具和素材。纯粹的独居——一个人从第一行代码到最后一行代码——可能从来不是常态。常态是一种梯度。在独居与协作之间,有一个连续的谱系。每个人在这个谱系上找到自己的位置,然后随着时间和项目移动。这个谱系的存在,把“一个人的工作室”这个概念本身变成了一个问题。当一个人使用开源引擎,他是不是已经在与引擎的开发者协作?当一个人使用免费音效库,他是不是已经在与音效师协作?

当一个人把问题发到论坛上等回复,他是不是已经在与论坛上的陌生人协作?这些问题的答案取决于如何定义协作。但无论怎么定义,有一点是清楚的:独居从来不是隔绝。

它只是一种特定的组织方式——在这个方式里,协作不是通过雇佣合同来组织的,而是通过论坛帖子、开源许可证、jam 规则和社交媒体来组织的。这种组织方式比公司松散,比市场亲密。它是独立游戏在2010年代初期找到的一种独特的生产关系。这种关系不完美。它不能让失败率降低。它不能让收入稳定。它不能替代制度性的保障。但它让足够多的人得以开始。而在那个节点上,开始本身就是最重要的事。

当足够多的人开始,一些共同的东西就会从各自的房间里蒸腾出来。不是某种统一的风格——独立游戏从来没有统一风格。而是一种共同的认知:一个人做游戏是可能的。这种认知在今天听起来像是一句废话,但在2009年前后,它不是一个给定的前提。它是在无数个深夜、无数次编译失败、无数次论坛刷新中,一点一点被建立起来的。

每一个完成的作品——哪怕只有几百次下载——都在加固这个认知。每一个未完成的作品——哪怕只有开发者自己记得——也在加固这个认知,因为它证明了一个人可以走到这一步。这一步以前是不存在的。这一步的代价是什么?

那些在独居中崩溃的人,那些花光积蓄后回去上班的人,那些在论坛上发完最后一个帖子就消失的人,他们的名字不会出现在历史里。他们的作品不会出现在任何一个“必玩独立游戏”的列表里。他们的开发者日志还挂在互联网的某个角落,页面上的最后更新日期停在某个年份。

2014年,Steam 的青睐之光开闸。独立游戏的数量开始爆炸式增长。一个人的工作室从一种少数人的实践变成一种大规模的现象。当这种现象达到一定规模,它就不再只是个人选择的问题。它开始形成自己的规范、自己的等级、自己的正统与异端。在论坛上,在社交媒体上,在游戏媒体的评论里,关于什么是真正的独立游戏的争论开始反复出现。争论的核心不是美学,不是技术,而是一种身份政治:谁有资格被称为独立开发者?

用发行商的钱算不算独立?用现成引擎算不算独立?雇了五个人算不算独立?这些争论听起来像是在划分边界,实际上是在表达焦虑。

当越来越多的人进入这个领域,当“独立”这个词变得有商业价值,那些最早进入的人感到一种东西在流失。那种东西不是市场份额,而是一种身份的确切性。以前,一个人做游戏,这件事本身就足够定义自己。现在,一个人做游戏,他需要面对一个问题:你和那些成千上万个也在一个人做游戏的人,有什么不同?这个问题没有答案。但它会一直悬在那里。

在接下来的年份里,它会渗透进工具的选择、美学的取向、发行策略的制定。它会变成一种隐形的规范压力,塑造创作的方向。当工具本身变得越来越强大、越来越易用,这种压力就会与工具的逻辑结合在一起,形成一种新的东西。这种东西在2009年还看不见。但在那些深夜的房间里,在那些泡面预算和论坛帖子之间,它的种子已经埋下了。那些种子很小。它们被埋在代码和账单下面,被埋在自我怀疑和短暂的兴奋之间。它们不会马上发芽。但它们在等。