Skip to content

配置说明

LyRide 的全局配置位于 config.yml,坐骑配置位于 ride/ 目录。插件重载时会重新读取全局配置和 ride/ 目录下的 YAML 文件,并结束当前正在进行的骑乘。

配置文件

文件 / 目录用途
config.yml属性插件、移速加成、召唤按键、坐骑槽位、世界限制、冷却和消息
ride/*.yml坐骑类型、速度、跳跃、飞行、伤害、动作和触发技能

ride/ 目录下的 YAML 文件会递归读取。示例坐骑文件由插件在重载时重新保存,修改该示例文件前请注意文件中的重置提示。

config.yml

属性插件

yaml
attribute-plugin: ''
配置说明
attribute-plugin骑乘期间给玩家添加属性,以及结束骑乘时移除属性。支持 AttributePlus2AttributePlus3SX-Attribute2SX-Attribute3。留空时不使用这些属性插件。

修改为 SX-Attribute2SX-Attribute3 后需要重启服务器。

移速属性加成

yaml
move-speed-attribute: ''
move-speed-attribute-max: 100
move-speed-formula: '{speed_base}*(1+({speed_attribute}*0.01))'
配置说明
move-speed-attribute通过 PlaceholderAPI 读取玩家移速属性的变量表达式,例如 %ap_attack:min%。留空时属性值按 0 计算。
move-speed-attribute-max移速属性值上限。低于 0 时按 0 处理,默认值为 100
move-speed-formula坐骑最终移动速度计算公式。

公式变量如下:

变量含义
{speed_base}坐骑配置中的基础移动速度,即 ride/*.ymlmove-speed
{speed_attribute}读取到并限制在 0move-speed-attribute-max 范围内的移速属性值。

当公式为空、缺失或计算结果无效时,使用坐骑基础移动速度。

召唤按键和坐骑槽位

yaml
spawn-ride-key: 'KEY_T'
ride-slot: ''
配置说明
spawn-ride-key召唤或结束骑乘使用的按键。按键注册取决于已启用的按键插件。
ride-slot检测坐骑物品的槽位来源和槽位位置。插件会读取该槽位中的物品名称,并与坐骑配置的 match-name 匹配。

ride-slot 支持以下格式:

格式说明
DragonCore#槽位名读取龙核槽位。
GermPlugin#槽位名读取萌芽槽位。
APInventory#分页id#槽位id读取梦星桐背包槽位,槽位 ID 为 053
LyInventory#背包id#类型读取离渊背包槽位。
Origin#MainHand原版主手。
Origin#OffHand原版副手。
Origin#Helmet原版头盔。
Origin#ChestPlate原版胸甲。
Origin#Legging原版护腿。
Origin#Boots原版靴子。
Minecraft#槽位id原版背包槽位,槽位 ID 为 036

按键格式取决于按键来源:

按键来源格式说明
萌芽一般填写 KEY_T 形式的 KeyType 名称。
龙核一般填写 T 形式的键位名。

世界限制和飞行高度

yaml
anti-ride-world:
  - 'antirideworld'

world-fly-limit:
  world: 150
配置说明
anti-ride-world世界名称匹配列表。玩家所在世界名称包含其中任意文本时,禁止开始骑乘。可用于匹配副本世界名称。
world-fly-limit飞行坐骑的世界高度限制。键为世界名称,要求完整匹配;值为允许的最高 Y 轴高度。

world-fly-limit 只影响飞行坐骑的上升高度,不影响陆行坐骑。

骑乘冷却

yaml
riding-cooldown: 5000
配置说明
riding-cooldown开始或结束骑乘后的冷却间隔,单位为毫秒。默认值为 5000。管理员使用 lyzq riding 强制让玩家骑乘时会忽略该冷却。

消息

yaml
message:
  damaged-stop-riding: '&f[&e坐骑&f] 你的坐骑受到致命伤害导致你取消了骑乘.'
  anti-riding: '&f[&e坐骑&f] §c对不起, 当前世界禁止骑乘!'
  start-riding: '&f[&e坐骑&f] §a开始骑乘! 本次坐骑: {ride}'
  end-riding: '&f[&e坐骑&f] §a结束骑乘!'
  riding-cooldown: '&f[&e坐骑&f] §c冷却中, {time}秒后才可以骑乘!'
配置说明
message.damaged-stop-riding坐骑受到伤害并触发结束骑乘时使用的提示。
message.anti-riding当前世界禁止骑乘时使用的提示。
message.start-riding开始骑乘时使用的提示。支持 {ride},会替换为坐骑名称。
message.end-riding结束骑乘时使用的提示。
message.riding-cooldown仍在骑乘冷却期间使用的提示。支持 {time},会替换为剩余秒数,保留一位小数。

消息中的 & 颜色代码会转换为 Minecraft 颜色代码。示例中也可以直接使用 §

ride/*.yml

每个坐骑配置文件对应一个坐骑。坐骑配置会在插件重载时读取,文件中的 id 用于区分坐骑。

基础信息

yaml
id: '示例'
type: 'pig'
match-name: '&6神驹·赤兔'
name: '&6神驹·赤兔'
配置说明
id坐骑唯一 ID。管理员强制骑乘指令使用该 ID。
type原版实体类型。目前支持 pigdragon
match-name坐骑槽位物品名称匹配文本。物品显示名称包含该文本时,判定为对应坐骑。
name坐骑显示名称,也用于替换全局消息中的 {ride}

推荐使用 pig 套用模型。dragon 类型存在朝向表现差异。

移动、跳跃和飞行

yaml
fly: false
move-speed: 0.4
jump-power: 1
jump-tick: 5
jump-count: 2
rise-power: 2

down-power:
  -20: -0.5
  -70: -1

up-power:
  20: 0.5
  70: 1
配置说明
fly是否启用飞行模式。飞行模式和陆行模式使用不同的移动逻辑。
move-speed坐骑基础移动速度,最终速度还会根据全局移速公式计算。
jump-power跳跃或上升力度。陆行模式下会影响跳跃,飞行模式下会参与上升计算。
jump-tick跳跃持续时间,单位为 tick,最低按 1 处理。
jump-count陆行模式最多连续跳跃次数。
rise-power陆行模式自动攀爬高度。仅陆行模式有效。
down-power飞行模式低头时的下降力度映射。仅飞行模式有效。
up-power飞行模式抬头时的上升力度映射。仅飞行模式有效。

down-powerup-power 使用角度到力度的映射:

配置角度范围说明
down-power090玩家视角向下时匹配下降力度。
up-power-900玩家视角向上时匹配上升力度。

映射键使用示例中的角度写法,例如 2070-20-70。插件读取后会转换为内部角度进行判断。

陆行模式下,坐骑会根据 rise-power 检测前方墙体并自动攀爬;飞行模式下,玩家视角和空格输入分别控制水平移动、上升和下降。

骑乘属性和伤害

yaml
riding-attribute:
  - '物理伤害10'

ride-can-damaged: false
ride-or-player-damaged-end-riding: true
player-attack-end-riding: true
配置说明
riding-attribute骑乘期间添加到玩家身上的属性列表。实际生效依赖全局 attribute-plugin 配置及对应属性插件。
ride-can-damaged坐骑是否可以受到伤害。为 false 时,坐骑受到的伤害会被取消。
ride-or-player-damaged-end-riding坐骑或玩家受到伤害时是否结束骑乘。坐骑免疫伤害时,玩家受到伤害仍可触发结束骑乘。
player-attack-end-riding玩家在骑乘期间造成伤害时是否结束骑乘。

当坐骑允许受伤并且受到伤害时,插件会触发坐骑受伤事件;如果同时启用 ride-or-player-damaged-end-riding,则会结束骑乘。

骑乘循环动作

yaml
riding-animation:
  - '动作1:1500'
  - 'delay:2000'
  - '动作2:1200'
配置说明
riding-animation玩家骑乘期间循环播放的动作列表。插件会根据已启用的萌芽或龙核自动选择播放方式。

每一项支持以下格式:

格式说明
动作名播放动作。未填写持续时间时,下一次动作默认间隔 1000 毫秒。
动作名:毫秒播放动作,并以毫秒数作为下一条配置的等待时间。
delay:毫秒不播放动作,仅等待指定毫秒数后继续处理下一项。

循环列表播放到末尾后会从第一项重新开始。技能触发时,循环动作会暂停约 1000 毫秒,恢复后从列表开头重新播放。

触发技能

技能配置位于 event 下,每个子节点代表一个技能配置。技能触发后可以执行 MythicMobs 技能、发送消息、执行指令,以及播放坐骑或玩家动作。

yaml
event:
  骑乘技能示例:
    trigger-type: 'start-riding'
    chance: 0.5
    cooldown: 1000
    mythic-skill: ''
    success-message:
      - '你触发了示例技能'
    fail-message:
      - '你没有触发示例技能'
    success-command:
      - '[console]tell %player_name% 成功时执行这条指令'
    fail-command:
      - '[console]tell %player_name% 失败时执行这条指令'
    ride-action: ''
    player-action: ''

技能配置项

配置默认值说明
event.<技能ID>.trigger-type技能触发条件。使用下表中的触发类型。
event.<技能ID>.chance1触发成功概率,范围为 01
event.<技能ID>.cooldown1000技能冷却时间,单位为毫秒。无论成功或失败都会进入冷却。结束骑乘时会清除本次骑乘实例中的技能冷却。
event.<技能ID>.mythic-skill''触发成功时由玩家释放的 MythicMobs 技能。留空时不释放。
event.<技能ID>.success-message空列表随机判定成功时发送给玩家的消息列表。
event.<技能ID>.fail-message空列表随机判定失败时发送给玩家的消息列表。
event.<技能ID>.success-command空列表随机判定成功时执行的指令列表。
event.<技能ID>.fail-command空列表随机判定失败时执行的指令列表。
event.<技能ID>.ride-action''触发成功时播放的坐骑动作。支持 动作名动作名:毫秒
event.<技能ID>.player-action''触发成功时播放的玩家动作。支持 动作名动作名:毫秒

<技能ID>event 下的配置节点名称,不是额外的变量占位符。每个坐骑可以配置多个技能。

技能触发类型

trigger-type触发时机
start-riding开始骑乘时。
end-riding结束骑乘时。
fly-up飞行坐骑上升时。
fly-down飞行坐骑下降时。
fly-move飞行坐骑直线移动时。
rising陆行坐骑攀爬时。
forward玩家按住前进键移动时。
cease玩家松开前进键并停止移动时。
damaged坐骑受到伤害时。
second骑乘期间每秒检测一次。
right玩家骑乘期间点击右键时。
left玩家骑乘期间点击左键时。

部分移动相关触发条件按事件间隔检测,具体触发频率由坐骑移动逻辑决定;cooldown 仍会限制同一技能的连续触发。

技能指令前缀

技能指令支持以下前缀:

前缀执行身份
[console]以控制台身份执行。
[op]临时给予玩家 OP 后,以玩家身份执行;执行完成后恢复原 OP 状态。
[player]以玩家身份执行。
无前缀默认以玩家身份执行。

指令执行前会处理 PlaceholderAPI 变量,并支持 eval:{表达式}ceil:{表达式}floor:{表达式} 数值表达式。表达式也可以使用 ~格式 指定输出格式。

例如:

yaml
success-command:
  - '[console]give %player_name% diamond eval:{1+1}'
  - '[player]say 当前数值为 ceil:{1.2}'

动作播放格式

ride-actionplayer-action 支持以下格式:

yaml
ride-action: '攻击动作:1000'
player-action: '施法动作:800'
格式说明
动作名播放动作,不主动设置停止时间。
动作名:毫秒播放动作,并在指定时间后停止动作。

动作会根据当前启用的模型插件自动匹配萌芽或龙核。没有对应模型插件时,动作不会按对应方式播放。

配置注意事项

  • type 目前只能填写 pigdragon,其它类型无法创建坐骑实体。
  • 玩家必须处于地面上时才能正常开始骑乘。
  • 玩家传送、切换世界、退出服务器或主动下马时,插件会结束当前骑乘并移除坐骑实体。
  • 打开背包时会清除当前移动输入,使坐骑暂停移动。
  • 玩家骑乘期间的摔落伤害会被取消。
  • 飞行坐骑的最高高度由 world-fly-limit.<世界名> 控制;未配置对应世界时不应用该世界高度限制。
  • attribute-pluginmove-speed-attributemythic-skill 和动作相关配置只有在对应功能插件已安装并正常启用时才会生效。