热血传奇服务端脚本通过特定命令控制游戏逻辑,所有指令在NPC、任务、地图等脚本中调用。掌握常用命令是实现自定义功能的基础,以下按功能分类列出核心命令及实际用法。
一、流程控制命令
[@label]:定义跳转标签,如[@main]为默认入口。
IF:条件判断起始,后接检测语句。
ACT:条件成立时执行动作。
ELSEACT:条件不成立时执行动作(部分版本支持)。
break:终止当前脚本执行。
goto@label:无条件跳转至指定标签。
二、角色状态检测命令
CHECKITEM物品名/ID数量:检测背包是否含指定物品。
CHECKGOLD金额:检测金币是否足够。
CHECKLEVEL等级:检测角色等级。
CHECKJOB职业编号:0=战士,1=法师,2=道士。
CHECKMAP地图号:检测当前所在地图编号。
CHECKPKPOINT值:检测PK值是否大于等于指定数。
CHECKHUM地图号XY范围:检测指定区域是否有玩家。
三、角色操作命令
TAKE物品名/ID数量:扣除背包内物品。
GIVE物品名/ID数量:给予物品。
CHANGELEVEL加减值:直接修改等级(慎用)。
CHANGEPKPOINT值:设置PK值。
HP加成数值/MP加成数值:恢复生命或魔法。
WEAPON物品名:强制穿戴指定武器(需符合职业)。
UNWEAPON:卸下当前武器。
四、地图与传送命令
MAP地图名:切换地图(旧版格式)。
MAPMOVE地图号XY:传送至指定坐标,如MAPMOVE3330330。
MOVE地图号:随机传送到该地图安全区。
RECALLHERO:召回英雄(仅英雄版本有效)。
五、变量与数据操作
S(0-99):临时整型变量,重启清零。
D(0-99):持久整型变量,存入角色数据。
M(0-99):字符串变量,用于存储文本。
MOVS0100:将100赋值给S0。
INCS01:S0自增1。
EQUALS050:判断S0是否等于50。
LARGES0100:判断S0是否大于100。
六、消息与界面命令
SENDMSG颜色代码内容:向玩家发送系统消息,颜色代码:0=白色,1=红色,6=黄色。
MESSAGE内容:弹出对话框提示。
OPENMERCHANT:打开商店界面。
CLOSE:关闭当前NPC对话窗口。
七、怪物与事件命令
MONSTER怪物名XY数量时间:在坐标刷怪,时间单位为秒。
KILL怪物名:清除地图内指定怪物。
TIMERECALL标签名秒数:延迟执行某标签内容。
DAYOFWEEK数字:检测星期几(0=周日,1=周一…)。
八、特殊功能命令
MAKEITEM物品名材料列表:触发合成(需配合MakeItem.txt)。
GuildLevelCheck等级:检测行会等级。
CheckCastle:检测是否为沙巴克城主。
UserFull:检测背包是否已满。
使用注意事项
命令必须大写;参数间用空格分隔;中文路径或物品名需确保编码一致(通常为GBK);条件判断与动作必须成对出现;变量范围不可越界;脚本文件保存为ANSI编码,避免UTF-8导致乱码。
以上命令覆盖90%以上脚本开发场景,实际编写时需结合具体需求组合使用,例如任务交付可串联CHECKITEM→TAKE→GIVE→MOVD01,实现完整流程控制。
一、流程控制命令
[@label]:定义跳转标签,如[@main]为默认入口。
IF:条件判断起始,后接检测语句。
ACT:条件成立时执行动作。
ELSEACT:条件不成立时执行动作(部分版本支持)。
break:终止当前脚本执行。
goto@label:无条件跳转至指定标签。
二、角色状态检测命令
CHECKITEM物品名/ID数量:检测背包是否含指定物品。
CHECKGOLD金额:检测金币是否足够。
CHECKLEVEL等级:检测角色等级。
CHECKJOB职业编号:0=战士,1=法师,2=道士。
CHECKMAP地图号:检测当前所在地图编号。
CHECKPKPOINT值:检测PK值是否大于等于指定数。
CHECKHUM地图号XY范围:检测指定区域是否有玩家。
三、角色操作命令
TAKE物品名/ID数量:扣除背包内物品。
GIVE物品名/ID数量:给予物品。
CHANGELEVEL加减值:直接修改等级(慎用)。
CHANGEPKPOINT值:设置PK值。
HP加成数值/MP加成数值:恢复生命或魔法。
WEAPON物品名:强制穿戴指定武器(需符合职业)。
UNWEAPON:卸下当前武器。
四、地图与传送命令
MAP地图名:切换地图(旧版格式)。
MAPMOVE地图号XY:传送至指定坐标,如MAPMOVE3330330。
MOVE地图号:随机传送到该地图安全区。
RECALLHERO:召回英雄(仅英雄版本有效)。
五、变量与数据操作
S(0-99):临时整型变量,重启清零。
D(0-99):持久整型变量,存入角色数据。
M(0-99):字符串变量,用于存储文本。
MOVS0100:将100赋值给S0。
INCS01:S0自增1。
EQUALS050:判断S0是否等于50。
LARGES0100:判断S0是否大于100。
六、消息与界面命令
SENDMSG颜色代码内容:向玩家发送系统消息,颜色代码:0=白色,1=红色,6=黄色。
MESSAGE内容:弹出对话框提示。
OPENMERCHANT:打开商店界面。
CLOSE:关闭当前NPC对话窗口。
七、怪物与事件命令
MONSTER怪物名XY数量时间:在坐标刷怪,时间单位为秒。
KILL怪物名:清除地图内指定怪物。
TIMERECALL标签名秒数:延迟执行某标签内容。
DAYOFWEEK数字:检测星期几(0=周日,1=周一…)。
八、特殊功能命令
MAKEITEM物品名材料列表:触发合成(需配合MakeItem.txt)。
GuildLevelCheck等级:检测行会等级。
CheckCastle:检测是否为沙巴克城主。
UserFull:检测背包是否已满。
使用注意事项
命令必须大写;参数间用空格分隔;中文路径或物品名需确保编码一致(通常为GBK);条件判断与动作必须成对出现;变量范围不可越界;脚本文件保存为ANSI编码,避免UTF-8导致乱码。
以上命令覆盖90%以上脚本开发场景,实际编写时需结合具体需求组合使用,例如任务交付可串联CHECKITEM→TAKE→GIVE→MOVD01,实现完整流程控制。

