TruePVE – 真实PVE 2.2.3

TruePVE – 真实PVE 2.2.3

TruePVE.cs
文件大小
118.3K
版本号
2.2.3
原网址
https://umod.org/plugins/true-pve

v2.2.3 — 2024 年09月05日

  • 修复 Rust 更新(需要 Rust 更新才能编译)
  • 已添加Allow Killing Sleepers (After X Hours Offline)(0,已禁用)
  • 已添加 APIExcludePlayer(ulong userid, float maxDelayLength, Plugin plugin)

v2.2.1 — 2024 年08月013日

  • 修复了各种规则被错误评估的问题 (@Kobani)
  • 修复了Trace To Player Console当 false 被破坏Trace To Server Console时,true
  • 被添加的问题Log Trace To File(true)

True PVE是一个损害控制插件,最初旨在改进默认服务器 PVE 模式 (server.pve = true),以便让服务器真正成为 PVE。此插件还可用于微调 PVP 行为,从而实现一系列损害控制配置,以自定义 PVP、PVE 以及介于两者之间的任何内容。
TruePVE 应与server.pve false(PVP 模式开启)一起使用!运行 TruePVEserver.pve true可能会产生意想不到的效果。

控制台命令
tpve.def – 擦除并创建默认配置/数据
tpve.sched [enable|disable] – 启用/禁用计划
tpve.trace – 切换跟踪;5 分钟后自动禁用(硬编码)以防止意外日志溢出。有关跟踪的更多详细信息,请参阅下文。
tpve.usage – 显示命令使用信息

聊天命令
/tpve_prod – 打印出正在查看的实体的类型和预制件名称(针对实体组)
/tpve map [name] – 创建/更新/删除映射。[name] 是映射的名称或您正在映射的区域 ID。是一个可选参数,定义您希望映射到的规则集名称或“排除”以跳过处理。留空将删除 [name] 的映射

Config Version – 请勿更改
Default RuleSet – 要使用的默认规则集的名称
Configuration Options – 全局配置选项
HandleDamage – 启用 TruePVE 伤害处理
UseZones – 允许使用区域特定的损坏配置(需要 ZoneManager)
Mappings – 将区域名称 (LiteZones) 或名称/ID (ZoneManager) 映射到规则集名称,或简单地将规则集名称映射到其自身。可用于将多个区域映射到同一个规则集。还可用于通过映射到“排除”来创建排除区域(具有默认 Rust 行为的区域)。示例:

"Mappings": {
"default": "default",
"66499587": "killall",
"62819081": "exclude"
},

Schedule – 时间表规则集变更
enabled – 启用计划使用
useRealtime – 启用实时(服务器时间)
broadcast- 允许在计划的规则集更改时发送广播消息(但如果计划条目没有设置消息,则不会广播任何消息)
entries – 计划条目 – 详情见下文规则集 – 定义的损坏配置 -详情见下文实体组 – 规则中使用的定义实体分组

毫不奇怪,RuleSet 也是一组规则。
在安排规则集变更或区域特定配置时,规则集的名称可用作参考。
defaultAllowDamage – 选项定义规则集的标准行为即它是否允许或阻止整体伤害。对于 PVE 规则集,应始终将其设置为false 。
flags – 选项允许您定义一些内置规则(需要在后台进行更专门编码的规则)。只有定义的标志才会启用,而任何未定义的标志都会被自然禁用。可用标志的列表和说明如下。
规则部分是一系列语义上准确的规则(不再有链接!)。它们定义了一个规则集及其对另一个规则集的行为。
格式为:但是目前规则集是从[RuleSet 1] [behavior] [RuleSet 2]规则的末尾拉出来的,只有少数行为会对规则产生影响,因此您几乎可以在规则集
1 和规则集 2 之间说任何话,并且会假定其含义为“允许损坏”。例外情况是,如果行为中出现“不能”或“不能”字样,则规则将被否定并假定为“防止损坏”。
此外,还有通用的规则集名称可用于定义更广泛的应用 – 单词“ anything ”、“ nothing ”、“ everything ”、“ all ”、“ any ”和“ none ”可用于规则集 1 或规则集 ,不过,语义再次被考虑在内,因此“nothing”或“none”将有效地再次反转规则含义。因此,使用双重否定,如“玩家不能伤害任何东西”将转化为“玩家可以伤害一切”,并且可能会阻止您加入任何游艇俱乐部。

规则优先级

制定规则时必须考虑一定的优先级。一般来说,更具体的规则优先于宽泛的规则(带有“任何内容”或“无内容”等的规则)。如果您有两个规则:“任何内容都可以伤害玩家”和“路障不能伤害玩家”,那么路障规则将始终优先于“任何内容”规则。

日程表条目
计划条目定义了计划的全局规则集更改,并已将其合并为一行,其中包含由空格分隔的三 (3) 个部分:

  1. Time- 预定条目生效的时间。对于游戏内时间,格式为“ hh:mm ”,其中 hh 表示小时(24 小时制),mm 表示分钟。但是,实时时间表条目应输入为“ d.hh:mm ”,其中 d 表示星期几,范围为 0-6(星期日至星期六)。星期几现在也接受(星号) 作为通配符来表示每日,因此实时条目“.08:00”将在每天 0800(上午 8:00)触发。请注意,对于实时,如果您不提供星期几,则将假定为 0(星期日),并且您的时间表条目只会在星期日触发!
  2. RuleSet – 在指定时间全局设置的 RuleSet 名称
  3. Message- 规则集名称后的所有文本都用作广播消息,在规则集更改时发送给所有玩家。此消息还会发送给在计划条目持续时间内登录的任何玩家。令人震惊的是,如果消息为空,则不会广播任何消息。
// 使用实时的示例计划条目
“12:00 default PVE enabled!” // 每天 12:00,设置规则集“默认”并广播“PVE 已启用!”
“18:00 pvp PVP time!” // 每天 18:00(下午 6 点),设置规则集“pvp”并广播“PVP 时间!”

Note – 这些标志中的大多数都是从以前的配置选项中继承而来的,但有些标志的功能略有改变。
Overrides Rules – 如果使用,所有标志都会忽略规则评估,但 TrapsIgnorePlayers、TurretsIgnorePlayers、TurretsIgnoreScientist、StaticSamSitesIgnorePlayers 和 PlayerSamSitesIgnorePlayers 除外,这些标志仅允许实体组中的例外
Ignores All Rules – 需要 NoHeliDamage、NoHeliDamagePlayer 和 NoHeliDamageQuarry 来处理直升机伤害。默认情况下,不使用直升机标志允许伤害。无论哪种方式,规则都不会被评估。

  • Decay damage – TruePVE 不处理衰变伤害
  • Looting – TruePVE 不处理抢劫。使用 Prevent Looting 插件
  • Animal damage – 不评估规则 – 允许对该物体造成所有损坏
  • AdvancedChristmasLights – 规则未评估 – 您必须能够构建才能损坏此对象
  • GrowableEntity – 规则未评估 – 您必须能够构建或成为所有者才能损坏此对象
  • AuthorizedDamage – 是一个非常小众的标志,被严重误解。它允许玩家破坏他们拥有的实体,或拥有橱柜授权的实体。当与CupboardOwnership搭配使用时,当没有工具柜保护实体时,它将允许造成伤害。AuthorizedDamageRequiresOwnership有助于完善它,当玩家拥有实体、是盟友或攻击不受工具柜保护的实体时,允许造成伤害。
  • AuthorizeDamage – 会覆盖规则,除非规则适用于坐骑或 samsites。AuthorizedDamageRequiresOwnership会覆盖规则,除非玩家是盟友且规则适用于坐骑。在这种情况下,如果伤害未被阻止,规则将继续评估。如果玩家不是盟友,那么规则除了坐骑外,还可能覆盖 samsites。
  • SuicideBlocked – 阻止自杀 – 不使用规则
  • SelfDamage- 允许玩家(通常)自我伤害,例如使用 C4 或 BeanCans 等。
  • CupboardOwnership – 当启用AuthorizedDamage时,将把橱柜范围之外的实体视为无主实体,而橱柜范围内的实体将需要授权。
  • TwigDamage – 允许玩家损坏任何树枝积木,无论是否获得授权(以鼓励合理的建筑实践)
  • NoHeliDamage – 禁用下列现有直升机标志未涵盖的所有其他实体的直升机伤害
  • NoHeliDamagePlayer-防止直升机伤害玩家
  • NoHeliDamageQuarry – 防止直升机破坏采石场
  • NoHeliDamageSleepers-防止直升机对卧铺者造成伤害(这不会检查玩家是否在线!)
  • NoHeliDamageRidableHorses – 防止对可骑乘马匹造成伤害
  • NoHeliDamageBuildings -在 TC 范围内防止对建筑物、车辆和可部署物造成损坏
  • HeliDamageLocked -允许直升机损坏上锁的箱子/门(需要 LockedBoxesImmortal 或 LockedDoorsImmortal)
  • HumanNPCDamage – 启用 HumanNPC 伤害
  • LockedBoxesImmortal – 上锁的盒子是永生的(_HeliDamageLocked 覆盖了这一点)
  • LockedDoorsImmortal – 上锁的门是永恒的(_HeliDamageLocked 覆盖了这一点)
  • AdminsHurtSleepers – 管理员可能会伤害沉睡
  • ProtectedSleepers – 保护睡眠者免受 NPC 伤害
  • TrapsIgnorePlayers -玩家不会触发陷阱(不适用于熊/捕捉陷阱)
  • TurretsIgnorePlayers -玩家不会触发炮塔(不适用于火焰炮塔)
  • TurretsIgnoreScientists -科学家和所有其他NPC不会触发炮塔
  • StaticSamSitesIgnorePlayers – 静态 SAM 站点忽略所有玩家,例如来自启动站点或已将 SamSite.staticRespawn 设置为 true 的插件的玩家。
  • PlayerSamSitesIgnorePlayers – 玩家 sam 站点忽略所有玩家,例如来自已部署 sam 站点的玩家。如果另一个插件将 SamSite.staticRespawn 设置为 true,则此标志将不适用于该 sam 站点
  • MiniCopterIsImmuneToCollision – 已移除,使用规则mini cannot hurt mini作为MiniCopter实体组中的成员
  • MiniCannotHurtPlayers – 已移除,使用规则mini cannot hurt players作为MiniCopter实体组中的成员
  • CarsImmunity – 将默认配置视为此更大的规则和实体组。
  • NoTurretDamagePlayer – 已移除,使用 TurretsIgnorePlayers 标志
  • NoTurretDamageScientist – 已移除,使用 TurretsIgnoreScientists 标志
© 版权声明
THE END
喜欢就支持一下吧
点赞9
评论 抢沙发

请登录后发表评论

    暂无评论内容