Skip to content

配置说明 ​

LyGalaxyLevel 的配置由主配置、等级节点模板和怪物经验配置组成。主配置文件为 config.yml,等级节点模板位于 template/,怪物经验配置位于 mobExp/。

配置文件 ​

文件 / 目录用途
config.yml属性插件、自动保存、数据库、怪物经验兼容、原版经验同步和经验计算设置。
template/*.yml等级节点、升级经验、升级指令、升级条件、经验瓶和等级称号配置。
mobExp/*.yml怪物经验、条件和经验节点配置。

修改数据库开关、属性插件和原版经验同步等相关配置后,需要重启服务器才能生效。配置文件中的布尔值使用 true 或 false。

config.yml ​

属性插件 ​

attribute-plugin 用于指定等级称号属性所使用的属性插件。可选值如下:

配置项可选值
attribute-pluginAttributePlus、SX-Attribute2、SX-Attribute3、ItemLoreOrigin、AttributeCompatibleAPI、AttributeSystem

未使用属性插件时可以留空:

yaml
attribute-plugin: ''

基础设置 ​

配置项说明
auto-save是否启用加强型自动保存。启用后会检测玩家数据是否发生变动,并自动保存。
auto-save-interval自动保存检测间隔,单位为秒。默认值为 3。
time-format全服经验倍率到期时间的显示格式。
only-check-customnpc-name怪物掉落经验是否只检测 CustomNPC 怪物名。
anti-enchant是否禁止使用原版附魔系统。原版附魔会扣除原版等级和经验。
sync-minecraft-exp-bra同步到原版经验条的等级节点 ID。留空或节点不存在时不同步。
addexp-command-message-enable使用增加经验指令时是否发送提示消息。

示例:

yaml
auto-save: true
auto-save-interval: 3
time-format: 'MM月dd日 HH时mm分ss秒'
only-check-customnpc-name: false
anti-enchant: true
sync-minecraft-exp-bra: 'default'
addexp-command-message-enable: true

MySQL 数据库 ​

mysql.enable 用于控制是否启用 MySQL 存储。切换数据库开关后需要重启服务器。

MySQL 前置要求

启用 MySQL 存储前,必须安装 LyMySQLCore,并确认 LyMySQLCore 已成功连接数据库。未加载 LyMySQLCore 或数据库连接失败时,本插件依赖 MySQL 的数据读取、保存、同步及相关记录不会生效。

配置项说明
mysql.enable是否启用 MySQL 存储。默认值为 false。
mysql.databasename数据库名称。
mysql.username数据库账号。
mysql.password数据库密码。
mysql.port数据库端口。默认值为 3306。
mysql.ip数据库地址。默认值为 127.0.0.1。

示例:

yaml
mysql:
  enable: false
  databasename: mc2
  username: mc2
  password: mc1234
  port: 3306
  ip: 127.0.0.1

MythicMobs 掉落经验兼容 ​

mythic-drops-exp-enable 用于启用 MythicMobs 的 drops 内经验格式兼容,默认值为 false。

启用后,可以在 MythicMobs 的掉落配置中使用以下格式:

yaml
drops:
  - 'lexp 123-578'
  - 'lexp 789'
  - 'lexp 789 牛牛等级'
格式说明
lexp 123-578在经验范围内随机掉落经验。
lexp 789掉落固定经验值。
lexp 789 牛牛等级向指定等级节点掉落固定经验值。

经验加成公式 ​

配置项说明
exp-addition-formula计算玩家经验加成和全服经验加成的组合公式。
exp-formula根据基础经验和最终加成计算实际获得经验的公式。

配置中的变量含义如下:

变量说明
{player_addition}玩家经验加成。
{server_addition}全服经验加成。
{exp}本次计算使用的基础经验。
{addition}exp-addition-formula 计算出的经验加成结果。

默认配置如下:

yaml
exp-addition-formula: '{player_addition}+{server_addition}'
exp-formula: '{exp}* (1+{addition})'

默认逻辑是先将玩家经验加成与全服经验加成相加,再使用最终公式计算实际经验:{exp} * (1 + {addition})。

template/*.yml ​

每个模板文件代表一个等级节点。节点 ID 必须全局唯一,不能与其他模板中的节点 ID 重复。

节点基础设置 ​

配置项说明
id等级节点 ID,全局不可重复。
exp-addition-placeholder本节点专属经验加成变量。插件会读取变量数值,并将其转换为每次获取经验时的百分比加成;留空时不生效。多个节点可以共用同一个变量。
exp-orb原版经验来源的经验系数。
max-level等级上限。
max-level-can-get-max-exp玩家达到满级后仍可获得的经验上限。设置为 -1 时禁止获得经验。
every-day-max-exp每日可获得的经验上限。设置为 -1 时不限制;每日晚上 0 点刷新。

示例:

yaml
id: 'default'
exp-addition-placeholder: ''
exp-orb: 1
max-level: 5
max-level-can-get-max-exp: -1
every-day-max-exp: -1

消息 ​

message 用于设置等级节点相关提示消息。消息值为字符串列表,可以配置多行消息。

配置项触发时机
message.LEVEL_UP玩家等级提升时。
message.MAX_LEVEL玩家达到满级且无法继续获得经验时。
message.GET_EXP玩家获得经验时。
message.MULTIPLE-EXP-START全服经验倍率开始时。
message.MULTIPLE-EXP-END全服经验倍率结束时。

已确认的消息变量如下:

变量说明
{level}相关等级。
{after}本次获得的经验值。
{addition}本次经验加成。
{valid}当日剩余可获得经验。
{multiple}全服经验倍率。
{time}全服经验倍率到期时间。

示例:

yaml
message:
  LEVEL_UP:
    - '&f[&eLyGalaxyLevel&f] &7你的default节点等级提升至 &e{level}&7'
  MAX_LEVEL:
    - '&f[&eLyGalaxyLevel&f] &7你的default节点已提升至满级, 无法再获得经验!'
  GET_EXP:
    - '&f[&eLyGalaxyLevel&f] &7你获得了&6{after}&7(+{addition})&7点经验, 今日还可获得&6{valid}&7经验.'
  MULTIPLE-EXP-START:
    - '&a已开启default节点全服 &6{multiple}%经验加成 &a持续到 &6{time}'
  MULTIPLE-EXP-END:
    - '&adefault节点全服 &6{multiple}%经验加成 &a已结束'

经验瓶 ​

经验瓶体系通过等级节点单独控制。项目模板注释说明该功能兼容 1.7.10 和 1.12.2。

配置项说明
exp-item-enable是否为当前等级节点启用经验瓶体系。
exp-item.item经验瓶物品,示例格式为 260:0。
exp-item.display-name经验瓶显示名称。
exp-item.lore经验瓶 Lore 列表。

经验瓶可通过指令为指定玩家转换,转换范围为当前等级的 1% 到 100% 经验。经验瓶获得的经验会受到每日经验上限影响。

示例:

yaml
exp-item-enable: false
exp-item:
  item: '260:0'
  display-name: '&6default节点经验瓶'
  lore:
    - ''
    - '&7吸收了{player}的经验转换而成。'
    - '&a右键使用可获得&6{exp}&a点default经验'

经验瓶 Lore 支持以下变量:

变量说明
{player}被转换经验的玩家。
{exp}经验瓶可提供的经验值。

等级称号与属性 ​

level-tag 用于设置玩家达到指定等级后的称号和属性。对应的 PlaceholderAPI 变量格式为 %lgl_等级节点ID_tag%。

配置项说明
level-tag.<等级>.tag玩家达到该等级时使用的称号文本。
level-tag.<等级>.attribute玩家达到该等级时应用的属性列表。属性效果需要先在 config.yml 中配置对应的属性插件。

示例:

yaml
level-tag:
  1:
    tag: '&7初入江湖'
    attribute:
      - '攻击+1'
  3:
    tag: '&a锋芒毕露'
    attribute:
      - '攻击+2'
  5:
    tag: '&b威震天下'
    attribute:
      - '攻击+3'

升级经验 ​

level-exp-set 表示玩家升到目标等级所需的经验。玩家开局默认处于 0 级。

键支持单个等级和等级区间,值支持数字、变量和四则运算。公式中的 {level} 表示目标等级。

yaml
level-exp-set:
  1: '10'
  2-4: '({level}+{level})*1.5'
  5: '({level}+{level})*2'
写法说明
1: '10'设置升到 1 级所需经验为 10。
2-4: '...'为 2 至 4 级使用同一条经验公式。
{level}计算时替换为目标等级。

升级指令 ​

level-up-command 中的指令由控制台调用。支持每级执行,也支持等级区间执行。

配置键说明
level-up-command.every-level每提升一级都会执行的指令列表。
level-up-command.<等级或区间>玩家达到指定等级或等级区间时执行的指令列表。

指令文本支持以下变量:

变量说明
{id}等级节点 ID。
{level}玩家当前达到的等级。
%player_name%玩家名称变量。

示例:

yaml
level-up-command:
  every-level:
    - 'bc %player_name% 的 {id} 等级升到了 {level} 级!'
  1-3:
    - 'bc %player_name% 1-3 级了!'
  4-5:
    - 'bc %player_name% 4-5 级了!'

升级限制 ​

level-up-condition 用于限制玩家升到指定等级。当玩家当前等级达到配置的限制等级且不满足条件时,无法通过方式获取经验,并会在获取经验时发送对应提示。

配置项说明
level-up-condition.<等级>.condition升到指定等级需要满足的条件列表。
level-up-condition.<等级>.message不满足条件时发送的消息列表。

支持的条件类型如下:

条件类型格式说明
papipapi:{占位符表达式}使用 PlaceholderAPI 占位符表达式判断条件。
permissionpermission:{权限节点}玩家必须拥有指定权限。
nopermissionnopermission:{权限节点}玩家不能拥有指定权限。

示例:

yaml
level-up-condition:
  5:
    condition:
      - 'papi:{%vault_eco_balance% >= 100000}'
      - 'nopermission:{lgl.exp.5}'
      - 'permission:{lgl.exp.5}'
    message:
      - '&f[&eLyGalaxyLevel&f] &c由于不满足升至5级的条件, 本次获取经验失败.'

mobExp/*.yml ​

怪物经验配置使用怪物 ID 或怪物名称作为顶层键。若怪物 ID 和怪物名称相同,可能触发两次经验加成。

配置结构 ​

配置项说明
<怪物ID或怪物名称>.condition获得该怪物经验前需要满足的条件列表。
<怪物ID或怪物名称>.exp为不同等级节点设置经验值。
<怪物ID或怪物名称>.exp.<节点ID>指定等级节点获得的经验值。

支持的条件类型与等级节点模板中的升级条件一致:

条件类型格式说明
permissionpermission:{权限节点}玩家必须拥有指定权限。
papipapi:{占位符表达式}使用 PlaceholderAPI 占位符表达式判断条件。

示例:

yaml
离渊大牛马:
  condition:
    - 'permission:{exp.离渊大牛马}'
    - 'papi:{%player_level% >= 0}'
  exp:
    default: 5
    exp2: 10

上例中,怪物满足 离渊大牛马 的匹配规则且玩家满足全部条件时,向 default 节点增加 5 点经验,向 exp2 节点增加 10 点经验。