规则是怎么来的——从矿透争议看游戏设计的底层逻辑
我想从一个听起来像是废话的问题开始:矿透为什么是作弊?
先停一下,认真想想,把你第一秒冒出来的答案先压住。那个答案八成是"因为它是作弊",而这在逻辑上等于什么都没说——等于问某人"你为什么要这么做",对方回答"因为我就是要这么做",然后双方相视而立,陷入一种非常尴尬的沉默。
这个问题之所以重要,不是因为答案很难找,而是因为大多数人压根就不会去找。
在 Minecraft 服务器的文化里,"矿透是作弊"更接近于某种气候——你出门会感觉到冷,但你不会每次出门都停下来问"为什么是冷的而不是热的",它就是那样,你就那样接受了。
服主封禁矿透玩家,是因为规则这么说;规则这么说,是因为别的服务器都这么规定;别的服务器都这么规定,是因为大家都觉得理所当然;大家都觉得理所当然,是因为……矿透是作弊。这是一个完美的循环论证,在里面转的好像从来不需要出口。
但我不打算说矿透不该被禁,也不是要为矿透玩家喊冤。
这篇文章想做的事更基础一点——把这件事拆清楚:矿透到底是什么、"原版"这个词到底在说什么、规则究竟是在保护什么。把这三件事搞清楚之后,你自己决定禁不禁,但至少那个决定是你的,不是从别人那里批发来的。
矿透是什么
矿透在技术层面上的实现方式,比大多数人想象的要简单得多,也平淡得多。
它在绝大多数情况下是一个客户端材质包——把石头、泥土、沙砾这类方块换成透明贴图,矿石因此暴露出来,就是这样,没有别的了。没有数据包拦截,没有网络请求注入,没有对服务器逻辑的任何干预。
服务器端收到的连接行为和普通玩家完全一样。它不知道你在用什么渲染材质,就像它不知道你把草地换成了紫色、把苦力怕换成了猫娘一样。
从服务器的视角来看,矿透玩家和普通玩家之间的唯一区别,是前者在某些不该有矿的地方走过去了,然后在某些有矿的地方停下来挖了。反矿透系统从某种意义上也正是用这些行为模式来做判断的,但这是后话。
这和另一种意义上的"作弊"——修改客户端直接发送非法数据包、强制飞行、穿墙——是完全不同性质的东西。
后者是在对服务器撒谎,发送服务器正常情况下不该接收的信息;前者只是改变了你自己的视觉渲染,服务器在这件事里根本没有参与。我们倾向于用同一个词"作弊"来称呼这两件事,但它们在机制上的差异,大概相当于"伪造证件"和"戴了一副透视眼镜走进一栋建筑"之间的差异——在道德直觉层面,两者确实都让人不舒服,但它们对外部世界的实际影响是完全不同的。把它们混为一谈,论证的精度会在这一步开始塌方。
然后一个很自然的问题就来了:如果矿透是作弊,那 Optifine 是作弊吗?
Optifine 允许你开启连接材质、提升亮度、减少迷雾,在实际游戏中能给你相当程度的视野优势,尤其是在地下和夜晚——这些都是生存模式下真实存在的竞争场景,不是抽象的可能性。它同时被数以百万计的玩家使用,包括相当大比例的服主本人,即使现在 Sodium 和 Iris 正在替代它,这个问题的本质也没有变。
Optifine 和矿透的区别在哪?视野增益的程度不同,性质不同,这些都是真实的区别。但如果把"客户端材质修改带来游戏内视野优势"作为判断标准,这个标准会同时框进矿透和 Optifine,而大多数服务器只封禁前者。
这不是逻辑,这是惯例。
我不是在说 Optifine 应该被封禁。我是在说用来封禁矿透的那个论证,在这里出现了一个漏洞,而大多数人没有注意到它——因为它恰好长在习惯的盲区里。
"原版"是什么
现在说说那个被经常用来为规则背书的词:原版。
"这是原版生存服,矿透破坏了原版体验。"这句话出现在很多服务器的规则页面和封禁理由里。我理解它想表达什么,但"原版"这个词本身界限就非常模糊——在 Minecraft 的语境里,它几乎是一个无法被严格定义的概念。
Minecraft 官方发布了多套资源包。默认材质是"原版",Programmer Art——那套怀旧的早期风格材质——是 Mojang 官方制作并捆绑在游戏里的,它也是"原版",但两者长得完全不一样,同时存在于同一个安装包里。
Java 版和 Bedrock 版有不同的渲染逻辑、不同的物理行为、不同的区块生成细节。你玩的是哪个,哪个是"原版"?
数据包是 Mojang 官方支持的功能,可以改变几乎所有游戏规则,包括战利品表、矿石生成、怪物行为。很多服务器在用数据包、插件、模组做自定义内容,同时声称自己是"原版服务器"——这两件事可以同时成立吗?
Bedrock 版有官方的 Marketplace,Mojang 在上面销售第三方制作的材质包和玩法模式。这些是 Mojang 的商业产品,它们算"原版"吗?
"原版"在 Minecraft 里从来就不是一条清晰的边界,而是一个会根据社区惯例漂移的模糊共识。
三年前 Optifine 是每个人都默认安装的东西,现在 Fabric 生态里的优化模组取代了它——而 Fabric 本身同样不是"原版",但它的影响已经渗透到大量"原版"服务器的底层。很多服主在用 Fabric 服务端,同时声称自己是原版服务器,更别说插件服了。
我没有在说这件事有什么问题。我是在说,用"原版"作为规则依据,其实是在用一个模糊的词来撑起一个需要清晰逻辑的位置,而这个位置迟早会出现裂缝。
服主们真正想表达的,不是"这个服务器忠实于某个技术意义上的原版定义",而是"这个服务器想要保护某种特定的游戏体验"。这是一个更诚实也更实用的表达,但"原版"这个词把这层意思遮住了,让讨论从一开始就少了精确度——而精确度恰好是规则最需要的东西。
挖矿是什么,矿透在里面破坏了什么
Minecraft 的挖矿是有设计意图的,这一点应该没有人会反对。
矿石不是随机均匀撒在地下的,它们按照特定的高度分布和密度规律生成。不同种类的矿石有不同的理想深度,有的聚集成矿脉,有的以散点形式分布。这套逻辑在 1.18 的世界高度改变之后变得更加明显——钻石在 Y=-58 左右出现频率最高,铜矿在 Y=48 附近有个奇怪的聚集峰值,每种矿石都有自己的"甜点深度"。
这些不是随意的设计,它们在制造一种特定的体验:不确定性。
你不知道下一个拐角有没有矿,你可能挖了很久什么都没有,然后突然撞进一个矿脉。这个随机性制造了探索的动力,也制造了资源稀缺的心理价值。同样一块钻石,挖一分钟找到三个,和挖了半小时才找到一个,游戏机制上是同一件物品,但在玩家心里的重量完全不同。
这种重量差异是设计的一部分,不是副产品。Mojang 保持挖矿有一定费力程度,是因为费力本身在制造意义。
矿透把这个机制的核心给绕开了。
挖矿从"探索"变成了"采集",从一件有随机性、有期待感的事情变成了纯粹的重复劳动——你知道矿在哪,你去挖,你拿走,完成。不确定性消失了,带走的不只是游戏的某种质感,而是一整套建立在不确定性之上的机制的意义。
这也是矿透和 Optifine 夜视增益之间真正的性质差异:Optifine 改变了你的视觉舒适度,矿透绕过了一个核心的游戏机制设计。
但这里有一个问题需要单独说清楚。
在单人游戏里,这件事对任何其他玩家都没有影响。你自己决定要不要绕过探索的不确定性,游戏在你一个人的世界里,你有权决定是否接受它的全部设定。
在有 PVP 的服务器里,矿透带来直接的竞争优势,破坏的是其他玩家的公平参与机会,这很清楚。
但在纯粹的生存服里呢?没有 PVP,玩家 A 用矿透挖到了更多矿,玩家 B 因此受到了什么具体影响?这是一个需要认真回答的问题——不同的服务器形态下,答案真的不一样,而大多数服主没有在这一步停下来想过。
反矿透做了什么,代价是什么
大多数服务器对矿透的标准应对,是部署反矿透系统——比如 Paper 内置的 orebfuscation 功能,或者专门的反作弊插件。
这些系统的基本逻辑是:不向客户端发送玩家周围区块的真实矿石数据,而是发送虚假的石头,直到玩家走到那个位置才在服务器端更新为真实方块。
这确实有效。但它有几个附带问题,通常不在规则讨论的射程之内。
第一,性能开销。混淆逻辑需要在服务器端实时运行,每个区块的每次发送都需要经过处理,在玩家密度高的情况下,这个开销是真实存在的。即使现代 Paper 的优化已经把它压到了相当低的水平,"有开销"这个事实本身还是在那里。
第二,它可以被绕过,而绕过的方式有时候会产生比矿透本身更大的服务器压力。有经验的矿透用户可以通过分析区块加载时序来识别混淆区域,某些绕过方法会让客户端对服务器发起大量区块更新请求,这些请求在服务器端产生的处理负担,有时候反而超过了矿透使用本身带来的影响。
第三,严格的反作弊系统有误封率。这在大规模服务器里是一个实际运营问题。被误封的普通玩家和申诉处理的人力成本也是成本链条的一部分,只是这部分成本通常由玩家用情绪买单,服主账面上看不出来。
"矿透是作弊,部署反矿透"这个决策背后有一套完整的成本结构。但这套成本结构在绝大多数服主做决策的时候是不可见的——因为规则不是从成本分析开始的,规则是从"大家都这么做"开始的。
规则是怎么来的
我见过很多服务器的规则页面,它们长得惊人地相似。
禁止矿透、禁止飞行外挂、禁止刷屏、禁止服务器广告——这些条目几乎出现在每一个生存服里,措辞有时候都差不多,仿佛来自同一个模板。很可能确实如此。我认识的不止一个服主承认,他们的初始规则是从别人的服务器借鉴来的,然后"根据自己的情况稍作调整"——而"稍作调整"通常意味着改了一下字体颜色或者措辞。
这不是什么奇怪的现象。规则在人类社会里本来就是这样传播的:你继承了它,执行了它,然后在某个时候它变成了不言而喻的常识,变成了"理所当然",没有人再去追问它的来历。
问题不在于规则是被继承的——规则当然可以被继承——问题在于,被继承的规则放到新的语境里,是否还在保护它最初想保护的东西。
一条规则之所以是规则而不是偏好,是因为它在保护某些东西:公平竞争的环境、其他玩家的游戏体验、服务器的性能稳定、社区的某种文化氛围。
如果你能说清楚"矿透在这个服务器里破坏了哪些具体的东西,影响了哪些玩家的哪些具体利益,我禁止它是因为我在保护这些",那这条规则就是设计——它有逻辑基础,有清晰的目标,可以被讨论,可以被质疑,也可以被调整。
如果你说不清楚,只能说"因为矿透是作弊"或者"因为大家都这么规定",那它就只是习惯——一个你继承了但没有内化的行为模式,可能仍然是个好习惯,但你没有办法对它做出真正有弹性的执行判断,因为你不知道它在做什么,自然也不知道什么时候它失灵了。
这两者的区别在具体执行层面会非常明显。
设想一个玩家来找你说:"我在单人游戏里习惯用矿透,但加入了你的服务器,你们没有 PVP,能解释一下为什么这里也不允许吗?"你怎么回答?
如果你的规则是设计,你会有一个清晰的答案:因为这个服务器认为挖矿体验的公平性对社区氛围很重要,我们希望所有人面对同样的矿石不确定性,即使没有直接的 PVP 竞争,这也是我们想保护的东西。
如果你的规则只是习惯,你能给出的答案就只剩下"这是规定"。而"这是规定"作为一个解释,本质是"我也不知道为什么但你要遵守"——这在执行层面制造的麻烦比你想象的要多。你在用权力代替逻辑,而权力在遇到第一个认真质疑的人之前,很难发现自己的空洞在哪里。
所以那个问题的顺序其实是:先想清楚你的服务器是什么,再问规则在保护什么,再看规则是不是在保护那个东西。答得上来每一层,你在做设计;哪一层断掉了,你在那里执行的就是别人的判断,用你的权力。
矿透争议是小事,但它刚好把这三层都摊开了——它是一个入口,一个让你顺着走进去、看看自己的服务器建立在什么之上的机会。走不走,是你的事。
但还有一层在规则之下
说到这里,其实还没有说到最深的那个问题。
跟风制定规则是一个症状,不是病因。病因更往里一点,往里到一个很多人从来没有停下来正视过的地方:你的服务器到底想要什么体验?
我有一个朋友,曾经非常要好,我们一起开过一个服务器。那段时间吵了很多架,我当时的归因方式是把矛盾推给具体的争议事项——推给矿透该不该禁、规则应该松还是紧、管理风格不合、想法不同——反正就是没有往更下面的地方看。
后来想明白了一件事:她知道那个服务器要做什么,我不知道。
她在整个过程里一直是从那个"知道"出发说话的,所以她的立场是一致的。我是从一个自己都没有确认过的地方出发说话,所以我的立场在每次争议里都在飘——飘到最后,我们谁也说不服谁,因为我们其实不在讨论同一个问题,我们只是在同一个频道上各自说话。
我那时候的方法论大概是这样的:去观察成功的服务器,看他们在做什么,把那套搬过来,然后等它生效。禁矿透、装反作弊、规则页面按模板写、活动参考大服务器——我把这些当成某种财富密码,以为只要按对顺序输入,就能输出一个运转良好的服务器。
但我从来没有问过:这些做法服务的是哪种体验?那种体验是我们的服务器想要的吗?我们的服务器究竟想要什么?这三个问题,我一个都没有认真回答过。
财富密码之所以看起来像密码,是因为你不知道它背后的逻辑,所以它看起来像魔法。而一旦理解了背后的逻辑,它就不再是密码了——它只是一套在特定条件下成立的判断,离开那个条件,什么都不是,复制过来的外壳也什么都不是。
Minecraft 服务器从本质上是一个体验设计问题,不是技术问题,也不是管理问题。技术和管理是实现手段。但在它们之前,有一个问题需要先被回答:你想让玩家在你的服务器上感受到什么?
是资源稀缺制造的成就感?是社区协作带来的归属感?是不被打扰的自由探索?是竞争排名给人的刺激?
这些答案之间的差异,会导致截然不同的规则体系,而它们都可以是对的。但你得先知道自己在做哪一种,否则你只是在一个没有地基的地方不停地往上垒砖——垒得越高越危险,每次有人踢一脚,你都不知道从哪里开始塌。
回到矿透。
一个以资源获取为核心竞争机制的服务器,和一个以共建世界为核心乐趣的服务器,对矿透理应有完全不同的态度——不是因为规则在两者之间有什么抽象差异,而是因为矿透这件事在这两种体验设计里,影响的东西根本就不一样。
在前者里,矿透破坏了竞争公平性,它碰到了核心;在后者里,矿透最多让一个人提前拿到了更多石头,对整体体验的影响趋近于零。同一件事,在不同的设计意图下,重量完全不同。
但如果你没有设计意图,你没有办法做这个区分。你只能把所有服务器都当成同一种来管理,从同一个模板里复制规则,然后在遇到真正的边界案例时,发现手里的规则没有告诉你该怎么办——因为它从来就不是为你的服务器写的,它是为另一个人的服务器写的,你只是借来用罢了。
这才是真正的问题所在。不是矿透,不是规则,而是大多数人在运营一个东西,但没有想清楚那个东西到底是什么。
包括我,曾经,在一段很要好的友谊里,把这件事验证了一次。