返回指南列表

Types.xml 深入解析

理解 types.xml 格式中的每个字段

什么是 events.xml?
  • events.xml 控制 DayZ 中的所有动态事件——动物群、感染者群、直升机坠毁、载具生成、空投和静态战利品生成。
  • 与 types.xml 全局管理单个物品数量不同,events.xml 在地图特定位置生成物品/生物组。
  • 每个事件定义了生成区域、时间规则和子项列表(实际出现的实体)。
  • CE 按周期评估事件,检查当前数量是否低于 nominal,并在需要时生成新实例。
  • 事件是在地图上创建兴趣点的主要方式——它们驱动玩家移动和 PvP 遭遇。
事件的 Nominal、Min 和 Max
  • nominal:该事件同时存在的目标实例数量。例如 nominal=4 表示应始终有 4 个直升机坠毁点活跃。
  • min:最小数量。当活跃实例降至 min 以下时,CE 排队新的生成尝试。如果 min=0,事件可以在重生前完全消失。
  • max:最大上限。CE 永远不会超过此活跃实例数。防止事件淹没地图。
  • 典型设置:nominal=5、min=3、max=8。CE 试图保持 5 个,低于 3 时补充,不超过 8 个。
  • 高价值事件(直升机坠毁):保持低 nominal(2-5)使其稀有且有争议。
  • 环境事件(动物群):设置较高 nominal(10-20)使野生动物在地图各处感觉存在。
Lifetime 以分钟为单位——关键区别
  • 关键:事件 lifetime 以分钟为单位,不像 types.xml 以秒为单位。这是服务器管理员最常犯的错误。
  • lifetime=1440:事件持续 1440 分钟(24小时)后被移除。适合应保持可发现的直升机坠毁。
  • lifetime=60:事件仅持续 1 小时。如果玩家未及时找到,它会消失。创造紧迫感但可能令玩家沮丧。
  • lifetime=0:事件无时间限制,持续到手动清除或服务器重启。
  • 对于有价值事件 lifetime 太短:玩家从 Discord/广播收到坐标但到达时发现什么都没有——事件已过期。
  • 对于 lifetime 太长:旧的、已被搜刮的事件在地图上堆积,消耗资源并误导玩家。
  • 建议:大多数事件使用 720-1440(12-24小时),与服务器重启间隔匹配。
位置和限制类型
  • position=fixed:事件在 CE 中定义的预定地图位置生成。玩家可以学习这些位置——适合地标。
  • position=player:事件在活跃玩家附近一定半径内生成。创造动态、不可预测的体验。事件可能在你身后生成。
  • position=fixed 用于:直升机坠毁、军事车队、静态污染区——有固定地图位置的地方。
  • position=player 用于:动物群、感染者群——无论玩家去哪里都应该感觉活着和存在的东西。
  • limit=child:生成限制分别应用于每个子类型。如果事件有 3 种动物类型,每种类型单独限制。
  • limit=event:生成限制应用于整个事件。所有子项共享相同的生成预算。
  • 实际区别:limit=child 的 AnimalDeer 让每种鹿类独立生成。limit=event 意味着所有鹿类的总量受限。
子项——生成的实体
  • 每个事件包含子项——当事件触发时实际出现在世界中的具体物品、生物或实体。
  • 每个子项有:tag(类名)、min(最小数量)、max(最大数量)和可选的 lootmin/lootmax。
  • lootmin/lootmax:控制子项实体附带多少战利品。例如 lootmin=1、lootmax=3 的士兵僵尸在其身体上生成 1-3 个物品。
  • AnimalDeer 事件:子项可能包括 Animal_CervusElaphus(赤鹿)min=3、max=8 和 Animal_CapreolusCapreolus(狍子)min=2、max=5。
  • HelicopterCrash:子项是在坠毁点生成的具体战利品类型(武器、弹药、医疗用品)。
  • 你可以将 mod 添加的实体作为子项添加——只需使用 mod 的 config.cpp 中的正确类名。
  • 警告:如果子项引用不存在的类名(拼写错误或缺少 mod),事件将静默失败而不生成。
Active 标志和常见事件
  • active=1:事件已启用。CE 将按正常周期评估和生成此事件。
  • active=0:事件已禁用。CE 完全忽略它。不生成、不计数、不消耗资源。用此关闭事件而无需删除。
  • 禁用事件适用于:在 PvP 为主的服务器上关闭动物生成,在创意/建造者服务器上禁用感染者,或在测试期间临时移除事件。
  • InfectedMilitary / InfectedTown / InfectedIndustrial / InfectedVillage:控制不同区域类型的感染者群生成。
  • AnimalDeer / AnimalBoar / AnimalBear / AnimalWolf:动物群事件。每种物种有自己的生成行为和偏好地形。
  • HelicopterCrash:动态直升机坠毁点,生成军事级战利品。是任何服务器上最具争议的事件之一。
  • VehicleCivilian / VehicleMilitary:载具生成事件。控制载具出现的位置和方式。
  • StaticMilitary* / StaticIndustrial* / StaticTown*:在特定地图位置的固定位置战利品生成。