P
ProtocolStringReplacer
11332022/10/01 19:13:51
10 5

ProtocolStringReplacer

  ProtocolStringReplacer是一款通过修改网络数据包而实现替换字符串功能的插件,致力于优化效率、提供更多功能,以达到方便、实用的目标.
  由于只修改了发送给玩家的数据包,故不会影响服务端上的处理.

特性

  • 修复服务端 Log4j 0day CVE 漏洞(全版本) 独立版
  • 修改以下内容中的字符串,或者屏蔽:
    • 1.19 聊天预览中的 Component
    • 物品的DisplayName和Lore
    • TabComplete 中的字符串
    • Combat Died(死亡界面) 信息
    • 踢出服务器的信息
    • 成书的内容/署名
    • Boss血量条文本
    • 任何控制台信息
    • 告示牌信息
    • 计分板信息
    • 标题消息
    • 聊天信息
    • 窗口标题
    • 实体名称
  • 支持转换 PLAYER_CHAT 数据包为 SYSTEM_CHAT 数据包, 以确保在 1.19 上正确替换. (副作用: 客户端将无法检测消息的发送者. 例如, 无法通过聊天举报他们.)
  • 字符串替换采用 AC 算法! 十分迅速!
  • 不会增加服务器的带宽压力! 所有替换均在原数据包上操作.
  • 支持对控制台的信息管理! 每一个字符都可以替换或屏蔽!
  • 支持修改 Json, 对 Json 的智能处理, 即使不了解 Json 也可使用普通替换模式, 不会破坏任何数据.
  • 针对修改物品制作的缓存机制, 处理一个窗口内所有物品仅需1毫秒 (于i3-2120 + 已缓存情况下测试)
  • 支持替换为PAPI变量, 且更安全, 可以在配置文件中设定占位符使用格式
  • 游戏内的指令修改功能
  • 以及现代化的指令结构
  • 多个替换配置文件系统
  • 有序化的字符串替换
  • 完全的注释保留功能
  • 完全支持热加载
  • 过滤系统

指令

  • /psr help - 显示插件指令列表
  • /psr edit - 游戏内替换配置编辑器
  • /psr parse - 测试替换字符串
  • /psr capture - 捕获部分数据包的内容
  • /psr reload - 重载插件所有配置文件

 详细的指令帮助请在游戏内输入子指令+ help 如/psr edit help

权限

  • protocolstringreplacer.command.edit - 允许使用替换配置编辑器
  • protocolstringreplacer.command.parse - 允许使用替换字符串测试功能
  • protocolstringreplacer.command.reload - 允许重载插件配置文件
  • protocolstringreplacer.command.capture - 允许捕获数据包的内容
  • protocolstringreplacer.feature.usermetacache - 为创造模式恢复修改前的原物品 (防止创造模式替换到实际物品的特性)
  • protocolstringreplacer.feature.usermetacache.noncreative - 为非创造模式玩家也提供该功能 (用于一些奇怪的特殊情况, 若遇到无法移动物品等问题时尝试给予该权限)

问题反馈

  如果您在使用插件过程中遇到任何问题,欢迎在GitHub issue tracker上反馈。
  插件交流群: 422532220
  未完善的维基: https://rothes.gitbook.io/protocolstringreplacer/

常见问题

1. PAPI占位符无法替换
  PSR 默认的占位符格式为{占位符}(全角字符), 而不是 %占位符% . 这是为了服务器安全性, 防止玩家通过发送占位符来获取服务器信息. 同时, 可以使 PSR 自动检测字符串中是否包含占位符, 若无则不会调用 PAPI API, 这可以大大加快替换效率. 您可以在插件的 Config.yml 中调整此设定.
2. 有时无法替换生物的名称
  这是由 ProtocolLib 的问题导致. 该问题不在 PSR 可以处理的范围之内, 且不仅仅只影响到了 PSR 插件的处理. 目前 PSR 已将该报错屏蔽.
3. 插件导致服务器大幅卡顿
  PSR 已经对插件进行了很极致的优化, 且所有运行的进程皆异步进行. 若您遇到此问题, 通常这是由于一些插件在主线程上进行了有关的网络处理, 而 PSR 扩大了此行为对主线程的影响. 请手动排除您的服务端插件.
4. 无法使用色彩符号
  由于一些原因, PSR 使用 Minecraft 原版提供的色彩符号 § 而不是 Bukkit 中常用的色彩符号 &. 请尝试将您的替换配置中的所有色彩符号替换为 §.
  
  


  本项目基于 GNU GPLv3 协议开源于 GitHub

支持作者,获得更多创作动力!

10 5

暂无数据

版本列表
12 个版本
R
ProtocolStringReplacer v2.12.2
1 个文件 2022/10/01 19:13:51
+ 其余 11 个版本
时间
发布时间
2022/02/19 03:18:11
更新时间
2022/10/01 19:13:51