字:
关灯 护眼
饿狼小说 > 游戏二十四品 > 第二十二章 孤城的墙砖

第二十二章 孤城的墙砖

    9月28日,霜降前一周,北京的气温一夜之间掉了十度。

    李君宪裹着从洛阳带来的薄羽绒服,坐在307办公室靠窗的位置,看屏幕上不断跳出的错误日志。“悲慨”的士气系统崩溃了——当粮食储备低于警戒线时,士兵的士气值本该线性下降,但测试时出现了诡异的现象:士气不降反升,甚至突破了上限100,导致士兵“亢奋”状态下主动出击,提前引发敌军总攻,游戏结束。

    “是浮点数精度问题。”陈末在语音里说,背景是地下室特有的、闷闷的回声,“我用单精度浮点数存的士气,连续累加时误差积累。改双精度就好了。但内存占用会增加。”

    “改。”李君宪说,手指在键盘上敲出修改指令。屏幕上的代码块像积木一样重组。办公室暖气还没来,他敲键盘的手指有些僵。

    窗外,中关村的银杏开始黄了。金黄的叶子在灰蒙蒙的天色下异常刺眼,风一吹,簌簌地落。从洛阳到北京一个月,日子过得像被按了快进键:找房子(最后在五环外合租了个两居,三女两男,上下铺),置办家具(二手市场淘的桌子椅子),熟悉周边(最近的超市要走二十分钟),以及最重要的——赶“悲慨”的试玩版,要在十一月初的基金会季度评审上展示。

    时间紧得让人喘不过气。但奇怪的是,没有人抱怨。林薇每天画到凌晨三点,画城墙砖石的纹理,画士兵盔甲的磨损,画残旗在风中的飘动。叶晚负责人物设定,已经画了十七个士兵的肖像,每个都有名字、年龄、家乡、参军原因。苏语在德国远程工作,每天发来一段音频:埙的长吟,战鼓的闷响,箭矢破空的尖啸,伤员的**。陈末在维护服务器之余,重写了整个游戏的事件系统,让每一个决策的影响能像涟漪一样扩散。

    只有李君宪卡在士气系统上。不是技术问题,是理念问题:他想做的士气,不只是数字。是一个士兵看见同伴战死时的颤抖,是听见家乡民谣时的恍惚,是雨夜站岗时突然想起妻子而湿了眼眶的瞬间。这些无法量化的东西,该怎么放进游戏里?

    “也许……”林薇的声音从背后传来。她不知什么时候醒了,站在他椅子后面,手里端着杯热水,“士气不该是个数值,是种……氛围。”

    “氛围?”

    “嗯。你看。”林薇在草稿本上画了几笔,是简单的俯视角城墙,“玩家巡视时,能听见士兵的对话碎片。粮食充足时,他们聊家乡,聊女人,聊等仗打完要做什么。粮食紧缺时,对话变少,语气变沉。有人开始沉默,有人开始说怪话。士气的高低,不是数字条,是这些细节的密度和调性。”

    她继续说:“还有天气。晴天,士兵会眯眼看太阳,心情稍好。雨天,有人抱怨盔甲湿重,有人干脆不说话。下雪时……叶晚画了张草图,一个年轻士兵伸手接雪,但手是僵的,接不住。”

    李君宪看着草稿本上那些速写。确实,数字是死的,但这些细节是活的。

    “技术上能实现吗?”他问陈末。

    “能。但需要大量的对话素材和状态切换逻辑。而且……”陈末顿了顿,“内存。现在的对话系统是预设的,如果要做动态氛围,需要更复杂的文本生成和匹配算法。以我们现在的算力,可能卡。”

    “先做简化版。”李君宪做出决定,“按粮食储备百分比,切换三到四个对话池。每个士兵有几个固定的‘性格标签’(乐观、悲观、务实),对话时根据标签和当前氛围权重随机组合。苏语,需要你录更多环境对话,男女老少,各种情绪。”

    “好。我找德国话剧社的同学帮忙录中文,虽然口音怪,但更真实。”苏语很快回复。

    “叶晚,”李君宪转头,叶晚正趴在桌上画一个老兵的手,“你需要给每个士兵设计几个标志性动作。比如乐观的那个,没事会用刀鞘敲墙打拍子。悲观的那个,总是摸脖子上挂的护身符。务实的那个,永远在检查装备。”

    叶晚点头,在速写本上记下。她的眼圈很黑,但眼睛很亮。搬到北京后,她的话更少了,但画得更多。每天除了吃饭睡觉,就是画画。林薇说她半夜醒来,常看见叶晚在客厅,就着台灯的光,一笔一笔描那些手、那些脸、那些磨损的盔甲。

    “还有件事。”林薇放下水杯,声音低了些,“我爸妈今天来电话,说教师资格证报名最后一天。问我报不报。我说不报。他们……把电话挂了。”

    办公室里安静下来。只有窗外风声,和远处隐约的车流声。

    “你怎么想?”李君宪问。

    “不知道。”林薇看着窗外的银杏,“有时候觉得,我们像在沙子上盖房子。基金会一年支持,一年后呢?游戏做出来了,没人买怎么办?我们五个,靠什么活?”

    这些问题没有答案。李君宪也想过,但他不敢深想。一想,脚下的沙子就开始流动。

    “先做完‘悲慨’。”他说,像是说给自己听,“做完再看。也许有人喜欢,也许能卖出去,也许能找到下一笔支持。但如果现在停下来,就什么都没有了。”

    “我知道。”林薇笑了笑,很淡,“所以我没报。我就是……有点怕。”

    “怕什么?”

    “怕对不起他们。也怕对不起自己。”

    窗外,一片银杏叶飘进来,落在她头发上。金黄的,像小小的旗帜。

    叶晚忽然说:“我妈妈以前说,怕的时候,就做手里的事。一针一线,绣下去。绣着绣着,就不怕了。”

    她拿起笔,继续画那个老兵的手。手背上有一道很深的疤,从虎口延伸到小指。她在旁边注:“三十七岁,幽州人,猎户出身。疤是打猎时被熊抓的。参军七年,杀敌十九。不说话,但箭法全营第一。”

    李君宪看着她画。那双手粗糙,关节粗大,指甲缝里有洗不净的黑。但握弓的姿势很稳,像长在手上。

    也许这就是答案。怕的时候,就做手里的事。写代码,画画,录音,建服务器。一砖一瓦,把这座叫“二十四诗品”的孤城,盖起来。

    至于能盖多高,能守多久,交给时间。

    他重新看向屏幕。士气系统的问题,有了新的思路:不做全局士气值,做个体状态机。每个士兵有自己的“心情条”,受事件、对话、环境、其他士兵状态影响。玩家巡视时,能看到他们的状态图标:绿色是稳定,黄色是焦虑,红色是崩溃。但崩溃不是终点——如果玩家及时干预(交谈、分配食物、安排休息),可能拉回黄色甚至绿色。

    这更复杂,但更真实。真实的世界里,没有统一的士气,只有一个个具体的人,在具体的情境里,做出具体的反应。

    他开始重写状态机逻辑。窗外天色渐暗,办公室没开灯,只有三块屏幕的光,映着三张年轻的脸。键盘声,画笔的沙沙声,偶尔的咳嗽声,混成这个秋天傍晚的背景音。

    晚上七点,苏语发来新的音频文件。是环境对话,二十多段,每段十几秒:

    “(年轻声音)俺娘说,等俺回去,给俺说媳妇。要屁股大的,能生养。”

    “(中年声音,咳)这鬼天气……老寒腿又犯了。要是能喝口热酒……”

    “(老声音,平静)三十年了。当年在这墙下,我埋了个兄弟。现在,该我了。”

    “(女声,压低的)箭不多了。省着点用,还能撑两天。”

    “(少年声音,颤抖)我怕……我想回家……”

    李君宪一段段听。苏语找的录音者,中文发音生硬,但情绪很真。那个说“我想回家”的少年,声音里的颤抖,听得人心头发紧。

    他把音频导入游戏,绑定到对应士兵。测试运行,巡视城墙。经过那个少年士兵时,耳机里响起颤抖的声音:“我怕……我想回家。”同时,士兵的状态图标从黄色跳到红色边缘。

    他点击对话,弹出选项:“A. 斥责:‘怕什么!是男人就挺住!’ B. 沉默,拍拍他的肩。C. 说:‘打完这仗,我带你回家。’”

    他选B。沉默,拍拍肩。士兵的状态慢慢回落到黄色。没有对话,但图标旁出现一个小小的备注:“得到安慰”。

    这个细节让他停下了。他盯着那个备注,看了很久。然后他打开叶晚的人物设定文档,找到这个士兵的资料:

    “王小石,十六岁,幽州农家子。参军三个月,因饥荒被卖兵。识字,会吹笛。有一个妹妹,今年十岁。最怕黑暗。”

    他给这个士兵加了一个隐藏属性:“得到安慰次数”。如果累积到三次,在某个关键时刻(比如夜袭),他可能克服恐惧,做出勇敢的举动。

    这个属性不会显示给玩家。只是藏在数据里,像现实里那些看不见的、但决定命运的小小善意。

    他继续测试。雨夜,巡视伤兵营。一个中年士兵发着高烧,喃喃说胡话:“杏花……杏花开了……”玩家可以选择:“A. 给他喂水。B. 用湿布降温。C. 坐在旁边,听他说话。”

    他选C。没有实际效果,只是浪费时间。但士兵的“尊严值”悄悄加了0.1。

    窗外的天完全黑了。远处写字楼的灯火一盏盏亮起,像巨大的、发光的蜂巢。北京夜晚的风很硬,吹得窗户咯咯作响。

    林薇点了外卖,是楼下新开的山西刀削面。三人围着桌子吃,很安静。叶晚吃到一半,忽然说:“今天是我妈妈生日。她要是活着,四十六了。”

    林薇放下筷子,搂住她的肩。叶晚没哭,只是继续吃面,吃得很慢,很仔细,像在品尝什么珍贵的东西。

    吃完饭,继续工作。凌晨一点,陈末发来消息:“服务器又遭攻击,这次是DDoS。我启用了备用节点,暂时顶住了。但需要加强防护。我联系了一个做网络安全的朋友,他说明天来看看,免费,但以后可能需要他帮忙时,我们要优先。”

    “好。约明天下午。”李君宪回复。

    凌晨两点,士气系统重写完,测试通过。他运行了一个完整的守城流程,十五天,粮食耗尽,伤员大半死亡,最后三名士兵战死。结局画面:春草从废墟长出,细雨蒙蒙。

    他截了图,发到群里:“‘悲慨’试玩版v0.5 完成。可以内部测试了。”

    几分钟后,苏语回:“我在听结局的雨声。埙的声音是不是太响了?要不要再淡一点?”

    陈末回:“服务器稳定了。明天给你测试链接。”

    林薇从桌子上抬起头,眼睛发亮:“叶晚,看看你的兵。”

    叶晚凑到屏幕前。春草的画面,在屏幕淡蓝的光里,像一场遥远的梦。她看了很久,然后轻声说:“城墙的砖……画错了。”

    “嗯?”

    “北方的城墙,砖缝是直的。我画成了斜的。我妈妈说过,洛阳的城墙砖缝才是斜的,因为战乱多,修补时来不及对整齐。北方的城墙,是太平年景修的,工整。”她拿起数位板,“我重画。”

    “明天再画。先休息。”林薇按住她的手。

    “不,就现在。错了就要改。”叶晚的声音很轻,但坚定。

    她开始修改。一笔一笔,把那些倾斜的砖缝拉直。屏幕的光映着她的脸,专注得像在修复什么真实存在的东西。

    李君宪靠在椅背上,看着这间小小的办公室。林薇在整理美术资源库,叶晚在改图,屏幕上的春草在雨中轻轻摇曳。窗外,北京秋夜的寒风呼啸而过。

    他想起“悲慨”的原文:“壮士拂剑,浩然弥哀。”叶晚妈妈绣花到最后,铸铁匠听淬火声听了五十年,他们这群人在这间十五平米的房间里熬夜敲代码——这些,算不算另一种“壮士拂剑”?

    也许算。也许不算。

    但至少,他们还在做。在怕的时候,做手里的事。在沙子上,盖一座可能明天就倒的城。

    他关掉电脑,躺到行军床上。天花板上的水痕,在黑暗里看不清形状。他闭上眼睛,脑子里是那些士兵的脸,那些手,那些在雨中说“我想回家”的声音。

    然后,在沉入睡眠的边缘,他听见叶晚轻声说:“改好了。砖缝直了。”

    林薇说:“嗯。睡吧。”

    叶晚说:“晚安。”

    黑暗里,键盘声停了,画笔停了。只有窗外风声,和三个年轻人均匀的呼吸声。

    而那座叫“悲慨”的孤城,在数据构成的虚空里,悄悄立起了一道新的、砖缝笔直的墙。

    墙后,十七个士兵在等待黎明。

    等待雨停。

    等待那场注定到来的、最后的冲锋。

    等待石头缝里,长出春草。
『加入书签,方便阅读』