Skip to content

2.3

AuraSkills 2.3 更新日志

AuraSkills 2.3 为属性与条件系统增加了新的自定义功能。新的属性信息界面会向玩家显示属性与特征等级的计算过程,另外百分比与临时修饰符会以新的方式使用属性。方块条件增设了一种基于技能灵活限制方块破坏的方式。

重大改动

  • 插件所需 Java 版本现为 21 或更高
  • 不再支持 Minecraft 1.18.x 与 1.19.x

新功能

  • 增加了对 1.21.5 的支持
  • 增加了 stat_info 界面
    • 可供玩家浏览属性特征等级计算的方式。
    • 通过点击属性菜单(通过命令 /stats 打开)内的属性物品(玻璃板)进入。
    • 菜单包含标签页设计,默认页面显示属性修饰符。特征修饰符可通过点击右侧选项卡按钮浏览。
    • 每个标签页会显示任意基础值、技能奖励值与自定义修饰符。
  • 增加基于百分比的属性与特征修饰符
    • 修饰符现在有一个决定其生效方式的操作值。
    • add_percent 选项会使得属性等级提升 1+value100
      • 例如,值为 50 的修饰符会使得属性乘以 1.5。
      • 对某一属性所有 add_percent 的值,先叠加后相乘(叠加翻倍)。
    • multiply 选项直接将属性等级乘以该值。
      • 例如,值为 2 的修饰符会使得属性等级乘以 2。
      • 每个 multiply 的值分别计算(叠乘翻倍)。
    • 所有现存修饰符均使用 add 方式,即直接添加至属性基础等级。
      • 所有 add 均先于任意 add_percentmultiply 修饰符的计算。
      • 如下现存命令增加了一个额外的参数:
        • /skills modifier add <玩家名称> <属性名称> <名称> <值> [计算方式] [是否静默] [叠加]
        • /skills trait add <玩家名称> <特征名称> <名称> <值> [计算方式] [是否静默] [叠加]
        • /skills item modifier add <玩家名称> <属性名称> <值> [计算方式] [连带描述]
        • /skills item trait add <玩家名称> <特征名称> <值> [计算方式] [连带描述]
        • /skills armor modifier add <玩家名称> <属性名称> <值> [计算方式] [连带描述]
        • /skills armor trait add <玩家名称> <特征名称> <值> [计算方式] [连带描述]
        • [计算方式] 参数可选,默认为 add,即叠加。
  • 添加了临时修饰符。
    • 临时修饰符会在到期后自动移除。
    • 通过如下命令可为玩家添加临时属性与特征修饰符:
      • /skills modifier addtemp <玩家名称> <属性名称> <名称> <值> <持续时间> [忽略离线] [计算方式] [是否静默] [叠加]
      • /skills trait addtemp <玩家名称> <trait> <名称> <值> <持续时间> [忽略离线] [计算方式] [是否静默] [叠加]
      • <持续时间> 参数格式为 [年]y[月]mo[日]d[时]h[分]m[秒]s
        • 有效的时间长度示例:5s10m 以及 4d2m1s
      • [忽略离线] 参数决定了持续时间是否在玩家离线时仍然流逝(默认为 false)。
  • 添加方块条件。
    • 方块条件可在破坏、放置或收获方面进行限制。
    • 条件可在 config.yml 下的 requirement.blocks.list 处设置
    • 列表内的每个元素都可以有如下键:
      • material - 添加限制的方块名称(必填)
      • allow_break - 是否忽略方块破坏条件(默认为 false)
      • allow_place - 是否忽略方块放置条件(默认为 false)
      • allow_harvest - 是否忽略方块收获条件(默认为 false)
      • 没有设置上述任意选项时,方块无法在未满足条件的情况下被破坏、放置或收获。
      • requirements - 用于设置方块条件的映射列表。其内的每个元素都可以有如下键:
        • type - 条件类型,可为 skill_levelpermissionexcluded_worldstat
        • message - 在条件未满足时发送给玩家的消息。支持 MiniMessage 消息标签与 PlaceholderAPI 变量。
        • 每个类型都有必填的键。缩进等级与 type 相同。
        • skill_level 类型需要玩家至少在某个技能达到指定等级。键:
          • skill - 条件所需技能类型。
          • level - 条件所需技能等级。
        • permission 类型需要玩家拥有某个权限。键:
          • permission - 条件所需权限节点。
        • excluded_world 类型允许设置世界黑名单。值:
          • worlds - 玩家所不能处于的世界名称列表。
        • stat 类型需要玩家属性等级达到指定值。键:
          • stat - 条件所需属性类型。
          • value - 条件所需属性等级。
    • 方块条件系统的全局选项在 requirement.blocks 下:
      • enabled - 是否检查方块条件
      • bypass_in_creative_mode - 创造模式下的玩家是否无视条件限制(默认为 true)。
      • bypass_if_op - OP 是否无视条件限制(默认为 false)。
  • 添加了菜单按钮的额外保护
    • 可通过 config.yml 下的 menus.removal_protection 开启(默认为 false)。
  • 为“眩晕打击”能力添加了 speed_reduction 选项。
  • 为命令描述与更新提醒添加了可翻译的消息文本。
  • 为菜单界面与战利品添加了 item_model 支持。
  • 为技能界面添加了 percent_formatcurrent_xp_format 选项。
  • 为经验来源界面添加了 xp_format 选项。
  • 为小数配置中添加了属性奖励的 format 选项。
  • 添加了对 Nexo 的支持。

改动

  • SQL 中存储的修饰符已从 key_values 表移动至新的修饰符表
    • 已有修饰符会自动迁移
    • 新的 schema_migrations 表存储先前使用的迁移方法。
  • 移除了 Oraxen 支持

漏洞修复

  • 修复了诸如发光的默认物品选项会在更新时保存的问题。
  • 修复了“铁砧耗费减免”不生效的问题。

贡献者

The avatar of contributor named as SnowCutieOwO SnowCutieOwO

页面历史