EliteScript
EliteScript 是 MagmaGuy 插件的综合脚本系统,提供高级自定义选项,用于为 Minecraft 中的 Boss 和其他实体创建动态行为。
概述
EliteScript 允许服务器管理员为自定义 Boss 和生物创建复杂的事件驱动行为。脚本系统建立在五个核心组件之上:
- Events:启动脚本执行的触发器(伤害、生成、死亡等)
- Conditions:执行动作必须满足的条件
- Actions:要执行的行为(伤害、传送、生成粒子等)
- Targets:动作影响的实体或位置
- Zones:世界中用于定位和检测的定义区域
- Cooldowns:防止脚本频繁触发的时间限制
Elite Scripts 可以作为独立的能力文件添加,也可以直接添加到自定义 Boss 配置文件中。
快速入门示例
以下是一个简单的 EliteScript,当 Boss 受到伤害时会对玩家施放闪电:
eliteScript:
LightningStrike:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: STRIKE_LIGHTNING
Target:
targetType: DIRECT_TARGET
repeatEvery: 20
times: 3
Cooldowns:
local: 60
global: 20
此脚本在玩家对 Boss 造成伤害时触发,然后对玩家施放 3 次闪电(每秒一次),冷却时间为 60 刻后才能再次触发。
脚本组件
EliteScript 通过其组件系统提供广泛的自定义功能。有关每个组件的详细信息,请参阅以下页面:
核心组件
- Events - 13 种事件类型,包括伤害、死亡、生成、战斗和基于区域的触发器
- Actions - 35 种动作类型,用于创建复杂行为
- Targets - 17 种目标类型,用于选择实体和位置
- Conditions - 具有多种检查类型的过滤和阻止条件
- Zones - 8 种区域形状(球体、圆柱体、长方体、射线、锥体等)
- Cooldowns - 局部和全局冷却系统
- 相对向量 - 高级定位和移动
常见用例
EliteScript 常用于:
- 阶段制 Boss 战:不同生命值百分比下的不同攻击模式
- 竞技场机制:特定区域中基于区域的伤害、增益或生成
- 自定义攻击:独特的粒子效果、投射物和范围攻击
- 环境危害:周期性闪电、坠落方块或火焰
- 互动机制:传送、生物生成和世界修改
- 玩家通信:消息、标题、动作栏和 Boss 栏
- 条件行为:基于玩家数量、位置或 Boss 状态的不同动作
实现
脚本可以通过两种方式实现:
- 能力文件:在
~/plugins/EliteMobs/powers/中创建独立的.yml文件 - 自定义 Boss 文件:直接在自定义 Boss 配置中添加
eliteScript:部分
有关创建能力和自定义 Boss 的详细说明,请参阅:
性能注意事项
创建脚本时,请牢记以下最佳实践:
- 使用冷却时间来防止快速触发脚本导致的性能问题
- 基于区域的事件(ZoneEnterEvent、ZoneLeaveEvent)计算成本较高——使用小区域和适当的冷却时间
- 使用过滤条件来减少不必要的检查
- 在部署到生产服务器之前彻底测试脚本
后续步骤
要开始创建您自己的 EliteScripts:
