• 周年纪念勋章活动已圆满结束,如有已购买但仍未申请的用户,可以通过对应勋章的下载链接申请~
FeatherMorph —— 超级变变变 | 支持Folia!

开源 娱乐 FeatherMorph —— 超级变变变 | 支持Folia! 1.3.0

此版本包含一些权限上的变动,请注意!


  • 现在权限节点将使用 feathermorph 而非 xiamomc.morph 作为前缀,其他用法保持不变。
  • 对旧权限节点的支持将在1.5.0移除。
    • 1.5.0 预计会随1.22冬季更新发布

我们建议将ProtocolLib更新到5.3.0,你可以在这里下载到。

新功能

  • 伪装动作的ChestUI选择界面
  • 添加了变形工具
    • 并替代了原本的技能激活物品
    • 默认情况下变形工具可以通过合成获得,合成方式是羽毛+红石。合成方式和最终产物可以通过recipes.yml配置

    • 使用潜行+RMB可以打开伪装选择界面,潜行+LMB则是取消伪装
    • 伪装时,RMB可以激活技能,LMB可以打开动作选择

    • 你可以通过手持物品执行 /fm make_disguise_tool 指令来让他成为一个变形工具
  • Towny集成
    • 现在可以设定启用Towny的世界中是否允许在野外飞行了
    • 玩家也可以通过 /toggle-town-morph-flight 指令设定自己的城镇是否允许飞行,此指令的权限节点是feathermorph.toggle_town_fly,默认情况下所有城镇内都允许飞行。

    • 默认情况下,玩家满足下面任一条件都可以在允许飞行的城镇里飞行:
      • 玩家是城镇的居民/创立者
      • 玩家受城镇信任
      • 玩家和城镇同属一个国家
      • 玩家的城镇与目标城镇是盟友
    • 注意!由于Folia神秘的传送事件触发条件,这些服务器上可能会存在绕过限制的问题。
      • 目前已知使用原版的传送指令不会触发事件,所以尽可能不要使用此指令传送别人

Bug修复

  • 从TAB隐藏某一玩家的数据包也被发送给了被隐藏的玩家
    • 导致被隐藏的玩家的客户端不显示他们的皮肤
  • 盔甲架伪装不会正确呈现源实体的Pose数据
  • 苦力怕伪装没有高压变体

其他

  • 更换权限前缀
    • 权限节点现在从 xiamomc.morph.XXX 变成了 feathermorph.XXX
  • 更换包名
    • 软件包名从 xiamomc.morph.XXX 变成了 xyz.nifeather.morph.XXX

  • 调整技能配置和玩家数据的存储方式
    • 技能配置现在将分散在skills目录中,存储为<namespace>/<id>.json。
      • 例如,minecraft:sheep的技能配置就存在skills/minecraft/sheep.json中。
    • 玩家配置现存放在playerdata目录下,存储为<UUID>.json
    • 原有的data.json和skills.json将被重命名为data.json.old和skills.json.old
  • 玩家数据批处理
    • 插件中对玩家数据的请求将以一定时间为间隔,分批进行处理,以缓解出现大量请求时被上游服务器以 429 Too Many Requests 拒绝的问题
  • 监守者伪装现在会在掘地动画播放完毕后隐身
  • 移除TAB集成
    • 现在已经不需要了

新功能​

  • !!!实验性!!! 允许从TAB列表中隐藏伪装的玩家
  • !!!实验性!!! 允许在TAB列表中显示玩家伪装

其他​

  • 移除了推荐玩家使用客户端模组的消息
  • 允许1.21服务器加载插件
    • 话虽如此,我们仍然建议你更换1.21.1服务端,因为1.21已经不被Paper支持,我们也将最新的1.21.1 API作为开发目标
  • 调整了伪装选择界面的一些图标
  • 伪装选择界面在打开和翻页时会播放音效了
  • 伪装的虚拟实体现在将有更具体的UUID生成规则
    • 但是客户端仍然不太可能反推出来,只要他们获取不到插件配置

