下午四点零七分,主控室的灯突然闪了一下。
唐雨柔的手指在键盘上顿住,屏幕上的粒子模拟系统跳出红色报错框:“物理引擎并发超限,进程已终止。”这是今天第七次崩溃。她没说话,只是把右手从鼠标上挪开,轻轻甩了两下——左手三根手指的活动依然不顺,烧伤后的神经还没完全恢复。
控制台右角放着一杯姜茶,杯底压着张便条纸,字迹是张小萌特有的圆体:“你煮的泡面我们都记得。”
她盯着那行字看了三秒,端起杯子喝了一口。烫得有点狠,但她没放下。
门外传来脚步声,很轻,但节奏稳定。陆北冥推门进来时,手里拎着个工具包,身上那件黑色连帽卫衣沾着灰,拉链敞到胸口,露出里面印着“像素神殿”字样的旧T恤。他蹲下身,打开主机箱侧板,闻到了一股焦糊味。
“显卡又冒烟了?”他问。
“第八块。”唐雨柔靠在椅背上,声音沙哑,“国产引擎最大粒子并发数只有国际标准的百分之六十。推地球?推个铁球都拖尾断裂。”
陆北冥没回话,伸手拔掉散热模块的排线,开始拆螺丝。两人沉默地换下烧坏的模块,装上备用件。五分钟不到,基础运行环境恢复。风扇重新转动的声音像口喘匀的气。
唐雨柔站起身,走到主显示器前,调出第七次测试的残影数据。画面里,行星发动机喷出的等离子流在推进过程中断成三截,地壳撕裂轨迹歪斜得像被狗啃过。
“不是算力问题。”她说,“是逻辑问题。没人真信地球能被推出去,所以代码里就没有‘推得动’这个前提。所有模型都在自我否定。”
陆北冥直起身,关上机箱。他走到她身后,没看屏幕,而是盯着她左脸的疤痕——从耳垂延伸到下颌,皮肤泛白,纹理粗粝,像一段被强行焊接的电路板。
他从背包里掏出笔记本,封面磨损严重,边角卷起。翻开一页,上面画着一组星轨草图,旁边密密麻麻写着手写公式,有些地方还用红笔圈出修正项。
“试试这个。”他把本子递过去。
唐雨柔接过,眉头皱紧。“这是什么?”
“前世写的。”陆北冥靠着墙,目光落在屏幕上那团破碎的推进光流,“当时做独立游戏,想搞一个太阳系尺度的动力学模拟,结果发现现有物理引擎根本跑不通。后来我重写了底层算法,加了个‘信念权重’变量。”
“信念权重?”她翻页,看到一行标注:“当宏观运动违背常识时,需人为注入初始动能势差补偿值。”
“简单说,就是让程序先假设这事能成。”陆北冥指了指公式中的一串参数,“你看这里,我把地球质量、木星引力、发动机功率这些真实数据代入后,再叠加一个虚构的‘人类集体意志系数’,作为启动推力的前置条件。就像……第一脚油门不是机器踩的,是人踩的。”
唐雨柔盯着那行公式,手指无意识摩挲着页面边缘。她忽然抬头:“这玩意儿违反物理守恒。”
“但它符合叙事逻辑。”陆北冥说,“观众进电影院,不是来看公式对不对的。他们要的是‘我们真的走出了太阳系’那一刻的心跳。你做的特效,不是为了证明科学,是为了让人相信不可能的事。”
唐雨柔没接话。她转身坐回操作台,把笔记本摊开放在右侧副屏旁,开始新建项目文件夹。输入名称时,她停顿了一下,敲下五个字:【流浪地球·推力重构】。
加载进度条刚走到百分之十五,系统再次弹出警告:内存溢出风险。
她没关提示框,反而点开高级设置,手动修改核心参数。第一行输入的就是陆北冥给的公式编号07-3A。
“你知道最可笑的是什么吗?”她一边调试一边说,“我当年在《阿凡达2》组,为了一帧羽毛飘落的空气阻力算了三天。可现在,我们要让二十万亿吨的地壳在冰原上滑行一万公里,反倒没人愿意信它能动。”
陆北冥站在她斜后方,看着她僵硬的左手在快捷键之间跳跃。有时候她会卡住,得用右手把左手手指掰开,再按下一个组合键。
“你不用一个人扛。”他说。
“我不是一个人。”她头也不回,“我只是……还不习惯被人接着。”
话音落下的瞬间,屏幕一闪。粒子模拟重启成功,新的物理引擎载入完成。唐雨柔深吸一口气,按下运行键。
画面缓缓亮起。
蓝色光柱从赤道带升起,三千六百座行星发动机同时点火。地壳开始移动,冰川如镜面般裂开,裂缝沿着预设轨迹蔓延。推进光流完整连接,没有断裂,没有拖尾。
“操……”她低声说。
陆北冥走近一步。他知道这不代表成功——这只是第一次没崩。
但至少,它动了。
唐雨柔的手指悬在键盘上方,准备输入第二组参数。她的呼吸变慢,眼神死死盯着主窗口左上角的实时演算数据流。那里显示着当前帧率、粒子总数、内存占用……
突然,她左手小指抽搐了一下,差点按错键。她立刻缩回手,用右手撑住额头,闭眼三秒。
“缓十秒。”她说。
陆北冥没动,也没问她要不要换人。他知道她不需要安慰,只需要时间。
十秒后,她睁开眼,右手重新放回键盘。输入指令:【启用动态重力场耦合模型】。
系统响应速度明显变慢,硬盘灯狂闪。五秒后,画面再次卡顿,推进器光柱出现轻微抖动。
“还是不够。”她咬牙,“温度反馈失真,冰层熔融速率不对。”
陆北冥翻开笔记本另一页,抽出一张折叠的草图。展开后,是一组波形图,标着“地核共振频率模拟”。
“加上这个。”他说,“发动机不只是推,还在震。地壳移动的本质是高频共振,不是平推。你得让冰原‘唱歌’。”
唐雨柔接过草图,快速扫描内容。她的眼神变了——从怀疑,到震惊,再到一种近乎灼热的兴奋。
“你他妈是从哪搞到这种东西的?这数据像是从未来偷来的。”
“捡的。”陆北冥说,“前世做完没用上,一直记着。”
她没再问,直接开始编码。新算法嵌入后,系统重启。这一次,她没急着运行全模,而是先调出局部区域测试。
选定西伯利亚一号推进区。
点击播放。
画面中,冰层在低频震动下逐渐松动,底部形成液态水润滑层,地壳如巨轮般缓缓向前碾压。温度场分布均匀,没有突变热点。
“成了……”她喃喃。
“只是局部。”陆北冥提醒。
“但它是对的。”她猛地站起来,转身面对他,脸上那道疤在蓝光映照下像一道电路纹路,“这不只是特效,这是新规则。我们不是在修bug,是在重新定义什么叫‘可能’。”
陆北冥没笑。他知道接下来还有几百个坑等着填——大气剥离模拟、生态系统迁移、人类心理承受阈值……每一个都能让这个项目当场暴毙。
但他也清楚,最难的那一步已经跨出去了。
唐雨柔坐回座位,手指重新悬在键盘上。这次她的动作稳了,左手也能跟上节奏。她输入最后一行指令:【全域同步推演,时间跨度:一百年】。
主机风扇转速骤增,散热片发出细微的嗡鸣。屏幕中央,进度条开始缓慢爬升。
1%……
5%……
12%……
唐雨柔盯着数字,一动不动。陆北冥站在她身后,看着那道疤痕在不断闪烁的数据光中明明灭灭。
他知道,有些人回来了。
有些事,终于又能做了。
主显示器上,地球正缓缓脱离轨道,朝着半人马座方向滑行。
冰原裂开的缝隙里,透出底下炽热的地幔红光。
像一道正在愈合的伤口,也像一条通往未知的路。
唐雨柔的手指落下,敲下回车键。
整栋楼的灯光忽闪了一下。