洛杉矶的颁奖礼落幕不过六小时,国内社交平台仍被“赵思思奥斯卡封神”刷屏。热搜前十有七条与她相关,话题词诸如#资本的棺材钉#、#女儿亲手埋了父亲的帝国#、#像素神系觉醒#疯狂滚动。各大媒体连夜赶稿,《时代周刊》中文版直接在官微放出未定稿封面:赵思思站在领奖台,背后是崩塌的金狮雕塑。
林墨没看直播。
他坐在一辆破旧的电动三轮车上,车斗里堆着两台二手显示器、一箱泡面、一个落灰的电竞椅。司机是个叼烟大叔,后视镜上挂着褪色的平安符,车速慢得像在遛弯。窗外天刚蒙亮,城市边缘的工业区静得反常,只有远处高架桥上传来第一班地铁的轰鸣。
三轮车拐进一条窄巷,停在一栋灰扑扑的老楼前。楼体斑驳,外墙裂纹像蜘蛛网,三楼窗口挂着块手写木牌:“墨点工坊”。没有花篮,没有横幅,连个开业鞭炮都没放。
林墨付钱下车,口罩遮到鼻梁,只露出一双眼睛。他抬头看了眼那块歪斜的牌子,从包里抽出一把钥匙。锁孔生锈,拧了三次才开。推门进去,屋里空荡,水泥地积着薄灰,墙角结着蛛网,唯一完好的是一扇朝东的窗,阳光正一寸寸爬进来。
他放下包,把电竞椅拖到窗边,用袖子擦了擦屏幕上的灰。开机,蓝光亮起。桌面很干净,只有一个回收站图标和一张壁纸——初音未来的笑脸。他盯着看了两秒,右键点击,更换图片。
新壁纸是一张黑白剧照:荒原上,一位佝偻老人背着药箱走向远方,风沙模糊了他的轮廓。这是《送药者》原版结局的最后一帧,当年他在雄狮影业当卧底时,偷偷录下的投影画面。
他打开文件管理器,新建文件夹。光标闪烁。
打字:**送药者_重制版_v1**
回车。
双击进入,空白目录。他插上U盘,里面是这些年攒下的资料:《送药者》初版关卡草图、玩家反馈截图、陆北冥当年随口提过的优化建议录音片段。他点开最早的一张草图——那是他在雄狮会议室做笔记时,藏在剧本背面的手绘。当时江璃月让他递话筒,他一边应声一边继续画,笔迹潦草却精准。如今再看,线条里有种不顾一切的冲动,像困兽撞笼。
他把草图拖进v1文件夹,又打开建模软件。界面简洁,没有导入任何高级插件。他准备用最基础的像素引擎重做整个项目,UI全手绘,动画逐帧调整。不联网,不外包,不接投资。这次,没人能在他代码里埋后门。
手机震动。微信弹出消息:
【唐雨柔】:听说你租地方了?
【唐雨柔】:在哪儿?我带显卡过来。
【唐雨柔】:特效我包了,免费。
林墨看着最后三个字,手指悬在键盘上。
他知道唐雨柔不是客套。她是那种会为0.1秒粒子效果熬夜三天的人,也是陆北冥团队里唯一敢当面骂他“这镜头矫情”的人。她给的支援,是顶级资源,是行业通行证,是别人求都求不来的机会。
但他没回。
十分钟后,门被敲响。三声,短促有力。
他起身开门。唐雨柔站在外面,穿着那件熟悉的印着代码公式的连帽衫,头发扎成丸子头,手里拎着一个黑色防震箱。她没等邀请,直接跨进来,环顾四周。
“就这?”她皱眉,“没空调?没UPS?你打算夏天靠风扇续命?”
林墨摘下口罩,随手放在桌角。那张初音未来的屏保在光线下微微反光。
“够用。”他说。
唐雨柔把箱子放在桌上,啪地打开。里面是两块最新款图形显卡,散热片闪着金属光泽。
“给你备的。”她说,“《送药者》重制,画面至少得720P起步,不然玩家一眼看出穷。”
林墨摇头。
“我不做高清。”他说,“这次用16bit像素风,贴图全手绘。节奏比画质重要。”
唐雨柔愣住。“你认真的?现在谁还做像素游戏?市场早饱和了。”
“所以没人做。”林墨坐回椅子,“正因为饱和,才要有人做回本质。当年《送药者》为什么火?不是因为特效,是因为那个老药师走到终点时,玩家跟着喘不上气。”
唐雨柔盯着他,忽然笑了。“你变了。”
“我一直这样。”林墨说,“只是以前戴着面具。”
她沉默几秒,忽然问:“需要特效吗?免费。”
这句话说得轻,却像一块石头砸进水面。空气凝住。
林墨没立刻答。他转过电脑屏幕,展示一段动态预览:像素风格的村庄,NPC动作卡顿但富有节奏感,对话框文字逐字弹出,背景音乐是口哨吹的民谣变调。整体粗糙,却有种奇异的沉浸感。
“你看这个场景。”他说,“老太太等儿子回家,等了三年。玩家每推进一关,她家门口的鞋就多一双。到最后,门廊堆满小鞋,可门始终不开。这种情绪,不需要粒子爆炸来烘托。”
唐雨柔看着预览,眼神变了。她见过太多用特效堆砌的“情感”,也见过陆北冥如何用一个镜头让观众落泪。但她没见过有人把“克制”当成武器。
“你真不用我?”她再问一次。
林墨直视她的眼睛。
“不,这次我要自己做。”
声音不大,却像刀切过布,干脆利落。
唐雨柔没动。几秒后,她合上显卡箱,拎起来。
“行。”她说,“那你别死在半路。”
她转身走向门口,脚步沉稳。手搭上门把时,回头看了他一眼。
“陆北冥要是知道你拿他的启蒙作开刀,肯定又要骂‘这剧情狗都不看’。”
林墨笑了下。“可他会默默重写剧本。”
唐雨柔也笑,推门出去。楼道灯光昏黄,她的背影消失在转角。
门关上。
屋内重归安静。阳光已爬过半面墙,照在桌角的口罩上。林墨拿起手机,再次打开壁纸设置,这一次,他选中《送药者》结局剧照,设为锁屏。
他打开代码编辑器,新建文档。
顶部标题:main.py
光标闪烁。
他开始输入第一行代码:
```python
import pygame
```
回车。
第二行:
```python
pygame.init()
```
第三行:
```python
screen = pygame.display.set_mode((640, 480))
```
屏幕亮起,黑底白字,像一片未开垦的荒原。他敲下第四行:
```python
pygame.display.set_caption("送药者_重制版_v1")
```
标题出现,居中,无衬线字体,朴素得近乎寒酸。
他按下F5,运行。
程序启动,窗口弹出。黑屏一闪,画面渐亮——像素风的荒原缓缓展开,远处一座小屋,屋顶飘着炊烟。背景音乐响起,是走调的口琴声,循环播放。
他没急着改代码。而是打开项目文件夹,右键新建文本文件,重命名为:**开发日志.txt**
双击打开,输入第一行:
【2025年4月7日 晴 开工】
> 今天租下三楼。唐雨柔来了,带了显卡,问我需不需要特效。我说不,这次我自己做。
>
> 屏幕很小,代码很少,但这是我自己的战场。
>
> 以前在雄狮,画每一笔都在算赵金铭会不会满意;
> 后来在像素神殿,改每一个参数都在想陆北冥能不能通过。
>
> 现在,我不用向任何人汇报。
>
> 这个游戏可能没人玩,可能被骂复古倒退,可能三个月后就放弃。
>
> 但至少,它是我的。
他保存文件,关闭。
回到主程序窗口。画面依旧停留在荒原。他打开角色图层,导入一个像素小人——正是当年他自己设计的那个老药师,驼背,拄拐,步伐缓慢。他调整移动速度,设定初始坐标。
然后,在事件触发区写下第一段交互逻辑:
```python
if player.reach_end():
play_sound("whistle_theme_final.wav")
show_text("他走了很远,只为送一包药。")
end_game()
```
保存,运行。
当角色走到地图尽头,口哨声响起,文字浮现,游戏结束。
他盯着那行字,看了很久。
然后,他伸手,把桌角的口罩彻底推到阴影里。
手机震动。是房东发来的水电费缴费单。他瞥了一眼,顺手把通知栏里的社交媒体APP全部划掉。
工作室只剩机器运转的轻响。他重新看向屏幕,光标停在代码末尾。
下一秒,他敲下新一行:
```python
# TODO: 增加天气系统 - 风沙会影响视野与移动速度
```
回车。
又一行:
```python
# TODO: 设计“等待的鞋”彩蛋事件
```
再回车。
他停下,喝了口冷掉的豆浆,视线落在窗外。远处高架桥上,一列地铁正穿城而过,载着无数尚未醒来的乘客奔向各自的战场。
而在这座老楼的三楼,一个曾躲在流量光环背后的年轻人,正用自己的方式,启动一场无人围观的革命。
屏幕蓝光映在他脸上,平静,清醒,不动如山。