FateServant - 英灵系统
Fate Servant System Plugin - 英灵系统插件
Dependencies | 依赖
• MythicMobs-4.11.0 - For skill effects | 技能效果
• LibsDisguises-10.0.44 - For servant skins | 英灵外观
• Spigotmc-1.12.2 or Paper-1.12.2
Description | 描述
一个基于 Fate 系列的英灵系统插件,让玩家可以召唤和控制自己的英灵。
A Fate series-inspired servant system plugin that allows players to summon and control their own servants.
Core Features | 核心功能
1. Servant Classes | 英灵职阶
• SABER(剑士)- 强大的近战能力
• ARCHER(弓兵)- 精通远程攻击
• LANCER(枪兵)- 高机动性和穿刺伤害
• RIDER(骑兵)- 优秀的移动能力
• CASTER(魔术师)- 强大的魔法技能
• ASSASSIN(刺客)- 隐匿和突袭能力
• BERSERKER(狂战士)- 极高的攻击力
2. Skill System | 技能系统
• Active Skills(主动技能)
• Passive Skills(被动技能)
• Mana System(魔力系统)
• Cooldown System(冷却系统)
3. AI System | AI系统
• Target Selection(目标选择)
• Combat Behavior(战斗行为)
• Following System(跟随系统)
• Protection System(保护系统)
4. Level System | 等级系统
• Experience Gain(经验获取)
• Attribute Growth(属性成长)
• Level-up Rewards(升级奖励)
MythicMobs-Skills Example
dir=plugins\MythicMobs\Skills\FateSkills.yml
Code (YAML):
# SABER技能
SaberStrike:
Skills
:
- damage
{amount=8
} @target
- effect:particles
{particle=SWEEP_ATTACK;amount=5
} @target
- sound
{sound=ENTITY_PLAYER_ATTACK_SWEEP
} @target
- push
{velocity=0.5
} @target
SaberGuard:
Skills
:
- effect:particles
{particle=BARRIER;amount=15;radius=1
} @self
- potion
{type=DAMAGE_RESISTANCE;duration=60;level=1
} @self
- sound
{sound=BLOCK_ANVIL_LAND
} @self
- heal
{amount=4
} @self
Excalibur:
Skills
:
- damage
{amount=12
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- effect:particles
{particle=CRIT;amount=10
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- potion
{type=BLINDNESS;duration=60;level=1
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
SaberAirSlash:
Skills
:
- effect:particles
{particle=SWEEP_ATTACK;amount=15
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=8
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_PLAYER_ATTACK_SWEEP
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
SaberHeal:
Skills
:
- heal
{amount=10
} @self
- effect:particles
{particle=HEART;amount=10
} @self
- sound
{sound=ENTITY_PLAYER_LEVELUP
} @self
# ARCHER技能
UBW:
Skills
:
- effect:particles
{particle=PORTAL;amount=50;radius=8
} @origin
- projectile
{onTick=UBWTick;onHit=UBWHit;interval=1;velocity=1;heightOffset=1;startYOffset=1
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
UBWTick:
Skills
:
- effect:particles
{particle=CRIT;amount=1
} @origin
UBWHit:
Skills
:
- damage
{amount=15
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- effect:particles
{particle=EXPLOSION_NORMAL
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
ArcherBarrage:
Skills
:
- projectile
{type=ARROW;velocity=2;spread=0.2;amount=5
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_ARROW_SHOOT
} @self
ArcherShield:
Skills
:
- effect:particles
{particle=BARRIER;amount=20;radius=1
} @self
- damage
{amount=0;preventknockback=true
} @trigger
- sound
{sound=BLOCK_ANVIL_LAND
} @self
# LANCER技能
GaeBolg:
Skills
:
- effect:particles
{particle=DRIP_LAVA;amount=20
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=25;ignorearmor=true
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_PLAYER_ATTACK_KNOCKBACK
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
LancerThrust:
Skills
:
- damage
{amount=10
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- push
{velocity=1
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- effect:particles
{particle=CRIT;amount=10
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
LancerRevive:
Skills
:
- heal
{amount=20
} @self
- effect:particles
{particle=SPELL_MOB;amount=20
} @self
- potion
{type=REGENERATION;duration=100;level=2
} @self
# RIDER技能
RiderCharge:
Skills
:
- effect:particles
{particle=CLOUD;amount=20
} @self
- dash
{velocity=2
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=15
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_HORSE_GALLOP
} @self
RiderChain:
Skills
:
- pull
{velocity=1.5
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=8
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- effect:particles
{particle=CRIT_MAGIC
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
RiderDrain:
Skills
:
- damage
{amount=5
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- heal
{amount=5
} @self
- effect:particles
{particle=DAMAGE_INDICATOR
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
# CASTER技能
CasterBreak:
Skills
:
- effect:particles
{particle=SPELL_WITCH;amount=30
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- removebuff
{type=
ALL
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=10
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_WITCH_AMBIENT
} @self
CasterBeam:
Skills
:
- projectile
{type=SMALL_FIREBALL;velocity=2;interval=1
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=12
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- effect:particles
{particle=EXPLOSION_NORMAL
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
CasterHeal:
Skills
:
- heal
{amount=15
} @self
- potion
{type=ABSORPTION;duration=200;level=1
} @self
- effect:particles
{particle=SPELL;amount=20
} @self
# ASSASSIN技能
AssassinInstant:
Skills
:
- effect:particles
{particle=SMOKE_NORMAL;amount=20
} @self
- teleport
{spread=0
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=20
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_ENDERMEN_TELEPORT
} @self
AssassinStrike:
Skills
:
- damage
{amount=12
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- effect:particles
{particle=CRIT;amount=10
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- potion
{type=BLINDNESS;duration=60;level=1
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
AssassinVanish:
Skills
:
- potion
{type=INVISIBILITY;duration=100;level=1
} @self
- effect:particles
{particle=SMOKE_NORMAL;amount=20
} @self
- heal
{amount=5
} @self
# BERSERKER技能
BerserkerGodHand:
Skills
:
- effect:particles
{particle=EXPLOSION_HUGE;amount=1
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- damage
{amount=30;ignorearmor=true
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- push
{velocity=3
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_GENERIC_EXPLODE
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
BerserkerSlash:
Skills
:
- damage
{amount=15
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- effect:particles
{particle=SWEEP_ATTACK
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
- sound
{sound=ENTITY_PLAYER_ATTACK_STRONG
} @EIC
{a=120;r=4;rot=0;ignore=animals,armorstand
}
BerserkerRage:
Skills
:
- potion
{type=INCREASE_DAMAGE;duration=100;level=2
} @self
- potion
{type=DAMAGE_RESISTANCE;duration=100;level=1
} @self
- effect:particles
{particle=VILLAGER_ANGRY;amount=20
} @self
Configuration | 配置文件
Code (YAML):
servant
:
# 职阶基础属性配置
class:
SABER:
health
: 25.0
# 基础生命值
damage
: 8.0
# 基础攻击力
speed
: 0.35
# 基础移动速度
combat_speed
: 0.4
# 战斗时的移动速度
follow_speed
: 0.3
# 跟随主人时的移动速度
color
:
"§b"
# 名字显示颜色(天蓝色)
skin:
name
:
"SenjiMuramasa"
# 皮肤名称
signature
:
""
# 皮肤签名(留空使用默认)
texture
:
""
# 皮肤材质(留空使用默认)
equipment
:
# 装备设置
main_hand
:
"DIAMOND_SWORD"
# 主手武器
off_hand
:
"AIR"
# 副手物品
regen
: 1.0
# 每5秒恢复的生命值
skills
:
# 技能系统
mana
:
# 魔法值设置
max
: 100.0
# 最大魔法值
regen
: 5.0
# 每5秒恢复魔法值
passive
:
# 被动技能触发几率
attack_chance
: 0.2
# 攻击时触发几率(20%)
hurt_chance
: 0.3
# 受伤时触发几率(30%)
list
:
# 技能列表
excalibur:
name
:
"Excalibur"
mythic_skill
:
"Excalibur"
mana_cost
: 1.0
cooldown
: 1.0
trigger_types
:
[ACTIVE
]
trigger_chance
: 1.0
strike:
name
:
"Strike"
mythic_skill
:
"SaberStrike"
mana_cost
: 20.0
cooldown
: 5.0
trigger_types
:
[ATTACK
]
trigger_chance
: 0.3
guard:
name
:
"Guard"
mythic_skill
:
"SaberGuard"
mana_cost
: 30.0
cooldown
: 8.0
trigger_types
:
[HURT
]
trigger_chance
: 0.4
ARCHER:
health
: 20.0
damage
: 6.0
speed
: 0.3
combat_speed
: 0.35
follow_speed
: 0.28
color
:
"§a"
skin:
name
:
"Emiya"
signature
:
""
texture
:
""
equipment:
main_hand
:
"BOW"
off_hand
:
"AIR"
regen
: 0.8
skills:
mana:
max
: 80.0
regen
: 4.0
passive:
attack_chance
: 0.25
hurt_chance
: 0.2
list:
- name
:
"UnlimitedBladeWorks"
mythic_skill
:
"UBW"
mana_cost
: 80.0
cooldown
: 60.0
trigger_types
:
[ACTIVE
]
- name
:
"ProjectileBarrage"
mythic_skill
:
"ArcherBarrage"
cooldown
: 20.0
trigger_types
:
[ATTACK
]
trigger_chance
: 0.35
- name
:
"RhoAias"
mythic_skill
:
"ArcherShield"
cooldown
: 30.0
trigger_types
:
[HURT
]
trigger_chance
: 0.3
LANCER:
health
: 22.0
damage
: 7.0
speed
: 0.4
combat_speed
: 0.45
follow_speed
: 0.35
color
:
"§9"
skin:
name
:
"CuChulainn"
signature
:
""
texture
:
""
equipment:
main_hand
:
"STICK"
# 作为长枪的替代
off_hand
:
"AIR"
regen
: 1.2
skills:
mana:
max
: 70.0
regen
: 3.5
passive:
attack_chance
: 0.3
hurt_chance
: 0.2
list:
- name
:
"GaeBolg"
mythic_skill
:
"GaeBolg"
mana_cost
: 60.0
cooldown
: 45.0
trigger_types
:
[ACTIVE
]
- name
:
"SpearThrust"
mythic_skill
:
"LancerThrust"
cooldown
: 10.0
trigger_types
:
[ATTACK
]
trigger_chance
: 0.4
- name
:
"BattleContinuation"
mythic_skill
:
"LancerRevive"
cooldown
: 180.0
trigger_types
:
[HURT
]
trigger_chance
: 0.15
RIDER:
health
: 20.0
damage
: 6.0
speed
: 0.45
combat_speed
: 0.5
follow_speed
: 0.4
color
:
"§5"
skin:
name
:
"Medusa"
signature
:
""
texture
:
""
equipment:
main_hand
:
"IRON_SWORD"
off_hand
:
"AIR"
regen
: 1.0
skills:
mana:
max
: 75.0
regen
: 4.0
passive:
attack_chance
: 0.25
hurt_chance
: 0.25
list:
- name
:
"Bellerophon"
mythic_skill
:
"RiderCharge"
mana_cost
: 70.0
cooldown
: 40.0
trigger_types
:
[ACTIVE
]
- name
:
"ChainStrike"
mythic_skill
:
"RiderChain"
cooldown
: 15.0
trigger_types
:
[ATTACK
]
trigger_chance
: 0.3
- name
:
"BloodFort"
mythic_skill
:
"RiderDrain"
cooldown
: 25.0
trigger_types
:
[HURT
]
trigger_chance
: 0.25
CASTER:
health
: 18.0
damage
: 5.0
speed
: 0.25
combat_speed
: 0.3
follow_speed
: 0.25
color
:
"§d"
skin:
name
:
"Medea"
signature
:
""
texture
:
""
equipment:
main_hand
:
"BLAZE_ROD"
# 作为法杖的替代
off_hand
:
"AIR"
regen
: 1.5
skills:
mana:
max
: 120.0
regen
: 6.0
passive:
attack_chance
: 0.35
hurt_chance
: 0.2
list:
- name
:
"RuleBreaker"
mythic_skill
:
"CasterBreak"
mana_cost
: 40.0
cooldown
: 25.0
trigger_types
:
[ACTIVE
]
- name
:
"RainOfLight"
mythic_skill
:
"CasterBeam"
cooldown
: 15.0
trigger_types
:
[ATTACK
]
trigger_chance
: 0.4
- name
:
"HighSpeedDivineWords"
mythic_skill
:
"CasterHeal"
cooldown
: 20.0
trigger_types
:
[HURT
]
trigger_chance
: 0.3
ASSASSIN:
health
: 18.0
damage
: 9.0
speed
: 0.4
combat_speed
: 0.5
follow_speed
: 0.35
color
:
"§8"
skin:
name
:
"Hassan"
signature
:
""
texture
:
""
equipment:
main_hand
:
"IRON_SWORD"
off_hand
:
"AIR"
regen
: 0.8
skills:
mana:
max
: 60.0
regen
: 3.0
passive:
attack_chance
: 0.4
hurt_chance
: 0.3
list:
- name
:
"ZabaniyaDelusionalHeartbeat"
mythic_skill
:
"AssassinInstant"
mana_cost
: 50.0
cooldown
: 35.0
trigger_types
:
[ACTIVE
]
- name
:
"DirectionlessStrike"
mythic_skill
:
"AssassinStrike"
cooldown
: 8.0
trigger_types
:
[ATTACK
]
trigger_chance
: 0.45
- name
:
"PresenceConcealment"
mythic_skill
:
"AssassinVanish"
cooldown
: 20.0
trigger_types
:
[HURT
]
trigger_chance
: 0.35
BERSERKER:
health
: 30.0
damage
: 12.0
speed
: 0.3
combat_speed
: 0.4
follow_speed
: 0.25
color
:
"§c"
skin:
name
:
"Heracles"
signature
:
""
texture
:
""
equipment:
main_hand
:
"DIAMOND_AXE"
off_hand
:
"AIR"
regen
: 2.0
skills:
mana:
max
: 50.0
regen
: 2.5
passive:
attack_chance
: 0.3
hurt_chance
: 0.4
list:
- name
:
"GodHand"
mythic_skill
:
"BerserkerGodHand"
mana_cost
: 100.0
cooldown
: 60.0
trigger_types
:
[ACTIVE
]
- name
:
"NineLives"
mythic_skill
:
"BerserkerSlash"
cooldown
: 25.0
trigger_types
:
[ATTACK
]
trigger_chance
: 0.25
- name
:
"MadEnhancement"
mythic_skill
:
"BerserkerRage"
cooldown
: 30.0
trigger_types
:
[HURT
]
trigger_chance
: 0.4
# 等级系统配置
level_up
:
# 每级增加的属性
health_increase
: 2.0
# 每级增加生命值
damage_increase
: 1.0
# 每级增加攻击力
speed_increase
: 0.02
# 每级增加移动速度
# 升级经验配置
exp:
monster_kill
: 10
# 击杀怪物获得经验
player_kill
: 50
# 击杀玩家获得经验
base_exp
: 100
# 升级所需基础经验(实际经验=等级*基础经验)
# 跟随设置
follow:
distance
: 3.0
# 开始跟随的距离
speed
: 0.5
# 跟随速度
check_interval
: 20
# 检查间隔(ticks)
# 显示设置
display
:
# 可用变量: %class%(职阶), %level%(等级), %owner%(主人), %health%(当前血量), %maxhealth%(最大血量)
name_format
:
"%class% §f[Lv.%level%] §7%owner%'s Servant §c(%health%/%maxhealth%)"
health_format
:
"%.1f"
# 血量显示格式(保留一位小数)
# 移动速度设置
movement:
default_speed
: 0.3
# 默认移动速度
combat_multiplier
: 1.2
# 战斗时速度倍率
follow:
min_distance
: 3.0
# 开始跟随的最小距离
max_distance
: 15.0
# 最大跟随距离
speed
: 0.5
# 跟随速度
check_interval
: 20
# 检查间隔(ticks)
teleport_distance
: 30.0
# 传送到主人身边的距离阈值
# 恢复设置
regeneration:
interval
: 100
# 恢复间隔(ticks), 100 = 5秒
default
: 1.0
# 默认每次恢复量
# 调试设置
debug:
enabled
: false
# 默认关闭调试模式
console:
skill_trigger
: true
# 显示技能触发相关信息
skill_cooldown
: true
# 显示技能冷却相关信息
skill_mana
: true
# 显示魔力消耗相关信息
target_selection
: true
# 显示目标选择相关信息
combat_state
: true
# 显示战斗状态变化信息
log_level
: INFO
# 日志级别(INFO/DEBUG/WARNING/ERROR)
# 消息提示设置
messages:
skill
:
# 技能触发提示信息 (可用变量: %servant%, %skill%, %target%)
trigger
:
"§a你的英灵 %servant% §a使用了技能 §6%skill%"
trigger_with_target
:
"§a你的英灵 %servant% §a对 §e%target% §a使用了技能 §6%skill%"
death
:
# 英灵死亡提示信息 (可用变量: %servant%, %killer%)
normal
:
"§c你的英灵 %servant% §c阵亡了"
by_entity
:
"§c你的英灵 %servant% §c被 §4%killer% §c击败了"
Commands | 命令系统
• /fate help - Show help message | 显示帮助信息
• /fate summon <class> - Summon a servant | 召唤英灵
• /fate reload - Reload configuration | 重载配置
• /fate list - List all servants | 列出所有英灵
Permissions | 权限系统
• fateservant.summon - Allow summoning servants | 允许召唤英灵
• fateservant.admin - Admin commands access | 管理员命令权限
• fateservant.debug - Debug commands access | 调试命令权限
Features Details | 功能细节
Servant Management | 英灵管理
• Each player can have one servant | 每个玩家只能拥有一个英灵
• Servants follow their master | 英灵会跟随主人
• Servants protect their master | 英灵会保护主人
• Servants cannot harm their master | 英灵不能伤害主人
Combat System | 战斗系统
• Automatic target selection | 自动选择目标
• Skill triggering system | 技能触发系统
• Damage calculation | 伤害计算
• Combat status effects | 战斗状态效果
Skill System | 技能系统
• Active skills with mana cost | 主动技能消耗魔力
• Passive skills with trigger chance | 被动技能触发机率
• Cooldown management | 冷却管理
• Skill effects via MythicMobs | 通过MythicMobs实现技能效果
Notification System | 提示系统
• Skill activation notifications | 技能触发提示
• Servant death notifications | 英灵死亡提示
• Level-up notifications | 升级提示
• Combat status notifications | 战斗状态提示
Installation | 安装方法
1. Place the plugin in plugins folder | 将插件放入plugins文件夹
2. Install required dependencies | 安装所需依赖
3. Start the server | 启动服务器
4. Configure the plugin | 配置插件
5. Reload or restart | 重载或重启
Support & Feedback | 支持与反馈
For support or feedback, please visit our GitHub repository or contact us through SpigotMC.
如需支持或反馈,请访问我们的GitHub仓库或通过SpigotMC联系我们。