当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇脚本语法与命令格式全解

热度:
脚本基础结构与注释

传奇脚本以文本文件(.txt)编写,由标签、条件、动作、跳转四大核心组成。标准脚本文件存放在Mir200\Envir\Market_Def\或QuestDiary\目录下。

注释:以;或//开头,引擎不执行,用于说明。

[@main]
#SAY
你好,勇士!;这是对玩家说的话


核心命令与标准格式

1.标签与对话

脚本执行起点,NPC对话框由此触发。

[@main];主标签,NPC对话入口
#SAY;声明开始显示对话
你好,欢迎来到比奇城。\;“\”是换行符
<买东西/@buy>;“<>”内是超链接,@buy是点击后跳转的标签
<离开/@exit>


2.条件判断(#IF)

所有动作执行前,必须通过的条件检测。格式为#IF后紧跟一个或多个条件命令。

#IF
CHECKGOLD1000;检测金币是否≥1000
CHECKLEVEL35;检测等级是否≥35
#ACT;条件满足,则执行此处动作
GIVE金币-1000
GIVE裁决之杖1
#SAY
交易完成!
#ELSESAY;条件不满足,则执行此处
你的金币或等级不足。


3.常用条件命令列表

命令格式功能说明

CHECKLEVEL数字检测人物等级

CHECKGOLD数字检测持有金币

CHECKITEM物品名数量检测背包物品

CHECKJOBWarrior检测职业(Warrior/Wizard/Taoist)

ISONMAP地图编号检测是否在指定地图

RANDOM数字随机数判定(如RANDOM3表示1/3几率)

4.动作执行(#ACT)

条件满足后执行的具体操作,如给物品、传送、改变属性。

#ACT
TAKE金币1000;拿走金币
GIVE回城卷1;给予物品
MAPMOVE0330268;传送:MAPMOVE地图编号X坐标Y坐标
CHANGELEVEL+1;升级


5.变量与跳转

脚本通过变量存储临时数据,并通过跳转构建复杂逻辑。

;设置变量
MOVU0100;将变量U0的值设为100
INCU01;变量U0的值+1

;跳转应用
[@start]
#IF
LARGEU0100;判断U0是否大于100
#ACT
GOTO@success;满足,跳转到@success标签
#ELSESAY
条件不满足。
[@success]
#SAY
你成功了!


进阶:任务脚本实例解析

以下是一个标准的循环杀怪任务脚本:

[@杀怪任务]
#IF
CHECK[310]1;检测任务标志[310]是否为1(表示已接任务)
CHECKKILLCOUNT白野猪010;检测是否已杀10只白野猪
#ACT
SET[311]1;设置任务完成标志[311]为1
GIVE金条1
SENDMSG7任务完成,获得金条。
BREAK
#ELSESAY
你还需要杀死<$OUTPUT(KILLCOUNT(白野猪))>/10只白野猪。


语法要点与常见错误

1.格式严格:#IF、#ACT等关键词必须大写,参数用空格分隔,末尾无符号。
2.标签唯一:同一个脚本文件内,标签名(如@main)不能重复。
3.路径正确:涉及文件调用(如#CALL)时,路径需用双反斜杠\\或正斜杠/。
4.引擎差异:GOM、GEE、BLUE等引擎命令有细微差别,需查阅对应引擎的帮助文档。

掌握“标签触发→条件判断→执行动作→结果反馈”这一基本流程,是编写一切功能脚本的基础。实际应用中,多参考服务端自带的原始脚本是最高效的学习方法。
[顶部]