联系官方素材染色图片处理装备合成积分获取
📢 所有资源仅限个人娱乐、研究和学习之用,请在24小时之内删除!大部分资源都是转载自其他论坛或者各大传奇GM群,所以无法保证转载资源的安全性! 千万不要下载资源了直接放服务器了,记得先杀毒!
广告

疑难杂症

常见问题排查 · 使用疑难一键解决

疑难杂症支持图文投稿,请先 登录 后再添加。
分类问题共 4 条
Q996引擎常见故障排查解决教程+

996引擎常见故障排查解决教程

 

问题1:LiteSQL弹窗报错

996引擎常见故障排查解决教程

解决方法

  1. 检查是否开启了SQL SERVER 数据库服务

下载渠道:

  • 引擎包→工具文件夹
  1. 检查配置向导中的端口是与liteSql的登录端口是否一致?

sqlserver:996引擎常见故障排查解决教程

引擎配置:996引擎常见故障排查解决教程

3.检查LITESQL登录模式是要为混合模式登录

996引擎常见故障排查解决教程

问题2:LiteSQL登录失败

996引擎常见故障排查解决教程解决方法:LiteSQL→数据库→密码→将密码同步为控制台配置向导一样的即可→确定

996引擎常见故障排查解决教程

问题3:引擎M2启动不成功(1)

996引擎常见故障排查解决教程错误原因:用户使用了手动在LiteSQL2014上创建的数据库.

解决方法:删除手动创建的数据库,然后再控制台上修改一下数据库名称(随便加个数字就行)

,然后点击引擎启动即可.

注意:996引擎启动时,会自动检测创建对应名称的数据库,无需手动创建.

996引擎常见故障排查解决教程

问题4:引擎M2启动不成功(2)

错误原因:用户未进行DB数据库转换

解决方法:使用引擎包内的”数据库转Excel”,工具,进行数据库转换.然后将转换生成的三个表格放入Mir200EnvirData中.可解决此问题.

注意:要选择对应的数据库类型的工具来进行转换

996引擎常见故障排查解决教程

问题5:点击登录无反应

问题原因:登陆器识别码未同步.

解决方法:将登录器配置器的识别码同步到”登录网关”,点击保存,然后重启网关

图示:

996引擎常见故障排查解决教程

 

问题6:单机登陆器无列表

996引擎常见故障排查解决教程、

问题原因:单机登陆器也是读单机列表的,读不到自然就无法显示.

解决方法:使用”简易IIS”快速建立列表链接.

引擎包-工具文件夹

问题7:列表显示点击列表显示链接失败

问题原因:登陆器识别码未同步.

解决方法:将登录器配置器的识别码同步到”登录网关”,点击保存,然后重启网关

996引擎常见故障排查解决教程

问题8:角色界面点击开始游戏无相应

996引擎常见故障排查解决教程问题原因:游戏网关没有启动或者被拦截了。

解决方法:启动游戏网关即可

问题9:角色界面点击开始游戏后黑屏

996引擎常见故障排查解决教程

问题原因:MIR200文件夹没有KEY文件或者KEY文件不匹配

解决办法:把登录器生成器的KEY文件复制到MIR200文件夹重启即可。

问题10:点击开始后提示错误代码问题:

错误代码=1   表示你的游戏网关连接有问题,可能是没拉起来,也可能是端口被占用,重启引擎即可。

996引擎常见故障排查解决教程

错误代码=2  表示你的授权KEY文件不配套,检查登录网关秘钥跟MIR200KEY.LIC以及登录器生成器下面的KEY.lic 三处必须配套才行。

996引擎常见故障排查解决教程

错误代码=4  表示你的引擎版本号跟登录器版本号不一致,替换配套的引擎生成对应的登录器版本号即可,引擎跟登录器的配套信息在说明书的更新日志里查看。

996引擎常见故障排查解决教程

 

错误代码=9  表示玩家多开已经达到上限。

 

 

问题10:微端加载有问题需要注意什么:

  • 必备补丁必须跟微端一致,日期和大小
  • 登录器生成器打包的补丁文件必须跟微端的保持一致,日期和大小
  • 建议把登录器生成器复制到微端服务器读取补丁,并且生成登录器,然后复制

JpkList.txt

MapList.txt

WavList.txt

WzlList.txt

这4个文件到微端程序文件夹 再启动微端即可

Q996引擎常见问题注意事项以及部分说明+

1、素材转换,996引擎使用了JPK文件存储自定义素材。官方集成工具可以一键将PAK素材转换成JPK      

2、X\Mirserver\Mir200\Envir\EffectImageList.txt,资源列表里的.WIL批量替换成.WZL,.PAK批量替换成.JPK。官方集成工具可以批量替换

3、光柱设置,查看-列表信息二-物品光柱    物品光柱

     光柱特效编号ID是从50001开始的,不要与特效编号重复,其他版本光柱设置需要按格式转换到996格式。官方集成工具可以批量转换

4、!Setup.txt  部分内容跟GOM有所不同,请仔细检查M2设置。

     设置-物品装备-极品几率

     1、武器攻速,取消了减攻速的极品,具体算法 (最高点数+1)/3结果取整数   

          比如设置 最高点数= 4  结果为(4+1)/3=1  最高点数= 1 结果为(1+1)/3= 0  最高点数= 14 结果为(14+1)/3= 5极品范围就是1~5,以此类推  

      2、特殊项链手镯的魔法躲避、准确、敏捷可直接设置,由于采用了Excel表来记录装备数据

           这些属性大可不必使用AC2、MAC2来替代。同样也支持在xls表里自由配置这些属性。

      3、个人商店功能已取消,采用了更灵活方便的拍卖行+邮件收款功能,M2设置-功能设置-个人商店

            无需脚本代码,可在M2选项-参数设置-价格费用里面设置拍卖行手续费。

5、无限刀的设置同GOM一样,M2设置-参数设置-速度控制,将攻击速度调至最低,M2设置-客户端控制-内挂控制将

     攻击速度-动作时间调至最低,再通过CHANGESPEED脚本调整即可。

     996引擎的施法速度算法略快,GOM和其他引擎转过来的版本,M2设置-参数设置-速度控制里面的施法速度在原基础上+(260~300)具体数值自行估测。

     攻击速度相同无需调整。


6、cfg_item.xls---------------装备属性表的详细说明,属性配置请参考属性对照表

7、cfg_monster.xls----------怪物表的详细说明,属性配置请参考属性对照表

8、cfg_magic.xls------------技能表的详细说明

9、所有NPC对话框的文字错位,可在M2选项-客户端控制-页面显示里面设置NPC对话框文字坐标微调。

10、写法差别

    ;注意:996的写法第四个参数(写入的变量)不要带<$STR()> ,读配置,写配置都不要带<$STR()>

    ReadConfigFileItem ..\QuestDiary\KEY.ini <$USERNAME> 内容 S$配置项内容

    自定义OK框,放入物品之后GOM是可以用checkitem检测到物品在背包,这个逻辑会存在一些漏洞,

    996的逻辑是放入OK的物品是用检测背包的命令是检测不到的,可以用CheckBoxItemCount 0 1 检测OK框是否存在物品

11、怪物表的K列(速度/SPEED)实则是怪物躲避,GOM的躲避有效上限为255,996引擎上限65535,如果你的版本怪物躲避超过了255那么请自行调整躲避数值。

12、对于使用无效附加属性,例如:CHECKITEMADDVALUE 1 8 > 0 这种方法来做拾取鉴定、首爆标识或者开光等功能的GM,建议使用物品标记来做,方法更简单方便,支持32个标记可以做更强大的功能。

Q996传奇PC端版本如何架设SQL数据库?+

首先安装数据库工具:LiteSQL2014_Release。996PC引擎包有

安装方法:

1:讲该软件保存到任意盘符目录中(文件夹不要包含中文,可能会无法启动或报错);

2:打开LiteSQL2014软件,如图:
996传奇PC端版本如何架设SQL数据库?
选中“开机运行、自动启动”,记住SQL端口;

3:点击下方“密码”按钮,设置SQL数据库密码,并记住该密码,如图:

996传奇PC端版本如何架设SQL数据库?

此时,SQL数据库已经设置完成,最小化到系统任务栏即可。

4:996传奇服务端设置(配置向导),如图:

996传奇PC端版本如何架设SQL数据库?
根据第二步和第三步中的端口和密码,输入到如上图中,数据库名字自己设置,继续下一步到最后完成配置向导即可。


QGOM转996PC笔记+
M2设置

参数设置-移动速度,点一下将补偿转换为公共CD

参数设置 - 环境设置 玩家视野,

选项-客户端控制NPC坐标偏移

选项-客户端控制 内挂控制二 获得物品、经验、升级,右对齐

选项-功能设置-客户端设置 装备对比

选项-功能设置 基本功能 - 掉落来源 地图事件触发

选项-功能设置 - 技能 - 道术毒符 佩戴 、无

选项-功能设置-客户端设置-启用套装改名判断 没事千万没勾

光柱导入后 坐标和绘制模式可能失效 需要核实

列表二-内挂捡取 需要重新设置

选项-客户端控制-内挂控制 需要重新设置内挂选项

大背包在M2-选项-功能设置-客户端设置,背包按钮需要在UI中配置,且在QF写入触发命令

刷新包裹按钮无效,需要用自定义背包按钮+刷新包裹命令自己写

M2选项-查看列表信息二-技能描述


素材部分

996自带的转换工具会把png也转成24位BMP,导致部分素材花屏

996PC不支持24位以下BMP会,导致部分地图黑屏、素材不显示

完美解决办法:用GMGJX转一份素材【主用】,引擎自带转换工具一份备用。进游戏后发现1、2问题,则去引擎自带转换工具转的那份里对应jpk找到对应图片导出、导入使用,偷懒点就整个jpk替换

以下怪物素材编号要规避,系统固定编号
Mon80~83 也就是appr790-829 火龙系怪物
Mon91 也就是appr 900-909 沙巴克城墙
Mon96 也就是appr 950~959 强化骷髅


脚本部分

镶嵌相关命令(SOCKETABLEITEM、DRILLHOLE等)精简后只有3个参数,不需要88或者***去占位无用参数

杀怪爆率命令KILLMONBURSTRATE 同上

所有输入框都需要搜索出来,加一句MOV S变量 <$NPCPARAMS(1,S变量)>,N变量同理

货币名称修改需要在数据库顶部几行中修改,不是在!Setup中修改了

个人商店已作废,改用拍卖行,需要在M2隐藏个人商店,删除qf中相关代码

变量P D M N S I 0-99 G A 0-499 U T J 0-254 使用范围外变量会报错
更严谨的变量使用,命令中使用变量如果是调用则需要加<$str()>,如果是输出则不能有<$str()> 这个要花点时间,一般我会搜 .txt <$str 再搜 <$str 检查

注意SetStringBlank是不能加<$str()>的,其他就是几个文件操作

称号给予删除不会自动转换

【全系】RangeHarm不会报错,需要转成SetAttackRange 2025.08.01.08更新了RangeHarm和RangeHarmEx

【GEE系】 鼠标坐标N998,N999需要改成<$mouseX> <$mouseY>

【GEE系】PLAYEFFECT参数不同 LF坐标参数无效,996会生效反而出错(原有需要脚本写上坐标参数得删除)

【GEE系】ChangeHumAbility不支持百分比参数

【全系】推荐使用ChangeHumNewValueEx,更全面的属性修改命令(多达81种人物属性,不仅包含元素,还有大量伤害类属性对应的抵抗属性,如暴击几率和暴击抵抗),完全可以代替ChangeHumAbility
ChangeHumNewValueEx 修改临时属性的值不需要清空,类似于ChangeHumAbility =,而不是ChangeHumAbility +
建议长效属性用ChangeHumNewValueEx,短效用ChangeHumAbility

【GEE系】[@BeginMagic]技能前触发<$MagicName>需要改为<$param2>
【GOM系】GOM靠插件实现[@ESPBeginMagic]

