
PePr - 权限预检
在尝试区块、容器、实体和物品交互之前,预览它们是否可能被允许。
权限预检
权限预检是一个 Forge 生活质量工具,它在玩家尝试进行方块、容器、实体和物品交互之前,预先显示这些操作是否可能被允许。
它专为多人游戏服务器、保护区、出生点区域、冒险模式区域以及模组环境而设计,在这些情况下,某些东西是否已损坏、受限制、被认领或根本无法使用,并不总是显而易见的。
在浪费时间尝试打开箱子、破坏方块、放置东西或与实体交互之前,权限预检可以快速给出可能被允许的提示。
它的功能是什么?
权限预检有助于回答以下问题:
- 我能破坏这个方块吗?
- 我能在这里放置东西吗?
- 我能打开这个箱子吗?
- 我能与这个方块交互吗?
- 我能与这个实体交互吗?
- 这是权限问题、领地问题、保护问题还是设置问题?
当模组有有用信息时,它会显示一个紧凑的 HUD 叠加层。默认显示“拒绝”和“部分”结果,而“允许”和“未知”结果可以通过配置或详细模式启用。
结果类型
权限预检使用四种简单的结果类型:
允许 可用检查未发现限制。
拒绝 该操作很可能被阻止。
部分 操作的某些部分可能可行,但结果不完整或混合。
未知 没有提供者可以验证该操作。这很正常,并不意味着出了问题。
该模组的措辞较为保守。如果无法验证某事,它会报告“未知”,而不是猜测。
支持的操作
权限预检可以检查常见的玩家操作,包括:
- 破坏方块
- 放置方块
- 使用或与方块交互
- 打开容器
- 与实体交互
- 攻击实体
- 对方块使用物品
HUD 叠加层
该叠加层设计紧凑且不引人注目。
默认情况下:
- 显示 拒绝 结果
- 显示 部分 结果
- 允许 结果被隐藏,除非在配置中启用
- 在普通模式下,未知 结果被隐藏,除非启用或激活详细模式
详细模式可以显示额外信息,例如:
- 正在检查的操作
- 提供者名称
- 置信度级别
- 缓存新鲜度
- 提供者跟踪详情
叠加层可以配置为显示在快捷栏上方或准星附近。
聊天警告
当玩家尝试一个已被预测为拒绝的操作时,权限预检可以显示一条简短的聊天警告。
警告有速率限制,因此不会刷屏聊天。
示例:
Preflight: likely denied, cannot open containers here.
重要行为
权限预检默认为信息提示性质。
它不会:
- 授予权限
- 绕过保护
- 禁用领地认领
- 覆盖服务器规则
- 强制操作成功
- 自行阻止玩家操作
该模组仅报告其可用检查所能判定的内容。
服务器端检查是权威性的,客户端覆盖层仅显示从服务器接收到的结果。
提供者
权限预检 1.0.0 包含两个主要提供者。
原版提供者
原版提供者检查常见的原版限制,包括:
- 旁观者模式
- 冒险/建造限制
- 世界边界
- 出生点保护
- 缺少或未加载的目标方块
- 缺少或已死亡的目标实体
近期观察提供者
近期观察提供者监视已取消的 Forge 交互事件,并短暂记住被拒绝的操作。
这有助于在第一次尝试失败后,即使没有该保护模组的直接集成,也能揭示来自其他保护系统的限制。
它可以观察针对以下操作的被拒绝尝试:
- 破坏方块
- 放置方块
- 使用方块
- 与实体交互
- 攻击实体
领地模组支持
权限预检目前不包含针对 FTB Chunks、Open Parties and Claims、Flan 或其他领地模组的直接 API 适配器。
对领地模组没有硬依赖,缺少领地模组不会导致游戏崩溃。
如果一个模组取消了 Forge 事件,并且近期观察提供者能够检测到它,那么与领地相关的拒绝信息仍可能在尝试交互后出现。
未来版本可能会添加直接的领地模组集成。
命令
权限预检包含以下命令:
/preflight here检查你当前瞄准的方块或实体。/preflight debug切换详细提供者输出和详细叠加模式。/preflight reload报告配置重载/实时配置行为。需要权限等级 2。
配置亮点
权限预检包含多个用于叠加层行为、网络、提供者检查和警告的配置选项。
常见选项包括:
enableOverlayoverlayPositionshowAllowedshowUnknownInNormalModeshowProviderInDetailedModeshowConfidenceInDetailedModeuseColorEmphasiscompactOverlaymaxReasonLengthenableChatWarningswarningCooldownTicksrequestRateLimitPerSecondcacheTtlTicksmaxInteractionReachBlocksenableVanillaProviderenableObservationProviderenableClaimAdaptersdebugLogging
网络与安全
权限预检在设计上充分考虑了多人游戏的安全性。
- 客户端仅在需要时发送请求。
- 服务器验证目标范围和当前目标信息。
- 客户端不能自由查询任意远处的区块或领地。
- 请求有速率限制。
- 结果会被短暂缓存。
- 如果服务器缺少支持,会优雅地降级。
- 支持专用服务器。
默认网络行为:
- 请求速率限制:每秒
4个请求 - 结果缓存时间:
20个游戏刻
推荐安装
- 单人游戏: 在客户端安装
- 专用服务器: 在服务器端安装
- 最佳多人游戏体验: 同时在服务器和客户端安装
- 仅服务器端: 命令和服务器端检查有效,但未安装模组的客户端将看不到 HUD 叠加层
- 在没有该模组的服务器上仅客户端安装: 无法获取服务器权威结果
已知限制
权限预检旨在提供帮助并保持保守,而非无所不知。
已知限制:
- 如果没有直接的领地模组适配器,某些领地权限在第一次尝试操作前无法预测。
- 某些模组方块可能没有暴露足够的原版信息来完美分类每个交互。
- 高延迟可能会短暂延迟叠加层更新。
- 攻击实体的检查比方块和容器检查更有限。
- 当没有提供者能验证操作时,出现“未知”结果是正常的。
版本信息
- Minecraft: 1.20.1
- 加载器: Forge
- Forge 目标版本: 47.4.20
- Java: 17
- 模组版本: 1.0.0
- 模组 ID:
permission_preflight - 许可证: 保留所有权利
- 作者: Iljas
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。