战斗与技能
宠物文件写了 combat.enabled: true(默认)的宠物会帮主人打架。伤害、攻速、攻击距离都在 stats,可以随等级成长,见 宠物文件。
四种战斗方式
| 方式 | 指令 | 会打谁 |
|---|---|---|
| 协助 | /cp mode assist | 主人最近 8 秒内正在打的目标 |
| 防卫(默认) | /cp mode defend | 协助的目标,加上最近 8 秒内攻击主人的生物 |
| 主动 | /cp mode aggressive | 防卫的目标,加上附近的怪物(combat.aggressive-range 格内) |
| 被动 | /cp mode passive | 不攻击 |
- 每只宠物的战斗方式各自记住;新宠物用
config.yml的combat.default-mode。 - 也可以在宠物菜单的「战斗」按钮切换(左键下一个、右键上一个)。
- 指令后面可以加宠物名字,指定要改哪一只:
/cp mode aggressive 小狼。 - 中文也可以:
/cp mode 主动(协助、防卫、主动、被动)。
伤害算谁的
combat.damage-as-owner: true(默认)时,宠物造成的伤害算主人打的:
- 怪物死亡会掉经验,任务插件会算成主人的击杀。
- 领地 / 区域保护照常生效:主人不能打的地方,宠物也打不了。
关闭时伤害算宠物自己的。无论哪一种,宠物打死的生物都会给宠物经验,见 等级与进化。
不会打的目标
宠物一律不打:
- 主人自己、其他宠物(也包括自己的其他宠物)、名牌与盔甲架。
- 带有 NPC 标记的实体(Citizens 等 NPC 插件、商店 NPC)。
- 别人驯服的动物(
combat.pvp: true时才可以)、自己驯服的动物。 - 无敌状态的生物、不在同一个世界的生物。
config.yml的combat.ignore列出的生物,默认VILLAGER、WANDERING_TRADER、IRON_GOLEM、SNOW_GOLEM、ALLAY。
打玩家
默认宠物不会打玩家。combat.pvp: true 而且那个世界开着 PVP 时,宠物只会打:
- 最近 10 秒内先攻击主人的玩家,或
- 最近 10 秒内主人正在打的玩家。
创造模式与旁观者模式的玩家不会被打。
追击范围
| 设置 | 说明 |
|---|---|
宠物文件 combat.chase-range | 目标离主人超过这个距离就不追(默认 16 格);超过 chase-range + 6 格时放弃目标 |
config.yml 的 combat.aggressive-range | 主动模式寻找怪物的范围(默认 10 格) |
stats.attack-range | 离目标多近才出手 |
stats.attack-speed | 每秒攻击几次 |
主动模式会找的「怪物」:所有敌对怪物,加上史莱姆、幻翼、恶魂、潜影贝。
MythicMobs 技能
装了 MythicMobs 时,宠物可以在不同的时机施放技能,施放者是宠物:
combat:
enabled: true
skills:
- skill: FoxBite # MythicMobs 技能名称
trigger: attack # 什么时候放
target: target # 对谁放
cooldown: 3 # 冷却(秒)
chance: 0.5 # 机率(0~1)
- skill: FoxHeal
trigger: timer
target: owner
cooldown: 10
触发时机 trigger
| trigger | 什么时候 | target: target 指的是 |
|---|---|---|
attack(默认) | 宠物每次出手攻击时(先放技能再造成普通伤害) | 被攻击的目标 |
hurt | 主人受到攻击时 | 攻击主人的生物 |
timer | 每秒检查一次(用 cooldown 控制间隔) | 目前的目标;没有目标时不放 |
summon | 宠物被召唤出来时 | 主人 |
kill | 宠物打死目标时 | 被打死的目标 |
despawn | 宠物被收回时(配合 despawn-delay 播放消失动画) | 主人 |
levelup |