传奇BLUE引擎2020-2021重要更新说明
更新BLUE2020.01.11-2021版引擎,需要大家认真详细查看下方内容,否则使用新引擎会遇到莫名其妙问题1、使用DBCommander先把monster.db数据导出备份到文本
2、使用工具DBConvertor.exe转换新monster.db(扩展名字长度)
3、使用DBCommander清空新的monster.db,并导入步骤1备份的数据文本,这时怪物名称就扩展到最长32字节
4、NPC名称更改直接在npcs.txt、merchant.txt文本编辑
5、比如“稻草人”变更为:这是名字很长的稻草人<不死系>
【人物数据错乱、出现极品变态属性、变态的鉴定附加神秘属性、商城出现上亿的元宝购买价格】
以上错误是因为客户端不正确,请更换程序包里的客户端文件夹里的如下:客户端dat
bluem2_client.dat合计版
bluem2_client2.dat 连击版
bluem2_client3.dat 复古版
【人物等级错乱、血量溢出、登录黑屏、无法正常进入游戏】
请配换配套的游戏网关RunGate.exe 以及 DBServer.exe 因为有些数据是之前的程序结构,所以会出现黑屏!其次就是登录器需要配套。
最重要的就是登录器,只能使用程序包里的登录器配置器生成的登录器才能正常进入游戏。
【自定义LOGO,不显示】
生成登录器的时候,自定义LOGO 为PNG格式 透明背景,能减少一些大小。
LOGO完成后,使用自动更新功能将LOGO更新到玩家的客户端里即可显示。
【还有部分使用BLUE引擎2020.01.11的GM说游戏很卡】
首先建议是进行优化过多的需要重复检测写入文本的脚本,进行修改,一旦脚本写的不好,也会导致游戏卡顿。
如果是因为释放技能或者移动攻击出现了人物1秒定住,
请使用【网关伴侣】进行对网关设置相关的移动速度以及恢复默认设置。
================================================================================
注意1:
setup.txt 增加参数:TaosNomAtkDiffLvVal = 0,非0时,道士英雄比怪物多X级时,只使用普通攻击,精神力战法开关可以控制
注意2:
之前的更新:magic.db的Power/MaxPower/DefPower/DefMaxPower魔法输出计算修改为受个人的幸运值影响,
现为以上更新增加开关:!Setup.txt增加开关(默认关闭):CalcDBPowerWithLuck=0,开启则攻击输出受个人的幸运值影响
物理攻击现在可以使用Power/MaxPower调节威力,一般情况下,此2项的值都是0
================================================================================
注意3:
【QuestDiary】文件夹触发脚本路径,统一修改为“..”:
举例老模式:
addLineList QuestDiary olelist.txt <$USERNAME>废除
addLineList .QuestDiary olelist.txt <$USERNAME> 废除
addLineList ..QuestDiary olelist.txt <$USERNAME> 支持
新模式统一:
addLineList ..QuestDiary olelist.txt <$USERNAME>
提示:废除“QuestDiary”、“.QuestDiary”
“..”表示上一目录。
使用举例:假设我们需要获取版本行会名单里的第一行内容:
READLINE ....GuildBaseGuildList.txt 1S0
快速扩展的方法:使用文本替换工具,将【 QuestDiary】和【 .QuestDiary】替换为【..QuestDiary】,注意前面两个有空格。(替换前记得备份)
================================================================================
注意4:
NPC文本操作命令非常消耗资源,特别时文本较大、操作频繁或脚本不合理时,服务器会严重卡顿。
优化NPC文本操作命令,文本会载入到内存中操作,直接修改文本操作现在不会生效。
!setup.txt UseFastTextFile = 1代表开启引擎默认(“0”无效数字)
文本操作命令扩展命令“HardDisk”(实时读写硬盘数据,否则在内存操作,如果脚本中不写“HardDisk”,引擎会1分钟自动保存一次物理硬盘本地。)
只需要对特性的文件做HardDisk操作就可以,这样能提升游戏的性能。
使用举例:假设我们要将指定的字符串写入指定文本内,我们用“ADDLINELIST”演示。
addLineList ..QuestDiary olelist.txt123456789;代表只写入内存里,但没写入到文本内。
addLineList ..QuestDiary olelist.txt123456789 HardDisk ;增加“HardDisk”命令实时写入文本,跟老模式没区别!
//第2参数为:HardDisk,实时读写硬盘数据,否则在内存操作
ADDNAMELIST ◆将人物名称加入列表
ADDGUILDLIST ◆将人物行会名加入列表
ADDACCOUNTLIST ◆将人物帐号加入列表
ADDIPLIST ◆将人物IP加入列表
DELNAMELIST ◆删除列表中人物名称
DELGUILDLIST ◆删除列表中行会名称
DELACCOUNTLIST ◆删除列表中人物帐号
DELIPLIST ◆删除列表中人物IP
CHECKNAMELIST ◆检查人物是否到列表中
CHECKACCOUNTLIST ◆检查人物登陆帐号
CHECKIPLIST ◆检查人物登陆IP
CHECKGUILDLIST ◆检查行会是否到列表中
ClearNameList ◆清除列表内容。
CheckAccountIPList ◆检查登录帐号与IP是否匹配
CheckNameIPList ◆检查人物名称是否与IP匹配。
AddNameDateList ◆添加名称日期列表
DelNameDateList ◆删除名称日期列表
CheckCodeList ◆检测代码列表
DelCodeList ◆删除代码列表
AddUseDateList ◆添加使用日期列表
DelUseDateList ◆删除使用日期列表
WriteLineList ◆文件列表
DeleteLineList ◆删除列表
INI_RELOAD ◆重新加载文件,可以用于手动修改了文本文件的情况下。
//第3参数为:HardDisk,实时读写硬盘数据,否则在内存操作
ADDLINELIST ◆将指定变量和字符内容写入,指定文本内。
DELLINELIST ◆指定文本内的变量和字符内容删除。
CHECKSTRINGLIST ◆检查字符串是否在指定文件中。
ReadRandomLine ◆随机型. 从指定文件内随机读取一行到变量中。
ReadRandomStr ◆概率型. 从指定文件内随机读取一行到变量中。
//第4参数为:HardDisk,实时读写硬盘数据,否则在内存操作
ReadLine ◆获取指定行数的一行字符到S10,或A10(全局)。
DeleteLine ◆获取指定行数的一行字符到S10,或A10(全局),并删除该行
WriteLine ◆写文字到指定行数,覆盖方式
InsertLine ◆插入文字到指定行数,非覆盖
CheckNameListPostion ◆检查玩家在列表中的位置
//第6参数为:HardDisk,实时读写硬盘数据,否则在内存操作
CheckUserDateType ◆检查用户日期类型
//第7参数为:HardDisk,实时读写硬盘数据,否则在内存操作
CheckNameDateList ◆检查用户会员日期
------------------------------------------------------------------------------------------------------------------------------
注意:
ReadRandomLine
ReadRandomStr
ReadLine
DeleteLine
以上4个命令,在获取文本内容时。当检测到内容是空时,变量返回的内容是当前变量最后一次保存的内容。
举例:我们使用S10 这个变量,这个变量最后一次使用储存值是123123
此时我们用上面4个命令,获取到内容空,这时S10给我们的变量是123123
有些朋友会在用以上命令写脚本检测,检测抽取文本内容为空,则跳转到下一个执行脚本。
解决方法:
ReadRandomLine ..QuestDiary olelist.txt S10
MOV S11 S10
MOV S10 ;每次运行完毕后,将变量清空,再进行检测。或者在运行前先,将S10清空。
------------------------------------------------------------------------------------------------------------------------------
LoadVar第4参数为:HardDisk,实时读写硬盘数据
SaveVar第4参数为:HardDisk,实时读写硬盘数据
CalcVar第5参数为有效的文件名时,将保存到该文件内存中,并且第6参数为:HardDisk时,还将实时读写硬盘数据
举例“LOADVAR”我们常在用的地方和新引擎的使用方法:
LOADVAR GLOBAL 测试变量1 ..QuestDiary测试变量全局.ini HardDisk (我们手动修改过文本,这样可以实时加载到内存,没“HardDisk”则无效。)
举例“SaveVar”我们常在用的地方和新引擎的使用方法:
CALCVAR GLOBAL 测试变量1 = 0
SAVEVAR GLOBAL 测试变量1 ..QuestDiary测试变量全局.ini HardDisk (“HardDisk”写入到了物理硬盘本地,无则代表内存中!)
举例“CalcVar”第5参数新写法例子:
CalcVar GLOBAL 测试变量1 = 0 ..QuestDiary测试变量全局.ini HardDisk
这种写法代替老模式(老模式的写法可以继续使用)
CALCVAR GLOBAL 测试变量1 = 0
SAVEVAR GLOBAL 测试变量1 ..QuestDiary测试变量全局.ini HardDisk
◆特别注意:加载个人变量和 全局变量 都需要加 “HardDisk”!否则会出现数据错乱。 谢谢楼主!喜欢这里的东西,方便又好用! 谢谢楼主!喜欢这里的东西,方便又好用! 这东西我收了! 传奇论坛里面相对来说比较好的一个!感谢站长分享的技术教程。 感谢楼主提供这么好的论坛! 谢谢楼主!喜欢这里的东西,方便又好用! 开传奇一条龙不求人,自己学习架设。 新手上路不用愁,碰到传奇架设问题可以来这搜索。 感谢站长分享开区一条龙教程,新手能学习到很多知识。
页:
[1]
2