传奇legendm2登陆器自动更新物品过滤列表配置教程与lsDefaultItemFilter下发排错

来源: 作者: 点击:
legendm2做物品过滤自动更新,主要解决StdItems.DB频繁加新物品后,玩家本地过滤列表不同步、每次都要重新出登录器的问题。整套流程在登陆器配置器生成过滤文本,算MD5,传Upgrade目录,由登陆器启动或更新阶段拉取并写入客户端Data相关文件。下面按实际操作顺序写。

一、登陆器配置器生成过滤文本

打开legendm2登陆器配置器,进入物品过滤或内挂拾取相关页。按版本界面叫法可能是物品过滤列表、自动拾取规则、装备过滤、内挂过滤。把StdItems.DB里新增物品按需加入,设置显示、拾取、极品、职业等参数后点保存到文件。配置器默认会生成lsDefaultItemFilter.txt,放在配置器所在目录。

多版本列表可分别用不同文件,例如lsDefaultItemFilter.txt、lsDefaultItemFilter2.txt、lsDefaultItemFilter3.txt,对应不同客户端DAT或不同游戏线。列表里写多个版本时,每个版本行指定各自过滤文件,登陆器按版本标识自动更新到客户端Data目录。

二、过滤行格式填写

legendm2/LEGEND类登陆器常见文本格式为“物品名称,类型,显示,拾取,极品”这类逗号分隔,具体列数以本配置器导出为准。社区示例行:

金币,4,0,1,1
命运之书,4,0,1,1
基本剑术,4,0,1,1
烈火剑法,4,0,1,1

不同配置器列义可能不同,填之前看配置器表头。通用原则:

物品名必须与StdItems.DB的Name完全一致,带空格、括号、颜色前缀都要一致
技能书、消耗品、装备分开建规则,避免一行参数误伤全部类型
不拾取但显示、可拾取但隐藏名称、极品单独处理,按配置器支持的列填写
新增装备先加白名单,再补黑名单,避免新物品因不在列表被默认全捡或全屏蔽

若配置器导出的是DefaultItemFilter.dat而不是txt,仍先用txt在配置器编辑,由配置器编译成dat;直接手改dat容易字节错位,不推荐。

三、计算MD5并准备更新文件

lsDefaultItemFilter.txt改完保存后,用MD5工具对文件算值。legendm2自动更新一般要求List.txt里每个文件写本地目标路径、MD5、远程下载地址三段。物品过滤文本按目标放客户端Data目录处理,例如目标写:

data\lsDefaultItemFilter.txt 文件MD5值 http://你的更新地址/lsDefaultItemFilter.txt

如果配置器或登陆器约定文件名是DefaultItemFilter.dat,就按实际文件名写,不要混用。多文件更新参考LoginTool自动更新规则:单文件写完整相对路径,zip整包可只算包内一个文件MD5,登陆器下载后解压到对应目录。

四、FTP/LoginTool升级目录摆放

登陆器自动更新资源放服务端可访问的更新根,例如登陆器FTP或Web可访问目录:

/LoginTool/Upgrade/

没有Upgrade就新建。把下面内容放进去:

lsDefaultItemFilter.txt 或对应dat
List.txt 更新清单
若走zip,放data.zip之类整包,包内目录按客户端目标组织,例如包内有Data\lsDefaultItemFilter.txt

List.txt示例:

data\lsDefaultItemFilter.txt MD5值 http://域名/LoginTool/Upgrade/lsDefaultItemFilter.txt

zip方式示例:

data\某文件.txt MD5值 http://域名/LoginTool/Upgrade/data.zip

zip只算你写在List里那个文件的MD5,登陆器按包内路径解压覆盖。物品过滤若文件少,直接用单文件更新最稳,排错简单。

五、登陆器配置绑定更新地址

登陆器配置器里填自动更新地址,指向List.txt可访问URL。legendm2相关资料里LoginTool自动更新可用类似:

http://地址/LoginTool/Upgrade/List.txt

登陆器启动检测List.txt,比对本地已下载文件的MD5;不一致就从远程拉新文件,按List里相对路径写到客户端data或其他目录。 列表服务器要能保证txt、dat、zip都可通过HTTP/FTP访问,文件权限别设成不可读。

六、客户端落地与生效

玩家端首次用新登陆器,或本地Data没有对应过滤文件时,登陆器下载lsDefaultItemFilter.txt/DefaultItemFilter相关文件到客户端Data。进游戏后内挂过滤、自动拾取按文件规则执行。之后StdItems.DB加新物品,只需在配置器改过滤文本、重新出lsDefaultItemFilter.txt、算MD5、传Upgrade并改List.txt,玩家下次启动登陆器自动覆盖,不必重新发整个登陆器。

若版本用dat而不是txt,确认登陆器配置器是否把txt编译为DefaultItemFilter.dat;自动更新传dat,List.txt目标写data\DefaultItemFilter.dat。部分LEGEND/blue资料里客户端Data默认捡取文件为DefaultItemFilter,legendm2若走ls前缀文件要以本登陆器版本说明为准。

七、服务端M2过滤与登陆器过滤分工

登陆器物品过滤属于客户端内挂/自动拾取层,控制玩家本机显示和捡物。服务端要强制全服屏蔽,用M2侧配置:

Mir200\Envir\ItemFilter.txt:按物品ID或名称、过滤模式、地图范围写规则,模式常见1不显示地面、2不掉落、3拾取后丢,保存后M2重新加载物品过滤。
Mir200\Envir\FilterItemList.txt:部分版本做内挂名称、显示、分类同步;新装备没名字或不过滤,补这里后再看登陆器是否集成下发。
M2参数设置-物品相关:极品名称显示、普通名称隐藏、内挂拾取总开关按版本检查。

客户端过滤文件被登陆器自动更新覆盖时,以登陆器下发的lsDefaultItemFilter.txt为准;服务端ItemFilter强制规则优先级更高,玩家本地即使不勾选,服务端不掉落就不掉落。

八、DB频繁改物品的维护顺序

StdItems.DB加完新物品后按下面走:

1. 在M2或DBC确认新物品Name、Stdmode、价格、分类无误。
2. 登陆器配置器打开旧lsDefaultItemFilter.txt,新增物品分行加规则。
3. 保存到配置器目录,生成新lsDefaultItemFilter.txt。
4. 算MD5,替换LoginTool/Upgrade旧文件。
5. List.txt改对应MD5,远程地址不变。
6. 客户端清Data旧过滤缓存如果是调试阶段,正常玩家靠MD5变更自动拉取。
7. 进游戏捡新物品,验证显示、自动捡、极品提示三档。

只改DB不改过滤文本,老登陆器可能把新物品按默认全捡或根据内挂缺省处理;做了自动更新,所有玩家启动一次就能拿到新规则。

九、常见不生效问题

1. 登陆器不下载过滤文件
查List.txt地址是否在登陆器配置器自动更新栏填对;查HTTP返回200;查文件名大小写;查List里相对路径是否写data\lsDefaultItemFilter.txt而服务端实际传的是根目录文件。

2. 下载了但游戏不过滤
确认登陆器内挂物品过滤开关已启用;确认文件落到客户端Data且文件名与登陆器预期一致;若游戏读DefaultItemFilter.dat而你在传lsDefaultItemFilter.txt,属于文件名不匹配,改配置器导出名或改List目标名。

3. 新物品仍全捡
过滤文本没加新物品名,或名称与DB不一致;检查有没有前后空格、全角逗号、极品前缀。DB叫“屠龙(极品)”而文本只写“屠龙”,可能不匹配。

4. 改MD5不生效
List.txt没更新MD5,登陆器比对本地下载文件一致就跳过;重新算新文件MD5并覆盖List.txt对应行。

5. zip更新只解一半
List.txt写包内某个文件MD5,但zip里路径和List相对路径不一致;物品过滤建议单文件更新,不混大zip。

6. 服务端又发一份过滤覆盖客户端
M2若开启内挂过滤发送到客户端,可能用DefaultItemFilter.dat或其他文件覆盖登陆器下发内容。以一套为准:要么全用服务端M2列表下发,要么全用登陆器lsDefaultItemFilter自动更新,避免两边互相盖。

7. 多版本列表串文件
列表一用lsDefaultItemFilter.txt,列表二用lsDefaultItemFilter2.txt,列表三用lsDefaultItemFilter3.txt,配置器和List、FTP目录、客户端DAT要一一对应,否则合区或多线路会互相下错。

十、文件编码与格式

过滤文本用配置器保存,别用Word改。手工微调用记事本存ANSI或配置器原编码;UTF-8带BOM可能导致首行规则异常。每行一个物品,逗号分隔列数固定,不要空行混制表符。MD5是对最终要上传的那个文件算,配置器另存后再算,先算MD5再改内容会不匹配。

十一、最小可运行示例

配置器导出lsDefaultItemFilter.txt,内容:

金币,4,0,1,1
金创药,4,0,1,0
布衣,4,1,0,0
乌木剑,4,1,1,1
屠龙,4,1,1,1

含义按本配置器表头解释,示例仅演示分行;实际列若不同以配置器说明为准。算MD5得abc123,传:

/LoginTool/Upgrade/lsDefaultItemFilter.txt
/LoginTool/Upgrade/List.txt 写 data\lsDefaultItemFilter.txt abc123 http://update.xxx.com/LoginTool/Upgrade/lsDefaultItemFilter.txt

登陆器配置器自动更新填:

http://update.xxx.com/LoginTool/Upgrade/List.txt

玩家启动登陆器,本地Data无文件或MD5不符则下载;进游戏内挂按上面五行处理显示和拾取。后续DB加“血饮”,只改配置器加“血饮,4,1,1,1”,重算MD5,换Upgrade文件,改List.txt,玩家重启登陆器即生效,不需要重出整个登陆器。

十二、排错检查单

登陆器配置器过滤页是否能导出lsDefaultItemFilter.txt
StdItems.DB新物品Name是否和过滤文本完全一致
MD5是否对上传文件重新计算
List.txt路径是否data\文件名、MD5、远程URL三要素完整
FTP/Web是否可直接访问文件,无防盗链、无重定向出错
客户端Data目标文件名是否和登陆器读取名一致
M2物品过滤、FilterItemList是否另发文件造成覆盖
内挂自动拾取总开关、极品显示、职业过滤是否冲突

按这个顺序改,legendm2物品过滤列表随DB变动自动更新,玩家不用手动导文件,GM也不用每次重新打包登陆器。