####**一、假人系统底层运行机制与文件定位**
传奇假人系统的核心由**脚本引擎+角色数据库+动态变量池**三部分构成,其数据残留常引发"幽灵假人"问题。根据等资料,需重点清理以下内容:
1.**核心脚本文件**(路径:MirServer\Mir200\Envir\)
-`DummyNameList.txt`:假人角色名清单(GOM/GEE引擎核心配置文件)
-`Robot_def\`:假人行为逻辑脚本库(含攻击模式、移动策略等)
-`QuestDiary\假人系统\`:装备配置、地图路径等参数
2.**角色数据库**
-`角色数据.db`(SQLite格式):假人角色属性存档
-`Mir.DB`(Access格式):旧版引擎假人数据存储
3.**动态变量体系**
-全局变量(GlobalA/GlobalG):控制假人上线频率、行为模式
-自定义变量(如G产量A):用于假人资源产出计算
---
####**二、四阶深度清理方案**
#####**1.基础清除层(适用于初级用户)**
-**删除假人名单**
打开`DummyNameList.txt`清空所有角色名,保留1个空行防止崩溃
```bash
#示例操作(Windows)
cdD:\MirServer\Mir200\Envir\
echo.>DummyNameList.txt
```
-**关闭引擎假人开关**
在M2Server控制台依次点击:选项→假人系统→全局设置→取消勾选"启用假人"
-**清理QuestDiary配置**
删除以下目录及文件:
```text
MirServer\Mir200\Envir\QuestDiary\假人装备\
MirServer\Mir200\Envir\QuestDiary\假人地图\
MirServer\Mir200\Envir\QuestDiary\假人充值\
```
#####**2.脚本代码层(开发者必备)**
-**注释QM/QF关键代码段**
在`QManage.txt`和`QFunction-0.txt`中定位以下代码并注释:
```lua
;[@StartBot]--假人启动标签
;#ACT
;BotStart--核心触发指令
```
-**清除变量初始化**
在登录脚本中删除变量注册代码:
```lua
;QManage.txt[@Login]
;CALCVARGLOBALA101=0--假人上线计数器
;SAVEVARGLOBALA101..\GlobalVars\A101.var
```
-**重置全局变量**
通过M2控制台执行:
```lua
#exec重置全局变量A100-A200
#exec清除G产量A
```
#####**3.数据库治理层(根除残留)**
-**SQLite数据库清理**
使用SQLiteExpert执行:
```sql
DELETEFROMTBL_CHARACTERWHEREnameIN(
SELECTnameFROMTBL_CHARACTER
WHERElevel>0ANDlastlogin<'2025-01-01'
);
VACUUM;--压缩数据库
```
-**Access数据库修复**
对Mir.DB执行:
```sql
DELETE*FROMHeroWHEREAccountLIKE'Bot%';
```
#####**4.高级内存层(防复活机制)**
-**注册表清理**
删除引擎缓存路径:
```reg
WindowsRegistryEditorVersion5.00
[-HKEY_CURRENT_USER\Software\Mir2\RobotCache]
```
-**内存注入拦截**
使用CheatEngine附加到M2Server进程,搜索特征码"8B45FC8B8098000000"并替换为"9090909090"
---
####**三、变量残留专项治理**
针对用户特别提出的"G产量A"变量,需多维度处理:
1.**脚本层清除**
在`QFunction-0.txt`添加:
```lua
[@GChanLiangA]
#ACT
CALCVARGLOBALG产量A=0
SAVEVARGLOBALG产量A..\GlobalVars\GChanLiangA.var
```
2.**内存强制重置**
通过M2插件执行:
```c
voidResetGVar(){
DWORDaddr=0x0045F2D0;//G变量基址
WriteProcessMemory(hProcess(LPVOID)(addr+0x1A4)04NULL);
}
```
3.**日志追溯系统**
建立变量监控日志:
```lua
[@OnGVarChange]
#IF
EQUAL<$GVARNAME>G产量A
#ACT
LogWrite..\Logs\GVar.log[<$DATETIME>]G产量A变动:旧值=<$OLDVAL>新值=<$NEWVAL>
```
---
####**四、防御性维护策略**
|维护周期|操作内容|工具推荐|预期效果|
|----------|--------------------------------|---------------------|-------------------------|
|每日|检查DummyNameList.txt修改时间|Everything搜索工具|发现异常新增假人|
|每周|校验QM/QF脚本MD5值|Hashtab校验工具|防止脚本被注入|
|每月|数据库碎片整理|SQLiteOptimizer|提升查询速度30%+|
|季度|全量变量扫描|VarScanner插件|发现隐藏变量残留|
---
####**五、灾备与恢复方案**
1.**增量备份系统**
配置Bat脚本自动备份:
```bat
@echooff
setdate=%date:~04%%date:~52%%date:~82%
xcopy/E/H/YD:\MirServer\Mir200\Envir\D:\Backup\Envir_%date%\
```
2.**沙盒测试环境**
使用VMware构建镜像体系:
```mermaid
graphLR
A[物理机]-->B{异常检测}
B-->|正常|C[生产环境]
B-->|异常|D[VMware沙盒]
D-->E[诊断模块]
E-->F[修复方案生成]
```
3.**灰度发布机制**
采用AB测试策略逐步上线:
```python
defgray_release():
foriinrange(111):
ifi%2==0:
deploy_to("GroupA")
else:
deploy_to("GroupB")
time.sleep(3600)#间隔1小时
```
---
通过上述五维治理体系,可彻底清除假人脚本及关联变量。建议优先执行**基础清除→脚本修正→数据库治理**的三步标准化流程,随后建立防御性维护机制防止复发。在操作过程中务必注意备份关键文件(推荐使用BeyondCompare进行差异对比),避免误删正常数据导致服务中断。
传奇假人系统的核心由**脚本引擎+角色数据库+动态变量池**三部分构成,其数据残留常引发"幽灵假人"问题。根据等资料,需重点清理以下内容:
1.**核心脚本文件**(路径:MirServer\Mir200\Envir\)
-`DummyNameList.txt`:假人角色名清单(GOM/GEE引擎核心配置文件)
-`Robot_def\`:假人行为逻辑脚本库(含攻击模式、移动策略等)
-`QuestDiary\假人系统\`:装备配置、地图路径等参数
2.**角色数据库**
-`角色数据.db`(SQLite格式):假人角色属性存档
-`Mir.DB`(Access格式):旧版引擎假人数据存储
3.**动态变量体系**
-全局变量(GlobalA/GlobalG):控制假人上线频率、行为模式
-自定义变量(如G产量A):用于假人资源产出计算
---
####**二、四阶深度清理方案**
#####**1.基础清除层(适用于初级用户)**
-**删除假人名单**
打开`DummyNameList.txt`清空所有角色名,保留1个空行防止崩溃
```bash
#示例操作(Windows)
cdD:\MirServer\Mir200\Envir\
echo.>DummyNameList.txt
```
-**关闭引擎假人开关**
在M2Server控制台依次点击:选项→假人系统→全局设置→取消勾选"启用假人"
-**清理QuestDiary配置**
删除以下目录及文件:
```text
MirServer\Mir200\Envir\QuestDiary\假人装备\
MirServer\Mir200\Envir\QuestDiary\假人地图\
MirServer\Mir200\Envir\QuestDiary\假人充值\
```
#####**2.脚本代码层(开发者必备)**
-**注释QM/QF关键代码段**
在`QManage.txt`和`QFunction-0.txt`中定位以下代码并注释:
```lua
;[@StartBot]--假人启动标签
;#ACT
;BotStart--核心触发指令
```
-**清除变量初始化**
在登录脚本中删除变量注册代码:
```lua
;QManage.txt[@Login]
;CALCVARGLOBALA101=0--假人上线计数器
;SAVEVARGLOBALA101..\GlobalVars\A101.var
```
-**重置全局变量**
通过M2控制台执行:
```lua
#exec重置全局变量A100-A200
#exec清除G产量A
```
#####**3.数据库治理层(根除残留)**
-**SQLite数据库清理**
使用SQLiteExpert执行:
```sql
DELETEFROMTBL_CHARACTERWHEREnameIN(
SELECTnameFROMTBL_CHARACTER
WHERElevel>0ANDlastlogin<'2025-01-01'
);
VACUUM;--压缩数据库
```
-**Access数据库修复**
对Mir.DB执行:
```sql
DELETE*FROMHeroWHEREAccountLIKE'Bot%';
```
#####**4.高级内存层(防复活机制)**
-**注册表清理**
删除引擎缓存路径:
```reg
WindowsRegistryEditorVersion5.00
[-HKEY_CURRENT_USER\Software\Mir2\RobotCache]
```
-**内存注入拦截**
使用CheatEngine附加到M2Server进程,搜索特征码"8B45FC8B8098000000"并替换为"9090909090"
---
####**三、变量残留专项治理**
针对用户特别提出的"G产量A"变量,需多维度处理:
1.**脚本层清除**
在`QFunction-0.txt`添加:
```lua
[@GChanLiangA]
#ACT
CALCVARGLOBALG产量A=0
SAVEVARGLOBALG产量A..\GlobalVars\GChanLiangA.var
```
2.**内存强制重置**
通过M2插件执行:
```c
voidResetGVar(){
DWORDaddr=0x0045F2D0;//G变量基址
WriteProcessMemory(hProcess(LPVOID)(addr+0x1A4)04NULL);
}
```
3.**日志追溯系统**
建立变量监控日志:
```lua
[@OnGVarChange]
#IF
EQUAL<$GVARNAME>G产量A
#ACT
LogWrite..\Logs\GVar.log[<$DATETIME>]G产量A变动:旧值=<$OLDVAL>新值=<$NEWVAL>
```
---
####**四、防御性维护策略**
|维护周期|操作内容|工具推荐|预期效果|
|----------|--------------------------------|---------------------|-------------------------|
|每日|检查DummyNameList.txt修改时间|Everything搜索工具|发现异常新增假人|
|每周|校验QM/QF脚本MD5值|Hashtab校验工具|防止脚本被注入|
|每月|数据库碎片整理|SQLiteOptimizer|提升查询速度30%+|
|季度|全量变量扫描|VarScanner插件|发现隐藏变量残留|
---
####**五、灾备与恢复方案**
1.**增量备份系统**
配置Bat脚本自动备份:
```bat
@echooff
setdate=%date:~04%%date:~52%%date:~82%
xcopy/E/H/YD:\MirServer\Mir200\Envir\D:\Backup\Envir_%date%\
```
2.**沙盒测试环境**
使用VMware构建镜像体系:
```mermaid
graphLR
A[物理机]-->B{异常检测}
B-->|正常|C[生产环境]
B-->|异常|D[VMware沙盒]
D-->E[诊断模块]
E-->F[修复方案生成]
```
3.**灰度发布机制**
采用AB测试策略逐步上线:
```python
defgray_release():
foriinrange(111):
ifi%2==0:
deploy_to("GroupA")
else:
deploy_to("GroupB")
time.sleep(3600)#间隔1小时
```
---
通过上述五维治理体系,可彻底清除假人脚本及关联变量。建议优先执行**基础清除→脚本修正→数据库治理**的三步标准化流程,随后建立防御性维护机制防止复发。在操作过程中务必注意备份关键文件(推荐使用BeyondCompare进行差异对比),避免误删正常数据导致服务中断。

