传奇服务端脚本里,调整人物技能等级直接使用 skilllevel 命令,基本格式为:skilllevel 技能名 控制符 技能等级。控制符写成=时代表直接设置目标等级,+代表在当前等级上增加,-代表减少。例如在执行段中写入 skilllevel 烈火剑法 = 3,就是把当前人物的烈火剑法直接设为3级;写成 skilllevel 烈火剑法 + 1,则是在原有等级基础上提升1级。该命令属于执行型命令,通常放在 act 后面,技能名称必须填写服务端实际识别的名称,不能使用技能说明、显示描述或自定义简称。

技能已经存在时可以直接调整,技能尚未学习时应先用 addskill 添加,再设置等级。完整操作顺序是:先确认技能名称,再判断人物是否拥有该技能;没有技能就执行 addskill 烈火剑法,需要直接给出初始等级时可写成 addskill 烈火剑法 1,之后再使用 skilllevel 烈火剑法 = 3。如果只是给新角色发放固定等级技能,直接使用带等级参数的 addskill 更省步骤;如果是活动奖励、任务升级或充值档位增加技能等级,则使用 skilllevel 技能名 + 数值 更合适。部分引擎命令支持对英雄技能进行处理,但应先确认当前脚本引擎的英雄调用格式,避免把人物技能和英雄技能写到同一目标上。
需要按条件升级时,先用 checkmagiclevel 检查当前技能等级,再执行调整命令,能够避免重复触发导致等级超过设计值。比如把烈火剑法限制在3级,可以写成:if checkmagiclevel 烈火剑法 < 3 act skilllevel 烈火剑法 + 1;如果需要无论当前等级是多少都固定为3级,则直接使用=控制符,不必连续执行多次+。检查命令中的<>=分别用于判断小于、大于和等于,检查的是技能等级,不是人物是否拥有该技能,因此未学习技能时应先完成添加。技能名称拼写错误、把命令放进条件段、遗漏控制符,都会导致脚本不生效;同时不要把人物等级命令 changelevel 当成技能等级命令使用。
实际配置时,可按用途选择三种写法:新手进入游戏直接获得技能,用 addskill 技能名 初始等级;完成任务后提升一级,用条件判断配合 skilllevel 技能名 + 1;重置技能或发放指定档位奖励,用 skilllevel 技能名 = 目标等级。建议先用测试角色验证技能图标、等级显示和实际伤害是否同步,再复制到正式npc、任务或活动脚本中。若技能不存在、技能名称不匹配或目标对象不是当前人物,应先处理对应条件,不能只修改最后一行等级命令。