一个宏命令搞定三个技能位置,鼠标右键点一下就切换,这是我这几年一直在用的召唤宏思路。核心就是靠鼠标按键加修饰键区分不同召唤目标,省得技能栏堆一排图标来回找。
宏代码不复杂,写法是这样的:
#showtooltip
/cast [button:2,mod:shift] 召唤紫罗兰座狼
/cast [button:2,mod:ctrl] 召唤宠物
/cast [button:2] 召唤炽热坐骑
这套写法的关键在button和mod两个判断条件上,button:2认的是鼠标右键,mod后面跟shift或者ctrl是判断你有没有按住对应的修饰键。没按任何修饰键单纯右键点,就走最后一条不带mod的指令,这个顺序不能乱,系统是从上往下匹配,匹配到了就不往下走了。

说下什么情况下这套宏会失效。第一种是你把宏放进了物品栏或者宠物栏而不是技能条,右键点击的判定在不同栏位下响应不一样,有些栏位右键默认是拆分或者查看提示,宏里的button:2根本收不到信号。第二种是坐骑和宠物这类召唤类技能本身在读条,读条没结束你再点,宏会打断前一个再启动新的,看起来像没反应其实是被自己打断了。第三种是战斗状态,部分坐骑不能在战斗中召唤,这不是宏的问题,是技能本身的限制,宏只是个调用壳子,改不了技能自身的判定规则。
自己写的时候踩过的坑
我第一次写这类宏是想把工程学的召唤类道具和坐骑塞一起,结果发现道具类用/use不是/cast,两个指令混着写会报错。后来查了下才明白,坐骑技能走/cast,背包道具走/use,这是两套不同的调用逻辑,不能混用同一个指令去调不同类型的东西。
还有一次是我把shift和ctrl的判断顺序写反了,导致我明明按着ctrl想召唤宠物,结果触发的是shift那条指令。后来才反应过来,如果两个mod条件我写的时候位置搞混,游戏会按代码里写的顺序去匹配,跟我脑子里想的操作逻辑没关系,得照着代码本身的排列去理解。

版本差异这块也得提一句。不同版本对mod修饰键的支持不完全一致,有的版本还能加上alt作为第三个判断条件,扩展成三个mod对应三个召唤目标,加上不带mod的默认项,一个宏最多能塞四种召唤逻辑进去。但这套三修饰键加默认项的写法在部分怀旧服客户端里支持不完整,写了也可能只认前两条,具体能不能用建议先在训练假人那试一下右键各种组合键,别到了副本里才发现宏失灵。
我自己现在用的这套宏放在动作条最外侧一个不起眼的位置,平时打团几个小时下来,可能就召唤坐骑那一下会用到右键组合键,其他时间根本不去点它。有次副本团灭在原地等复活,我随手右键加shift想看看紫罗兰座狼动画,结果宏没反应,才想起来死亡状态下坐骑技能是锁着的,跟宏代码写没写对没关系,是角色状态本身把这个技能锁死了。

宏这东西说到底是个调用工具,前提是技能本身能被触发,宏只负责帮你少点几次鼠标少切几次技能栏,它改变不了游戏本身对战斗状态死亡状态读条状态的限制。搞清楚这层边界,写出来的宏才不会让人觉得莫名其妙不响应。













暂无评论内容