传奇里“脚本释放技能”分两码事:一类是客户端/挂机宏让角色自动按技能键,另一类是服务端脚本(QF、QFunction、QM)里强制角色或英雄施法。MAX引擎靠近GOM/GEE/翎风体系,但命令和支持度要看具体内核版本,下面把常见写法和踩坑一次说清。
一、先确认你用的是哪种“释放”
1. 挂机宏/按键脚本:模拟按F1-F8,本质是“帮手点技能栏”,前提是技能已拖到对应快捷键、有蓝、没CD。
写法依赖客户端宏,不进M2脚本。
2. 服务端触发脚本:在QFunction-0.txt里写,攻击/被击/登录时自动施法,用专用命令,不依赖手点。
二、服务端释放技能核心命令
不同插件/引擎命令名不一样,MAX系常见这三套:
1. USESKILL(简单但弱)
格式:
USESKILL 技能名称
或
USESKILL 技能ID
示例:
ACT
USESKILL 灵魂火符
USESKILL 烈火剑法
特点:只“触发技能按钮”,和玩家手点等价。必须已学该技能、有蓝、不在CD、不在安全区限制。没学技能或蓝不够就毫无反应。
2. ReleaseMagic / ReleaseMagicEX(GOM/GEE/翎风系常用)
ReleaseMagic 带施法动作,ReleaseMagicEX 可无动作。
标准参数:
ReleaseMagicEX 技能ID 强化(0/1) 技能等级 目标(1攻击对象/2自身) [算CD(0/1)] [伤害触发(0/1)]
示例(物理攻击触发烈火):
[@Attack]
IF
CHECKJOB 1
CHECKMAGIC 26
CHECKMP >= 20
ACT
ReleaseMagicEX 26 0 3 1
说明:
26=烈火剑法ID,0普通,3级,打当前攻击目标。
法师火墙、雷电、冰咆哮同理换ID:雷电11、火墙22、冰咆哮33、流星火雨58。
道士:火符13、噬血57、召唤神兽30、月灵55。
3. ESP插件系(部分MAX端带了ESP)
M.ESPReleaseMagic 技能ID 强化 等级 特效开关 目标类型 坐标方向
示例:
ACT
M.ESPReleaseMagic 13 0 3 0 1 1
含义:13火符,3级,打攻击目标,同屏播特效。
冰咆哮、纵横剑术这种没自身特效的,特效参数填0,不然动作异常。
三、触发标签写哪
脚本放 Mir200\Envir\Market_Def\QFunction-0.txt(或QM对应触发文件)。
常用标签:
[@Login] 上线(自动开盾、开幽灵盾)
[@Attack] 物理平砍/战士技能命中
[@MagicAttack] 放魔法时(Equal 技能ID 判断本次用的什么)
[@Struck] 被物理打
[@MagicStruck] 被魔法打
[@MagSelfFuncX] 自己用技能ID=X时(X填MagicList里的技能ID)
示例:道士攻击时概率补火符
[@Attack]
IF
CHECKJOB 3
RANDOM 30
CHECKTARGETRACE 0
ACT
ReleaseMagicEX 13 0 3 1
示例:法师雷电术触发时追加冰咆哮
[@MagicAttack]
IF
EQUAL <$SKILLID> 11
CHECKMP >= 30
ACT
ReleaseMagicEX 33 0 3 1
四、技能放不出来的常见原因(按概率排)
1. 没开攻击触发开关
GOM系要在QManage登录段加 OPENATTACKCALL,M2选项→功能设置→技能魔法里勾“允许脚本释放/攻击触发”。没开的话脚本根本不跑。
2. 技能ID写错
去 Envir\MagicList.txt 或 Skill.DB 查真实ID,别凭记忆写。烈火有的端是10有的是26,火符有的端是13。
3. 目标参数错
攻击技写2(自身)就放空气;自身BUFF(治愈、盾、幽灵盾)写1会打目标。规则:打怪打人用1,给自己上状态用2。
4. 没学技能/蓝不够/在CD
ReleaseMagicEX 多数版本默认算CD(参数5填0),没CD会失败;USESKILL更严格,必须已学。
5. 触发段写错文件
写进NPC对话脚本(Market_Def普通商人)不会自动触发,必须进QFunction-0.txt或QM触发体系。
6. 持续伤害技能递归
火墙、流星火雨在[@Attack]/[@Struck]里再触发自己,会死循环。火墙类参数“伤害触发”置0,或别在受击里反复放。
7. 没锁目标
释放时当前无攻击对象,ReleaseMagicEX 13 0 3 1 直接跳过。先确认角色正打着怪/人。
8. 客户端补丁缺动画
服务端放了但客户端没Magic.wil补丁,表现就是“没反应或动作鬼畜”。DB对也没用,得补Data补丁。
9. 战士技能用EX无动作失效
ReleaseMagicEX对部分战士技能无效,战士瞬发技改用 ReleaseMagic(带动作)。
五、英雄/宝宝释放
英雄前缀加 H.
H.ReleaseMagicEX 13 0 3 1
分身前缀 FS.
分身释放:
FS.ReleaseMagicEX 33 0 3 1
英雄AI文件(HeroAI.txt)里写[@ComboAttack]控制出招顺序。
六、防连发与CD控制
别每次攻击都无脑放,加大招要用定时器:
[@Attack]
IF
CHECKJOB 1
CHECKMAGIC 26
CHECKMP >= 20
CHECKTIMER 18 1
ACT
ReleaseMagicEX 26 0 3 1
SETTIMER 18 8000
含义:烈火触发后锁8秒再允许下次。
七、上线自动开盾模板(法师)
[@Login]
IF
CHECKJOB 2
CHECKSPELL 魔法盾
CHECKMP >= 50
ACT
USESKILL 魔法盾
;或
ReleaseMagicEX 31 0 3 2
八、MAX端最简自测流程
1. QFunction-0.txt里先写个调试:
[@Attack]
ACT
SENDMSG 5 攻击触发了
进游戏砍一下,没这句话=触发没挂上(查OPENATTACKCALL和文件加载)。
2. 有提示再换真实技能:
ReleaseMagicEX 13 0 3 1
3. 还不行把技能ID、职业判断、蓝量判断逐条注释掉,定位是哪条拦住了。
4. M2开消息日志(ShowMsgLog 1)看脚本执行记录。
九、挂机宏配合(客户端侧)
模拟器/按键精灵里别直接“点坐标”,用:
• 先锁定目标(Ctrl+W)
• 按对应F键:F1火符 F2施毒 F3召唤
• 间隔用技能CD+200ms,别0延迟狂按
• 血低切治愈,蓝低喝药再继续
十、典型完整片段(道士打宝触发)
[@Attack]
IF
CHECKJOB 3
CHECKTARGETRACE 0
RANDOM 40
ACT
ReleaseMagicEX 13 0 3 1
[@MagicAttack]
IF
EQUAL <$SKILLID> 13
CHECKMP >= 10
ACT
ReleaseMagicEX 6 0 3 1
[@Login]
IF
CHECKJOB 3
ACT
USESKILL 幽灵盾
DELAY 800
USESKILL 神圣战甲术
总结:先分清USESKILL和ReleaseMagicEX;触发写QFunction;ID、目标参数、CD、开关、补丁五样全对,技能才出得来。战士带动作、法师道士可用无动作,火墙类别递归,英雄加H.前缀。调试从SENDMSG开始,比瞎改参数快十倍。
传奇脚本释放技能失效排查与正确写法 攻击触发自动放符放烈火实战
来源:
作者:
点击:

