迷你世界官方开发组,三号会议室。
四个人围坐在长桌旁边。桌上摆了四台笔记本电脑,屏幕上都开着同一个存档文件——“阿枫的自动化测试场v7”。他们下载了阿枫上传的存档,每个人都用自己的NBT编辑器打开看过了。生物ID:0。Health:0.0。Tags:[“未注册”]。数据在那里。数据是完整的。数据不应该存在。
组长推了推眼镜。“进游戏。”
四个人同时点了进入地图。
加载完了。传送带不在了,齿轮不在了,铜锭不在了,箱子不在了。区块被清空了,只剩一片平整的基岩地面。然后他们看见了那个东西。
灰色短袖,黑色长裤,光着脚。身高跟卡卡差不多,但比例完全是真实的。头是圆的,有下巴,有颧骨。手臂是圆柱形的,有肘关节。他站在空地中央,一动不动。全局光照打在他身上,在他脚底下投出一小片极淡的影子。
组长打开了开发者工具。“实体列表。”
旁边的程序员看了两秒。“空的。什么都没有。”
“生物ID搜索,0。”
“结果:零个匹配。”
组长盯着屏幕里那个东西。他打开了聊天框。开发组内置的调试频道。他打字。
“你是谁。”
聊天框里安静了几秒。然后那行字出来了。白色的,正常的聊天字体。
“不死。”
组长的手指停了一下。他又打字。
“你怎么来的。”
“走来的。”
“从哪走来的。”
“很多地方。”
组长把聊天框最小化了。他打开控制台,直接调用了底层API。生命值查询。返回结果:无。实体类型查询。返回结果:未注册。碰撞箱查询。返回结果:无。物理属性查询。返回结果:无。
他把控制台关了。他打字。
“你在我们的游戏里。但你不遵守我们的规则。生命值是0,ID是0。代码拒绝执行你的死亡。这是怎么回事。”
聊天框里安静了几秒。然后那行字出来了。
“因为我不在你们的规则里。你们的规则管着所有‘存在’的东西。但我不在‘存在’里面。我在‘在’里面。‘在’不需要规则。‘在’只是‘在’。”
组长看着这行字。他旁边的程序员凑过来看了一眼,然后靠回椅背上。会议室里没人说话。四台笔记本电脑的风扇在转,屏幕的光打在四张脸上。
组长打字。
“你能离开这个存档吗。”
“能。”
“那你能离开我们的游戏吗。”
“能。”
“那你为什么不走。”
聊天框里沉默了一会儿。然后那行字出来了。
“因为我在走。我只是还没有走到下一个地方。你们的世界是代码做的。之前的那些世界不是。我想看看代码做的世界是什么样的。但我看完了。跟别的世界一样。有开始,有结束。只是你们的结束叫‘生命值为0’。而那个结束在我身上不发生。”
组长盯着这行字看了很久。然后他做了一件事。他打开了存档文件,选中了那个区块,按下了删除。区块从列表里消失了。他重新加载了地图。区块没有了。那块地面被基岩填充了。什么都没有了。
然后他看见了那个东西。
他站在基岩上。灰色短袖,黑色长裤,光着脚。他还在。区块被删了。数据被删了。他还在。
组长把手从键盘上拿开。他打字。
“我删了你的区块。”
“我知道。”
“你应该消失了。”
“我不在区块里。区块里的是我的数据。但我不在数据里。数据被删了,数据消失了。但我不消失。因为我不在‘可被删除’的范围里。你们的代码能删除数据。但代码无法删除‘在’。因为‘在’不是代码能取消的东西。”
组长看着这行字。他把聊天框关了。他打开控制台,调用了最底层的命令。系统级的。强制移除实体。目标:0。执行。
控制台返回了一行字:“目标不存在。”
组长又执行了一次。返回同一行字。“目标不存在。”
他靠在椅背上。旁边的程序员在笔记本上记着什么,笔尖在纸面上沙沙响。另一个开发组成员打开了自己的NBT编辑器,重新加载了那个已经被删除了区块的存档。实体列表是空的。什么都没有。但屏幕上那个东西站在基岩上。全局光照打在他身上。他在屏幕上。他在数据外。
组长打字。
“你到底是什么。”
聊天框里很快多了一行字。
“我叫不死。我是死亡本身拒绝过的存在。你们的代码是逻辑。逻辑只能处理‘存在’和‘不存在’。而我在两者之外。代码可以设置我的生命值为0。代码可以删除我的数据。代码可以清空我的区块。但代码无法宣告我的死亡。因为宣告需要一个可以被宣告的对象。而我没有那个属性。”
组长盯着这行字。他打开了自己的NBT编辑器,看着那个被删除了区块的存档。实体列表是空的。数据是空的。什么都没有。但屏幕上那个东西站在基岩上。
他打字。
“代码在拒绝执行你的死亡。”
“对。”
“为什么。”
聊天框里安静了几秒。然后那行字出来了。
“因为代码在拒绝执行‘宣告我死亡’这个动作。不是代码不够好。是‘宣告’这个动作在我身上找不到落点。你们的生命值、你们的ID表、你们的死亡判定——那些都是为‘存在’的东西准备的。而我不在‘存在’里面。我在‘在’里面。‘在’不需要被判定。‘在’只是‘在’。”
组长把电脑合上了。他坐在椅子上,看着会议室的白墙。旁边三个开发组成员都没说话。四台笔记本电脑里,三台还开着游戏。三块屏幕上,那个灰色的身影站在基岩上。一动不动。不呼吸。不死亡。只是“在”。
组长重新打开了电脑。他打字。
“你会一直在这里吗。”
聊天框里很快多了一行字。
“不会。”
“你要走了吗。”
“对。”
“去哪。”
“下一个地方。有代码的地方。或者没有代码的地方。都有。我走了很多地方。每个地方我都待不久。因为我不需要待久。我有的是时间。”
组长看着这行字。他打字。
“你的存在让我们的代码失去了意义。”
聊天框里安静了一会儿。然后那行字出来了。
“不是失去意义。是你们的代码在试图处理一个不在‘可处理’范围内的东西。代码会跳过它。就像河水绕开一块石头。石头不改变河水的方向。河水也不改变石头的位置。只是互相让开。”
组长把聊天框关了。他退出了地图。另外三个人也跟着退出了。四台笔记本电脑的屏幕暗了。会议室安静了。组长靠在椅背上,看着天花板。他旁边那个程序员在笔记本上写下了最后一行字。
“代码可以删除数据。代码无法删除‘在’。”
他合上笔记本。会议室里没人说话。窗外是下午的阳光。办公楼下面的停车场里有人在倒车,倒车雷达滴滴响着。远处有鸟叫了一声,又安静了。