
第一章:成为欧律诺墨
姜晚晴是被一行代码打败的。
确切地说,是被一行代码的评语——如果“垃圾”也算评语的话。她的领导站在投影幕前,用激光笔在“return”后面画了个红圈,说这种东西实习生都能写,然后宣布整个项目组就地优化。
她当时想反驳,想说那个函数之所以写成那样是因为上游接口改了四版而排期没变,但会议室里已经有人在收笔记本电脑了,动作之利落,仿佛早就排练过。
所以她只是点了点头,把工卡放进包里,走出写字楼的时候甚至忘了生气。
她把那份盖了章的解除劳动合同通知书拍在茶几上,换了睡衣,拉上窗帘,打开电脑——这是她应对一切不如意的标准流程:玩游戏,打到通关,打到所有纪录都变成自己的名字,打到现实世界缩成屏幕右下角一个小小的、可以随时忽略的图标。
她在《艾尔登法环》里把八周目的皮蛋打过第一百遍;又在《怪物猎人》里单刷了原初爵银龙,时间进了五分台。她甚至翻出了吃灰的Switch,把《王国之泪》的地下探索度推到了百分百。
所有能打的游戏都打完了,所有能破的纪录都破了,光标在桌面上漫无目的地游荡,最后停在了一个没有图标的文件夹上。
文件夹的名字叫“未命名”,最后修改日期是三个月前。
那是她利用所有下班时间和周末做的东西——一个独立游戏,从世界观到代码全凭一己之力。她原本打算做完之后再给领导看,证明自己值得更好的资源,而不是被塞进那些换皮手游的流水线里当螺丝钉。
但项目被砍了,她也被砍了,这个文件夹就成了某种意义上的遗物,埋在一堆工作文档底下,连她自己都快忘了。
姜晚晴双击打开,点击运行。
屏幕暗下去,又亮起来,一行字浮现在纯黑的背景上:光明村的女巫说,会有勇者诞生于此。你睁开眼睛,发现自己正站在那棵老橡树下。
她记得这段开场白,是她自己写的,写的时候还喝了半罐啤酒,觉得特别有史诗感。现在看有点中二,但那种中二里藏着某种真诚的东西——一个相信游戏能改变什么的自己,一个还没有被“降本增效”磨掉耐心的自己。
画面缓缓展开,像素风格的光明村在屏幕上铺陈开来,铁匠铺冒着烟,花圃里种着发光的花,码头边停着几艘小船。一切都很简陋,毕竟代码只写到百分之七十,Boss还没设计,地图上甚至还有几个显眼的穿模区域。
开场动画播完,界面停在了角色创建页面。
姓名框空空荡荡,光标一闪一闪。姜晚晴随手敲了个“WanQing”,按下回车,没反应。她又按了一次,还是没反应。键盘和鼠标都是好的,却找不到退出游戏的地方,姓名框依然空白,光标依然闪烁。
文字框在她的耐心被耗尽之前忽然开始输入。
E-u-r-y-n-o-m-e
欧律诺墨。希腊神话里的创世女神,从混沌中诞生,创造了万物。这个名字她认得——她给游戏里的NPC起名时翻遍了希腊词典,但这并不是她自己打上去的。
光标停在最后一个字母上,然后“确认”键被按下了。
不是她按的。她的手指悬在键盘上方,根本没碰任何东西。
屏幕忽然变成全白,只一瞬间便从显示器里涌出来,灌满了整个房间,灌满了她的眼睛,灌满了她的意识。她最后听见的声音是主机风扇的轰鸣,越来越远,越来越远,然后一切归于寂静。
再睁眼的时候,她站着。
脚下不是木地板,是泥土,踩上去有点软,带着雨后特有的潮湿气息。空气里有股铁锈和炭火混合的味道,远处有人敲打金属的声音,叮叮当当的,节奏很稳,像某种古老的节拍器。她抬起头,看见头顶是一片深蓝色的天空,挂着两个月亮——一个偏红,一个偏蓝,大小不一,低得仿佛伸手就能够到。
光明村。老橡树。双月。
她做的东西。
姜晚晴低头看了看自己,上周才补染白金色的卷发还在,但长度似乎变了,垂在肩膀两侧,编了几根细细的辫子,缀着小粒的不知名宝石。她穿着一件灰蓝色的束腰上衣,袖子卷到手肘,脚上是一双系带的皮靴,鞋底沾着泥巴和几片枯叶。
一个半透明的界面凭空弹了出来,悬浮在她眼前,像一块玻璃屏幕上贴着几行代码。
“欢迎,勇者。请选择你的职业。”
下面列着五个选项,每个都配着一个简笔图标:Helios的交叉双刀,Nemophilist的翻开的书页,Thalassa的水晶球,Artemis的铃铛项圈,Ourea的圆盾与长矛。她写过这些职业的设定,写过每一个技能的数值平衡,写过装备的掉落概率和天赋树的排列组合。她甚至记得自己为了给Thalassa设计一个合理的远程输出机制,熬了两个通宵推演伤害公式。
但此刻这些东西不再是文档里的表格和代码。它们变成了真正的选择,决定她在这片土地上以什么方式活下去。
她选了Helios。
不是因为深思熟虑,而是因为她想起了自己打游戏时一贯的风格——近战,正面刚,不需要花哨的走位,不需要队友的掩护,一把剑就能解决所有问题。而且她隐约觉得,在这个充满Bug的世界里,血厚防高或许是最稳妥的生存策略。
界面上弹出一行字:“职业确认:赫利俄斯,不坠的烈日。祝你好运,欧律诺墨。”
那行字消失了,半透明的窗口也消失了,像是从来没有存在过。她还没来得及消化“欧律诺墨”这个称呼从何而来,就听见有人喊她。
“欧律诺墨!”
声音从身后传来,一男一女,音色不同但语调惊人地一致,带着那种只有父母对孩子才会有的、介于关切和责备之间的复杂情绪。她转过身,看见两个人正站在一座石头房子的门口,房子外墙上挂满了铁器和工具,锤子、钳子、半成品的剑胚,门框上方悬着一块铁砧形状的木牌。
铁匠夫妇。她在设定文档里写过他们:父亲叫哈尔莫斯,沉默寡言,手掌粗糙,打了一辈子铁;母亲叫埃拉,嗓门大,脾气急,但做的炖菜是光明村一绝。
此刻他们就站在她面前,活生生的,有表情的,会动的——哈尔莫斯的手掌确实粗糙,指节粗大,指甲缝里嵌着洗不掉的铁屑;埃拉围裙上沾着炭灰,鬓角有几根白发,笑起来的时候眼角挤出细纹。
“发什么呆呢?”埃拉走过来,很自然地伸手帮她理了理领口,“明天就成年了,还跟个孩子似的。让你去市集买点东西,拖到现在也不动身。”
哈尔莫斯站在后面,没说话,只是把一只沉甸甸的钱袋塞进她手里。钱袋是皮革缝的,边缘磨得发亮,里面的硬币碰撞时发出闷响,不是现代金属那种清脆的声音,更像是某种古老的、有重量的承诺。
“买把趁手的武器,”他说,声音很低,像铁锤落在砧上之后的余震,“后天就要上路了,别凑合。”
这个词让姜晚晴愣了一下,然后她想起来了——她的游戏设定里,勇者会在成年礼之后离开村子,踏上探索世界的旅途。她当时觉得这是RPG的经典开局,省事,有仪式感,不需要解释太多。但现在她站在这里,站在自己写的代码里,站在两个被自己赋予生命的NPC面前,忽然意识到一件事:
妈妈打不通她的电话,可能会很着急。
这个念头像一根针,从某个意想不到的角度扎进来,不疼,但让人坐立难安。她下意识地去摸口袋,当然没有手机,只有一条系在腰带上的细绳,上面挂着几枚铜币。
她不确定穿越这种事在物理层面是怎么运作的,不确定妈妈会不会在明天带着备用钥匙来开门。
她强迫自己把注意力拉回来。恐慌解决不了问题,这是她做了十年程序员得出的结论——遇到Bug,先定位,再分析,最后解决。现在她需要定位的第一个问题是:这是梦,还是现实?
她掐了一下自己的手背。疼。真真切切的疼,不是梦里那种模模糊糊的钝痛,而是尖锐的、具体的、皮肤上立刻泛起一小片红印的疼。
不是梦。那就有两种可能:要么她真的穿越进了游戏,要么她的脑子出了某种严重的、需要立刻就医的问题。考虑到后者在现实中缺乏解决方案,她选择暂时接受前者。
“我去市集看看。”她听见自己说,声音比想象中平稳。
埃拉又往她手里塞了条围巾:“晚上冷,早点回来。别又在铁匠铺看人家打铁看到忘了时辰——你小时候就这样,一蹲就是半天,喊都喊不回来。”
这话说得很自然,像是一个母亲在回忆女儿真正的童年。但姜晚晴知道,欧律诺墨的童年是她写的,只写了两行字:“在铁匠铺长大,对金属加工有天然的兴趣。”
就这么两行,被埃拉读出了这么多细节,读出了“蹲在铺子里看打铁看到忘记回家”的画面。是游戏自动补充了设定,还是这些NPC在她没写出来的地方,自己活出了完整的人生?
她暂时没有答案。