【GOM系】TAKEONALL 和 TAKEOFFALL 需要改成 takeonex takeoffex

【全系】Guildbase目录已废弃 覆盖guildbase目录建立行会的方式要改成 命令形式
    addguild 行会名 self -1
清空行会需要在引擎控制器或者合区工具清理,自动开合区的GM可以找助手技术修改

【全系】Dummylogon 需要在结尾加一个乱序登录参数1 不然会反复登录同一个假人

CheckMagicName 烈火剑法 检查是否学习了某个技能

经过测试,996PC的元素增伤减伤,与GOM、LF存在较大差异,当攻击方存在元素增伤时,被攻击方的元素减伤需先抵扣攻击方的元素增伤。
简单举例,攻击方100攻击,元素增伤+100%,,被攻击方元素减伤100%,仍会受到100点伤害。
介于本人对伤害计算要求较高,需要调平与GOM的差异,以下为修复代码。

[@AttackDamage]
#ACT
FORMULATION (<$DAMAGEVALUE>*(100+<$VALUE2>)*(100-<$c.VALUE3>))/((100+<$VALUE2>-<$c.VALUE3>)*100) N$最终伤害
ChangeDamageValue 0 = <$str(N$最终伤害)>

修复996PC元素减伤计算方式与GOM一致,服务器开销我测试了,只多花了0.000291秒

2025.12.23更新批注:实测<$c.VALUE3>,<$c.MAXHP>,<$c.MAXAC>等变量能丝滑取到怪物的属性和元素,以上修复脚本能同时修复攻击怪物时的伤害值

经过测试,996的暴击也与GOM/LF存在较大差异,举例如下:
GOM/LF: (人物综合攻击-怪物防御)*暴击倍数
996PC:人物综合攻击*暴击倍数-怪物防御
故得出以下修复代码,实测有效:

[@CritTrigger]
#ACT
FORMULATION <$PARAM1>-<$c.maxac> N$暴击伤害
Return <$STR(N$暴击伤害)>

2025.12.23更新批注:需要注意的是,以上公式中<$c.maxac>,取决于M2设定的暴击报数,正常暴击倍数为200%就直接用上面公式即可,如果暴击倍数300%,就需要<$c.maxac>*2,如果暴击倍数150%,择<$c.maxac>/2


99PC新特性记录

RandomGoto 100 10:@触发1|50:@触发2|100:@触发3 几率跳转

等概率或者按权限随机获取分割字符串
格式:RANSJSTR 参数1 参数2 参数3 参数4 参数5

功能: 修改无属性附加属性值(44)

格式: NEWCHANGEITEMADDVALUE 装备位置(-1时是OK框中的装备, 0~28或30~47时是穿在身上的装备) 属性位置(44) (符号 + - =) 值

检测格式:NEWCHECKITEMADDVALUE 装备位置(-1时是OK框中的装备, 0-55时是穿在身上的装备) 属性位置(44) (符号 < > = ?) 值 保存变量

获取格式:NEWGETITEMADDVALUE 装备位置(-1时是OK框中的装备, 0-55时是穿在身上的装备) 属性位置(44) 存放变量 获取方式(0获取附加属性 1=基础属性+附加属性)

装备常量: 唯一ID<$USEITEM[XX]>;IDX<$USEITEMID[XX]>;名字<$USEITEMNAME[XX]>

XX表示M2设置的装备位置支持(0-111)

取身上物品位置唯一ID
说明:原来的物品常量后面加上ID,就可以获取到装备位装备的唯一ID,如:
衣服原来的常量为:<$DRESS> 想取当前身上衣服唯一ID:<$DRESSID>
武器原来的常量为:<$WEAPON> 想取当前身上武器唯一ID:<$WEAPONID>

新自定义变量(重点)
1.不再需要以文件形式保存自定义变量,也就是以前的SAVEVAR和LOADVAR(不需要LOADVAR,但需要SAVEVAR,不过不再需要SAVE到一个文件)
2.清理全局自定义变量ClearHumCustVar
传统方法需要清空自定义变量文件,并用gmexecute重载在线玩家的自定义变量
3.更牛逼的自定义变量排序SortHumVar、HumVarRank
原本需要写一堆代码实现的功能,一行代码直接搞定,具体自己查说明书

高级分割命令 GETVALIDSTRSUPER 分割内容|分割内容|分割内容| | S$变量
输出的是S$变量1 S$变量2 S$变量3   
老命令ExtractString 不支持自定义变量自动编号

批量使用叠加消耗类型物品(只支持叠加物品)
EatItem 参数1 参数2  
[传统方法需要checkitem take之后再写一遍@STDMODEFUNC里的内容]取两个日期之间相差的天数
格式 DaysBetween 参数1:日期,参数2:日期,参数3:接收变量
取两个时间之间的相差秒数
脚本格式:Taketime 时间1 时间2
时间相差常量:<$Timeresult>

获取背包物品数量
格式:GETBAGITEMCOUNT 物品名称 变量名

禁止跑步 NoRun (0~1)

强制爆出身上物品 HumanDropUseItem 参数1 参数2

身上物品爆出时触发[@CheckDropUseItems],需要在列表二设置哪些装备会触发

数字转图片 <TextAtlas:F:N:X:Y:L>

邮件系统 MailGIVE 

使用地图参数限制角色在地图内时间 TimeMap
直接写在mapinfo里 可以省去以前写在常驻定时器里

取指定行会成员人数 GetGuildHum 

铭文系统功能 流星火雨X段伤害 恢复类药品加成 施毒术无需佩戴毒(用处不大)

货币超出21亿触发(金币不支持) [@ChangeMoneyOut]

地图播放怪物形象倒计时(支持自定义特效) MAPEFFECTFUNCALL 用来写BOSS死亡墓碑倒计时

获取指定地图怪物数量 FindMapMonster

获取指定地图玩家数量 GetPlayCountInMap

获取指定地图、指定怪物当前血量和最大血量 FindMapMonsterHealth

清理地图某范围的怪物 KillMapMon

改变技能特效 SETMAGICWILLID 参数1 参数2 参数3

设置当前攻击飘血样式 SETATTACKEFFTYPE
写在[@AttackDamage]里 符合条件情况下修改伤害值并修改飘血样式,用在自定义攻击类型 比如破碎打击

主屏幕弹出公告消息 SENDMSGNEW 弹出效果比较帅

新方式给装备设置绑定状态 SETITEMBINDSTATE

唯一ID存仓 TAKEITEMTOSTORAGE 用在自动存仓

多条件判断 IF(2)

设置剪切板内容 SETCLIPBOARDTEXT

等概率或者按权限随机获取分割字符串 
RANSJSTR 测试1#2000|测试2#1000|测试3#5000 1 3 S0 S1

脚本开启隔位野蛮功能 格式:SetSpaceMotaebo 

批量检测\拿走\给予\背包物品
功能1:批量检测背包物品
格式:CHECKITEMS 参数1 参数2 参数3
功能2:批量拿走背包物品
格式:TAKES 参数1 参数2 参数3 参数4
功能3:批量给予物品
格式:GIVES 参数1
【用处不大,原来要多行检测拿走给予的可以写成一行,有时候判断复杂的时候可以用】

设置等级锁定命令 setlocklevel

切换地图触发 [@EnterMap] 切换前地图为:<$oldmap> 新地图为:<$map>

穿脱装备入包前触发 [@TakeOffExchange] 用于清除只针对身上装备的额外加成

暴击触发 [@CritTrigger] 可修改暴击值

爆物品触发 [@ScatterBagItems] 进包前修改属性

多级脚本使用

H. 表示是英雄
O. 表示是主人
M. 表示是怪物
P. 表示是对面的角色
pex.表示攻击的目标(人物,英雄)

累加行会所有在线成员的个人变量
AddGuildHumVar 行会名称 需要累加的变量(N等等数字变量) 累加结果保存变量 

;示例
ADDGuildHumVar 兄弟团 U20 N$统计总数
sendmsg 7 兄弟团中的所有在线成员的U20变量累加合计为<$STR(N$统计总数)> 
编辑