在多人服务器里,常有玩家不接任务就直接跑进任务 POI,把里面的任务奖励箱(保险箱 / 密封运输箱等)顺手撬开白嫖装备。本模组在玩家加载区块时,自动清除”非任务建筑”里的奖励箱,让奖励只属于真正接了任务、跑了图的玩家。
满足以下任意一条的 POI,奖励箱会被完整保留:
→ 正经做任务的玩家体验完全不受影响,被清的只有”没人接任务却敞开放着”的白嫖箱。
⚠️ 本模组不做任何”自动猜测”。哪些箱子算奖励箱,100% 由 Config.xml 里你填的方块名决定。
这样做的好处:精准可控、零误删;你的服务器装了什么自定义箱子,填进去就能删,不会动到不该动的东西。
已内置开箱即用的原版奖励箱:
把整个 禁止白嫖奖励箱 文件夹放到服务端的 Mods\ 目录下。
确认文件夹内含 ModInfo.xml、Config.xml、NoFreeQuestReward.dll。
重启服务器即可生效。
| 配置项 | 默认 | 说明 |
|---|---|---|
| extraBlockNames | 已内置 | 核心。要清除的奖励箱方块名清单,按内部方块名精准匹配。 |
| excludeBlockNames | 空 | 白名单:列在这里的方块名即使命中也不删。 |
| extraLootListNames | 空 | 可选:按战利品表名额外识别奖励箱。 |
| excludeLootListNames | 空 | 白名单:列在这里的战利品表名不删。 |
| keepIfActiveQuest | true | 有在线玩家进行中任务指向该 POI 时保留。 |
| keepIfRecentlyQuestRefreshed | true | 该 POI 最近被任务刷新过时保留。 |
| maxRemovePerFrame | 20 | 每帧最多移除数量,防瞬时卡顿。 |
| enableDebugLog | false | 输出每次移除/保留的调试日志。 |
| debugLogAllLootContainers | false | 诊断模式:把每种容器的方块名各打印一次,专门用来找方块名。 |
把 debugLogAllLootContainers 设为 true,重启进图走一圈。
在服务端日志里找形如 [扫描] block=xxx loot=yyy 的记录,看你想清的箱子叫什么。
把那个 block= 名填进 extraBlockNames,重启生效。完事后把诊断改回 false。
enableDebugLog 观察判定,确认无误再关。
7 Days to Die 3.0 专用服务器 / 单机宿主。需服务端启用官方自带 0_TFP_Harmony 模组(默认即开)。