新功能​

  • 实现了伪装选择的背包界面
    • 直接使用/morph指令(不带参数)即可打开!
    • 要查看此内容,我们需要您同意设置第三方 cookie。
      有关更多详细信息,请参阅我们的 cookie 页面
  • 允许单独设定是否可以在某个世界的水/岩浆中飞行

Bug修复​

  • ServerSetEquipCommand没有正确构建客户端指令
    • 并导致客户端看不到伪装的装备

其他​

  • 现在取消伪装时也会播放音效了
  • 避免重复修改同一生物的AI
    • 我不知道为什么,但这就是发生了,有些被修改过AI的生物又被服务器送给了插件

新功能​

伪装动作

或者叫伪装表情/动画

你可以通过客户端模组或者 /play-action 使用动作.

伪装动作的权限节点是 xiamomc.morph.emote.<伪装ID>.<动作ID>

  • 你可以通过 /play-action 指令查看动作ID.
  • 例如,悦灵跳舞的动作权限是 xiamomc.morph.emote.minecraft.allay.dance
  • 玩家伪装的权限节点是 xiamomc.morph.emote.player.all.<动作ID>
目前伪装动作只有视觉效果,不会和环境产生互动.

1.2.1包含了以下这些动作:

伪装动作
悦灵跳舞
监守者咆哮、嗅探、掘地、出现
犰狳蜷缩
躺下、坐下
狐狸睡觉、坐下
青蛙伸舌头(开吃)
熊猫坐下
猪灵跳舞
玩家趴下、躺下
河豚膨胀、收缩
潜影贝偷窥、打开
嗅探兽嗅探
坐下

Bug修复​

  • 重载配置后不会恢复伪装

Other​

  • 调整了玩家伪装的技能和天赋权限节点
    • 现在是 xiamomc.morph.skill.player.all.<技能ID>

新功能​

  • 允许调整是否要修改生物AI来使它们对伪装做出反应
    • 请勿在启用此选项时进行热重载
    • 该选项需要重启服务器才能生效!

Bug修复​

  • 天赋和技能不会在玩家加入时刷新

其他​

  • 移除数个内置依赖
    • 并且大幅缩减了插件体积!
  • 尝试优化HUD显示的性能
  • 降低暴露值向客户端同步的频率

新功能​

  • 添加是否允许玩家在流体中飞行的开关
    • 可用于抑制玩家的一些行为,例如:变形成烈焰人在岩浆中挖远古残骸
  • 实现了天赋的权限系统
    • 现在每个伪装下应用的每个天赋都有对应的权限
    • 权限节点为xiamomc.morph.ability.<DisguiseID>.<AbilityID>。
      • 例如,末影人的夜视权限是xiamomc.morph.ability.minecraft.enderman.morph.night_vision
    • 因为权限检查很影响性能,所以你也可以根据需要通过配置文件或者/fm option ability_check_permissions指令来开关它

Bug修复​

  • 史莱姆和岩浆怪伪装的大小在服务端显示不正确
  • 伪装发射的弹射物速度和预期不一样
  • 1.1.0-beta.4后一些生物不会按预期远离未伪装的玩家

其他​

  • 更新至1.21
我猜我们离1.21正式版不远了?

Bug修复​

  • 盔甲架伪装的手臂在客户端和服务端之间显示不一样

其他​

  • 只同步我们需要同步的属性

Bug修复​

  • 羊驼伪装会导致网络协议错误
  • 史莱姆和岩浆怪伪装的大小在服务端显示不正确
  • 禁用碰撞箱修改时史莱姆和岩浆怪伪装始终为固定的大小
  • 玩家伪装在玩家离线时收到GameProfile仍会尝试生成虚拟实体

其他​

  • 更新至1.21
  • 避免发送无用的数据包
新特性
  • 马匹伪装现可使玩家踏上一格高的方块
Bug修复
  • 狼的变种没有同步到客户端
  • 青蛙变种写入的类型不正确
  • 交互模拟没有正确处理方块类型
⭐ 新功能
  • 初步支持多个后端同时工作
    • 因为牵扯到了一些核心组件,所以我决定先暂时叫他“初步支持”。
  • 初步ModelEngine4支持
后退
顶部 底部