一、修改前核心认知:脚本作用与文件定位
这套脚本的核心是实现“记录玩家杀人次数,并在专属封号中显示该次数”,需修改3个核心文件,均位于传奇服务端“Envir”文件夹下,新手先记准路径,避免找错文件。
1. 核心文件清单:QManage.txt(登录触发配置)、封号文件(如RankLevel.txt,不同版本名称可能为“封号配置.txt”)、QFunction-0.txt(杀人事件触发)。
2. 前期准备:先在服务端“D:\MirServer\Mir200\Envir\QuestDiary”下新建“5uwlnet”文件夹,在该文件夹内创建两个空文本文档,分别命名为“游戏数据.txt”和“群英名单.txt”,用于存储杀人数据和封号玩家名单。
3. 工具准备:用Notepad++打开所有脚本文件,便于代码编辑和格式检查,避免用系统自带记事本导致乱码。
二、第一步:配置QManage.txt——实现登录加载杀人数据
QManage.txt是玩家登录时触发的核心脚本文件,需添加“登录时加载历史杀人/被杀数据”的代码,确保数据不丢失。
操作步骤:
1. 打开路径:“D:\MirServer\Mir200\Envir\QManage.txt”,用Notepad++打开后,按快捷键“Ctrl+F”搜索“[@Login]”关键词,找到登录触发模块。
2. 在“[@Login]”模块下添加以下代码(直接粘贴,无需修改格式,路径已适配前期创建的文件夹):
[@Login]
#IF
CHECKLEVELEX > 0 // 玩家等级大于0时执行,覆盖所有正常玩家
#ACT
set [450] 0 // 初始化标记变量,避免数据冲突
VAR Integer HUMAN RWSW // 定义变量:存储玩家被他人击杀的次数
VAR Integer HUMAN RWSR // 定义变量:存储玩家击杀他人的次数(核心变量)
LOADVAR HUMAN RWSW ..\QuestDiary\5uwlnet\游戏数据.txt // 加载被击杀数据
LOADVAR HUMAN RWSR ..\QuestDiary\5uwlnet\游戏数据.txt // 加载杀人次数数据
3. 保存文件:点击Notepad++左上角“保存”按钮,关闭文件即可,无需重启引擎,后续全部配置完成后统一重启。
三、第二步:配置封号文件——让封号显示杀人次数
封号文件控制玩家的称号显示,需添加“检测玩家是否在群英名单,是则显示含杀人次数的封号”的规则,实现动态称号效果。
操作步骤:
1. 定位封号文件:打开“D:\MirServer\Mir200\Envir”文件夹,找到封号配置文件,常见名称为“RankLevel.txt”“封号.txt”“TitleConfig.txt”,若不确定可咨询版本服务商。
2. 打开文件后,在文件末尾添加以下代码(“群英名单.txt”即前期创建的文件,需手动将符合条件的玩家名称添加到该名单中):
#IF
checknamelist ..\QuestDiary\5uwlnet\群英名单.txt // 检测玩家是否在该名单内
#ACT
SETRANKLEVELNAME %s\武林至尊PK王\已有[<$HUMAN(RWSR)>]人死于其魔掌 // 封号格式,<$HUMAN(RWSR)>自动显示杀人次数
break // 终止后续规则,避免封号冲突
3. 补充操作:打开“5uwlnet”文件夹下的“群英名单.txt”,每行输入1个玩家角色名(如“战神归来”“烈火焚天”),保存后这些玩家将触发上述封号。
四、第三步:配置QFunction-0.txt——触发杀人次数统计
QFunction-0.txt是游戏内事件触发脚本文件,需添加“玩家击杀其他玩家时,自动累加杀人次数并保存”的代码,实现数据实时更新。
操作步骤:
1. 打开路径:“D:\MirServer\Mir200\Envir\QFunction-0.txt”,用Notepad++打开后,直接在文件末尾添加以下代码(无需找特定模块,末尾添加即可):
[@KillPlay] // 玩家击杀其他玩家时触发该事件
#if // 无额外条件,所有击杀行为都触发
#ACT
set [450] 1 // 标记为有效击杀,区分误杀或系统判定
CALCVAR HUMAN RWSR + 1 // 玩家杀人次数变量+1
SAVEVAR HUMAN RWSR ..\QuestDiary\5uwlnet\游戏数据.txt // 实时保存更新后的杀人次数
SENDMSG 7 提示:你在游戏里面杀死了你的对手!!! // 玩家端提示,可自定义内容
2. 保存文件:完成代码粘贴后点击保存,此时3个核心文件已全部配置完毕。
五、收尾操作:重启引擎与测试验证
所有脚本修改后需重启引擎生效,新手按以下流程测试,确保功能正常:
1. 重启引擎:打开传奇服务端控制器,依次点击“停止M2Server”“停止LoginSrv”,等待10秒后重新启动两个服务,确保引擎加载新脚本。
2. 游戏内测试步骤:
- 步骤1:用“群英名单.txt”中的角色名登录游戏,确认初始封号是否显示(若未显示,先通过GM命令给自己赋予基础封号)。
- 步骤2:在游戏内击杀其他玩家,查看聊天栏是否出现“杀死对手”的提示。
- 步骤3:击杀后打开角色面板,检查封号是否更新为“武林至尊PK王 已有X人死于其魔掌”,X为当前杀人次数。
- 步骤4:退出游戏重新登录,再次查看封号次数是否保留,确保数据已保存。
六、新手常见问题与解决方法
Q1:击杀玩家后杀人次数不增加,无提示?
A1:检查QFunction-0.txt中“[@KillPlay]”是否完整,有无遗漏“#if”“#ACT”等关键字;确认引擎已重启,未重启则脚本不生效;查看“游戏数据.txt”是否有读写权限,右键文件属性取消“只读”。
Q2:封号显示正常,但杀人后次数不更新?
A2:核对QFunction-0.txt中的“CALCVAR HUMAN RWSR + 1”是否正确,变量名“RWSR”需与QManage.txt中的变量名完全一致(区分大小写);检查“游戏数据.txt”路径是否与代码中的路径匹配。
Q3:登录游戏后提示“文件加载失败”?
A3:确认“5uwlnet”文件夹及内部两个文本文档已创建,路径为“D:\MirServer\Mir200\Envir\QuestDiary\5uwlnet”,若修改过路径,需同步修改所有脚本中的路径代码。
Q4:部分玩家封号显示乱码?
A4:用Notepad++打开封号文件,点击顶部“格式”,选择“以UTF-8无BOM格式编码”,保存后重启引擎即可解决乱码问题。
七、新手操作小贴士
1. 备份习惯:修改任何脚本前,复制原文件存到“备份”文件夹,出错后可直接替换恢复。
2. 变量区分:“RWSR”是杀人次数,“RWSW”是被击杀次数,新手暂时用不到后者可保留代码,后续可扩展“死亡次数”显示功能。
3. 封号自定义:若想修改封号名称,直接修改封号文件中的“武林至尊PK王”为其他名称(如“热血屠夫”“沙城战神”)即可,不影响次数显示。

