第一步:关闭服务端释放文件句柄
你遇到的 D:\mirserver\Mir200\Envir\QuestDiary\会员 无法删除,是因为M2Server.exe 正在运行并占用该脚本文件。直接删除会导致M2报错甚至崩溃。
1. 打开引擎控制器(如GameCenter),完全停止 M2Server及所有网关服务。
2. 等待进程管理器中确认 M2Server.exe 彻底退出。
3. 此时再尝试删除 QuestDiary\会员 文件夹,即可成功。
第二步:屏蔽或删除会员NPC入口
会员功能通常由NPC触发,需在配置文件中注释掉。
• MerChant.txt:打开 D:\mirserver\Mir200\Envir\MerChant.txt,查找包含“会员”、“VIP”、“会员使者”的行。在行首添加英文分号 ; 注释。
* 修改前:会员城/会员 3 330 325 会员使者 0 8 0
◦ 修改后:;会员城/会员 3 330 325 会员使者 0 8 0
- Npcs.txt:检查 D:\mirserver\Mir200\Envir\Npcs.txt,同样注释掉相关行。
第三步:清理会员脚本与数据文件
彻底删除以下目录中的会员相关文件(操作前务必备份整个Envir文件夹):
- NPC脚本目录:D:\mirserver\Mir200\Envir\market_def\
◦ 删除或重命名 会员.txt、VIP.txt、A半年制会员.txt 等。
- 数据记录目录:D:\mirserver\Mir200\Envir\QuestDiary\
◦ 删除 会员、VIP系统 等文件夹。
* 若存在 数据文件\封号名单\ 下的会员名单,清空内容或删除文件。
- 自定义变量:检查 QuestDiary 下的 UserVar.ini 或 MemberList.txt,删除与会员等级相关的变量定义。
第四步:修复脚本报错与残留调用
若删除文件后启动M2出现红字报错,说明其他脚本仍在调用会员功能。
1. 搜索全局调用:用文本编辑器(如Notepad++)打开 Mir200\Envir 文件夹,全文件搜索以下关键词:
* #CALL [\会员\、会员变量、CHECK [会员]、ISVIP。
2. 修复触发脚本:
* QFunction-0.txt:这是主要触发脚本,查找 [@会员登录]、[@VIP] 等段落,将其注释(用;)或删除。
* MapQuest.txt:检查地图触发是否关联会员脚本,删除对应行。
◦ Robot.txt:检查机器人脚本,删除定时给会员发福利的 AutoRunRobot 行。
第五步:重置玩家数据(重要)
会员状态通常写入玩家数据库。仅删除脚本不删数据,老玩家上线可能卡死。
1. 运行引擎自带的“清理数据”工具(如有)。
2. 或手动删除以下文件夹(此操作会清空所有玩家数据,仅适用于开新区或测试):
* D:\mirserver\DBServer\FDB(人物装备数据)
◦ D:\mirserver\LoginSrv\IDDB(账号数据)
* D:\mirserver\Mir200\Envir\QuestDiary\ 下的所有 .txt 数据文件(清空内容,不删文件)。
操作流程总结
1. 停服务 → 2. 注释NPC → 3. 删脚本文件 → 4. 搜残留调用 → 5. 清玩家数据 → 6. 重启服务端。
完成以上步骤后启动M2,观察控制台无红字报错,即代表会员制度已彻底移除。

