本帖最后由 传奇私服 于 2021-11-3 22:34 编辑
烟花新版BLUEM2引擎包+登陆器配置器2021.05.09免费全套下载地址
请仔细阅读 【注意事项.txt】【更新必读说明.txt】
链接: https://pan.baidu.com/s/1muV8PM9_ejKO8iL-dkoSbw
提取码: wj8b
M2Server.key 为M2注册文件和M2放在一起即可
登录网关通用激活码:BSGKA-DCR3B-H4SAU-FBH2F
游戏网关通用激活码:SFCZB-AAX3C-A8UN5-SHL63
微端网关通用激活码:7GL6K-VW6EM-AK3P5-CG7H6
!请注意,从2021年开始的程序版本,不再支持windows XP、2003及以下的操作系统
2021/4/17 全套配套
---------------------------------------------------------------------------
M2
修正因怪物复活有几率出现报错问题
优化自动拾取
!去掉镜像地图,删除ADDMIRRORMAP、DELMIRRORMAP、MIRRORMAPTIME命令
换成NewCopyMap命令,格式:NewCopyMap 源地图名 副本地图标题 有效时间(秒) 是否刷怪(0/1) 结果跳转字段,返回副本地图名在:<$PARAMSTR(0)>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[@副本测试]
#act
NewCopyMap d717 猪七副本 45 1 @CreateCopyMapResult
[@CreateCopyMapResult]
#if
CompVal <$PARAMSTR(0)> ! ""
#act
map <$PARAMSTR(0)>
mov A副本地图名称 <$PARAMSTR(0)>
SendMsg 7 创建副本成功,进入副本:<$PARAMSTR(0)>
#elseact
SendMsg 7 创建副本失败
英雄跟随更及时
英雄显示主人名称问题
修正上个版本消耗修复神水出错问题
修正刷一些无效怪物导致引擎出错问题
优化MapEvent触发,配置地图名称不区分大小写
修正鉴定属性的合击威力未能生效问题,测试使用:Give 装备名称 1 0 0 24=15|24=15|0|0|1
套装属性值可根据设置显示百分比符号(配套更新)
!吃药间隔控制去掉,请在网关进行控制
!多次重新加载怪物DB后,怪物上不了毒问题
!MapEvent不建议在大地图每次移动都触发,否则可能会有性能问题
火龙神拾取触发获取不到名字问题
游戏网关
细化物品使用控制
客户端
四格版本装备界面支持称号
内挂增加快速开盾开关(可防止卡盾)
内挂增加淡化火墙效果开关
套装属性值可根据设置显示百分比符号(配套更新)
挂机被人攻击不小退
挂机死亡不关闭客户端
挂机道士可以边砍边放魔法,法师优化走位
挂机寻路内存泄漏问题
挂机路点模式适合多墙地图,解决发呆问题
挂机不断拾取他人物品问题
优化普通寻路,不走X型路线
修正小地图(小)边缘坐标获取错误
优化自动吃药规则,不卡药
优化快速攻击、魔法,提高精度
修正摆摊素材缺图报错
修正挂机自动拾取步伐问题
修正内挂保护小退认证服务器失败问题
修正一时播放太多声音导致卡盾问题
2021/4/4 全套配套
---------------------------------------------------------------------------
M2
优化mysql功能模块线程
优化地图后台管理逻辑
优化玩家视觉事物逻辑
修正引擎启动有概率出错问题
读、写玩家存档限流(大概每秒2000存档),防止DBS用爆内存
单个引擎人数限制修改为:15000->65536
性能更好的地面物品管理
优化自动拾取逻辑
商铺可批量购买
NPC、怪物名字长度扩展为:14->32
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1、使用DBCommander先把monster.db数据导出备份到文本
2、使用工具HeroDBConvertor.exe转换新monster.db(扩展名字长度)
3、使用DBCommander清空新的monster.db,并导入步骤1备份的数据文本,这时怪物名称就扩展到最长32字节
4、NPC名称更改直接在npcs.txt、merchant.txt文本编辑
5、比如“稻草人”变更为:这是名字很长的稻草人\<不死系>
6、如果怪物带换行符,爆率文件需要将对应的“\”变更为“-”
7、CustomMonNameColors.txt自定义名字颜色的怪物会全名显示(需更新客户端)
客户端
增加隐藏尸体时的渐隐效果
修正查看他人发型显示错误问题
修正死亡时的翅膀渲染顺序
时装内发光:stditems.db中时装的shine>=100,对应data\~wfashionshine.wzl文件,每50张图一个效果,有效图片的请保持连续,例:shine=100调用0~49的图片,shine=101调用50~99的图片
战士也可以自动开盾
商铺可批量购买
2021/3/14 全套配套
---------------------------------------------------------------------------
M2
修正因为扩展包裹,引擎和DBS通讯数据量变大,在大量保存数据时可能发生丢包问题
套装技能属性增加抵抗他人技能伤害设置(百分比),必须和客户端配套!
修正关闭服务器时多次释放Acceptor完成端口句柄的错误
优化网络测试、邮件、金币交易市场模块后台线程的效率
!去掉NPC元宝寄售系统
英雄分身不使用全技能模式
增加!setup参数:StrictWeaponUpgradeResult=1时,严格限制升级武器的最高点数,默认0
增加!setup参数:MultipleTitleProperties=1时,只要激活一个称号,其他称号属性都能生效,默认0
游戏网关解决被雷霆剑法麻痹后释放魔法的误封
修改killSlaveName为强制杀死随从
解决偶尔还有个别假怪问题,需配套更新!
技能优化
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
设置随机释放连击NPC命令:RANDSERIESSKILL // 主要给假人用
修正特殊技能减少CD时间溢出问题
修正连击技能间隔时间不正确问题
完善十步一杀技能效果,需要配套客户端
十步一杀、冰霜群雨支持强化技能效果
野蛮冲撞带残影效果,以区分普通跑动
修正完善雷霆剑法效果
修正三焰咒技能效果
优化战士英雄连击的起手时机
修正英雄群攻目标不全问题
英雄支持3个技能:英雄十步一杀、英雄冰霜群雨、英雄死亡之眼
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在magic.db复制对应的三个人物技能,名称前面加上“英雄”,并将descr填写上“英雄”即可
客户端可以通过 内挂->技能->英雄特殊技能不打怪 选项不打怪,有利于PK。
斗笠扩展,需要配套客户端,db中斗笠的AniCount对应资源:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4..11: 普通读取hair2.wzl、连击读取cbohair.wzl
12..14: 普通读取hair3.wzl、连击读取haircbo3.wzl
15..62: 普通读取hair4.wzl、连击读取haircbo4.wzl
63..127: 普通读取~hair5.wzl、连击读取~cbohair5.wzl // 以“~”开头的自定义资源
DBS
修正在大量保存数据时可能发生丢包问题,提高网络性能
登录器、客户端
配套支持抵抗技能伤害功能
完善部分技能特效
配套支持斗笠扩展
修正完善登录器读取列表,当2个列表都读取不到时,将尝试读取登录器目录下的主列表文件名文件(支持之前的加密)
登录器配置的物品规则列表只有1条时,客户端将不释放lsDefaultItemFilter.txt列表,可以自定义此文本
解决偶尔还有个别怪物假象问题,需配套更新!
2021/2/21 全套配套
---------------------------------------------------------------------------
M2
优化IOCP逻辑,减少内存占用
去掉M2的封加速功能
套装支持斗笠、军鼓、马牌、时装位置,需要配套更新客户端
恢复MapEvent移动触发(在一月份版本去掉此功能)
添加随机进入权重掉落模式,格式:1/3 物品名1|权重1,物品名2|权重2... 1 $GAMEGOLD ? 1 -1 // 1/3机会进入权重掉落计算,参考之前的权重掉落更新说明
提高和DBS的通讯效率,减少内存占用
假人、英雄的流星火雨技能支持使用magic.db的delay(毫秒)控制释放间隔,人物原本已支持
优化集体瞬移散开的效率
摆摊时CheckItem有效
补全购买重叠物品的日志和使用重叠物品的日志
英雄使用物品优化,记录日志主体修改为英雄
修正物品日志列表修改后不能实时生效问题
修正技能套装刷新产生的内存泄漏
在Npcs.txt、MerChant.txt添加新NPC后重新加载可实时生效
扩展仓库大小为原来的3倍(135个),mir.db数据需要使用合并工具转换后使用,全套配套更新(包括lui.pkg)!MySQL版本不需要转换数据。
新聚怪技能:79;黑暗之爪;4;42;3;15;4;20;0;0;0;42;50;44;100;46;200;50;400;55;800;60;1600;66;3200;72;6400;79;12800;86;25600;94;51200;103;102400;113;204800;124;409600;136;819200;15;550;0;0;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!setup参数MagAssemblyMonsTime是技能释放间隔时间,默认15秒
equal、large、small、isbitset支持解释嵌套变量,例如:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#act
mov M80 12345
mov S14 M80
#if
equal <$STR(S14)> 12345
#act
SendMsg 7 正确结果
#elseact
SendMsg 7 错误结果
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
添加检测是否正在摆摊的NPC命令:IsMarketStallOpened
#if
IsMarketStallOpened
#act
sendmsg 7 摆摊中...
DBS
提高和M2的通讯效率,减少内存占用
客户端
支持套装位置的扩展
补全传送、瞬移的特效
优化第三人移动动作体验
微端服务器
减少缓存内存占用,提高效率
2021/1/29 全套配套
---------------------------------------------------------------------------
M2 优化部分逻辑
客户端
微端下快速并显示小地图
打开仓库物品列表后,可以使用Ctrl+鼠标右键快速存、取仓库物品
2021/1/13 全套配套
---------------------------------------------------------------------------
M2 技能ID=72,是否允许飞到物品上开关DoFlyOnItem=0,默认0关闭,1开启
修正1229更新造成SetAbility的GM隐身不恢复问题
修正MonGen.txt集中点刷法,在新的刷怪模式下失效问题
去掉五行阵法功能!
添加幸运值变量,人物$LUCKPOINT,英雄$H.LUCKPOINT
远程脚本插件安全更新:
1) 上传远程脚本时,需要验证密码,避免捣乱,此功能需要一个正确的授权码,需要请联系工作人员免费获取(提供机器码、自定义密码),引擎和远程脚本插件需配套更新。
2) 添加脚本上传过滤列表RemoteScriptFilters.txt,修改此文本后重新加载所有NPC即可,用法:在RemoteScript.ini中的
BlacklistMode=true // 黑名单模式(默认) 列表中的NPC将使用【本地】方式加载,非列表中的NPC使用【远程】方式加载。
BlacklistMode=false // 白名单模式 列表中的NPC将使用【远程】方式加载,非列表中的NPC使用【本地】方式加载。
列表条目的格式:NPC基本目录_NPC名称-地图号,默认会生成几个例子,请打开列表参考。
3) 远程脚本服务器更新,支持用户访问控制,格式和编写方式请参阅“远程脚本服务器和插件.7z”的“说明.txt”
4) RemoteScript.ini添加用户名参数UserName,配合用户访问控制,格式:
Host=127.0.0.1
Port=8800
# 默认用户名default,拥有最大权限,示意请设置比较复杂的密码
UserName=default
# 默认密码bluem2
Password=bluem2
# 远程读取的版本
ServerVersion=热血传奇_V1.0
5) 远程脚本服务器、远程脚本插件需要配套更新!
2021/1/1 全套配套
---------------------------------------------------------------------------
M2 修正重新加载NPC后城堡标志设置错误问题
Npcs.txt也可以修改后重新加载(之前只支持Merchant.txt)
全局字符串限制长度为1024
添加变量$CURITEMINDEX,当前将出产物品的ID
添加变量$ITEM(NN),主要用于展示背包的物品,NN为物品的ID,客户端鼠标指向物品图标有属性展示,下面有例子,需要同时更新客户端
[@PickupItem]触发的<$PARAM(3)>修改为掉落者名称
主菜单添加重新加载MapQuest脚本功能
修正少数情况下NPC脚本参数个数识别错误问题
改善法师英雄
魔法设置面板添加:忽视护体神盾、忽视强化骷髅伤害减免、忽视内功伤害减免 开关,默认关闭,开启则在忽视几率触发的情况下起作用
客户端
修补NPC对话框处理部分图片类对象
完善聊天栏、对话框等的装备显示
支持SetAbility动画效果,需要定义好效果文件AbilityEffects.txt,并将文件放到data目录,聊天栏打:~ReloadAE 命令可重新加载文件
聊天栏、对话框、跑马灯修正装备显示位置,支持[Ctrl+鼠标中键]查看佣兵契约纸
NPC脚本会自动补全#IF,比如:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[@测试]
;会自动再内存补全下面2条语句,不修改脚本文件,之前下面的例子不会执行SetRandomNO这句
;#if
;true
#act
SetRandomNO 10000
#if
compval <$RANDOMNO> < 1000
#act
sendmsg 3 特等奖<$RANDOMNO>
#elseif
compval <$RANDOMNO> < 7000
#act
sendmsg 7 鼓励奖<$RANDOMNO>
#elseact
sendmsg 7 谢谢参与<$RANDOMNO>
扩展SetAbility,第5参数是自身效果id,id对应AbilityEffects.txt的条目效果,
参考附件AbilityEffects.txt,此文件需要放在客户端的data目录,格式:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;ID(1~65535不要重复) WIL名称 起始图片 帧数 帧间隔 声音 声音循环(0/1) 特效模式(0/1)
1 Prguse2 110 15 80 Wav\powerup.wav 1 1
2 Prguse2 90 19 80 Wav\powerup.wav 1 1
脚本示例: // 一个Ability带三个动画效果
SetAbility 51 80 15 "" 1
SetAbility 51 80 15 "" 2
SetAbility 51 80 15 某buffer恢复正常 3
QF添加怪物掉落极品触发:[@MonDropItemDown],极品指HintItemList.txt中存在的物品,需要同时更新客户端
触发时支持的变量:<$PARAM(0)>:手动丢弃(0/1) <$PARAM(1)>:物品名 <$PARAM(2)>ooks <$PARAM(3)>:掉落者名称,<$PARAM(4)>:地图名,
<$PARAM(5)>:X坐标 <$PARAM(6)>:Y坐标 <$PARAM(7)>:物品ID <$PARAM(8)>:掉落者Race(人物1,英雄60)
例1:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[@MonDropItemDown]
#act
; 下面几句是为了显示为一条信息,可能不太准确
mov MDropItemID <$PARAM(7)>
inc SMonDropDownItems <$ITEM(MDropItemID)>
DelayGoto 64 ~MonDropItemDown
[~MonDropItemDown]
#if
compval <$STR(SMonDropDownItems)> ! ""
#act
SendScrollMsg <$PARAM(4)>的<$PARAM(3)>掉落:<$STR(SMonDropDownItems)>(点击物品可暂停漂移) 151 16
mov SMonDropDownItems ""
例2:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[@吆喝]
#say
先放上你要吆喝的物品,放置完成后点击<开始吆喝/@开始吆喝>开始叫卖。\ \<返回/@back> <关闭/@exit>
#act
QueryItemDlg 放上吆喝的物品 @ShowMyItem 0
[@ShowMyItem]
#act
GetDlgItemId MShowItemID
inc SShowItems <$ITEM(MShowItemID)>
delaygoto 100 @吆喝
[@开始吆喝]
#if
compval <$STR(SShowItems)> ! ""
#act
SendScrollMsg 【<$USERNAME>】出售物品:<$STR(SShowItems)>(点击物品可暂停漂移) 151 16
mov SShowItems ""
close
例3:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[@showItems]
#act
SetDlgItem 屠龙
FormatStr %s <$DLGITEMSHOW>
SetDlgItem 怒斩
FormatStr "%s %s" <$CALCRESULT> <$DLGITEMSHOW>
SetDlgItem 龙牙
FormatStr "%s %s" <$CALCRESULT> <$DLGITEMSHOW>
SetDlgItem 逍遥扇
FormatStr "%s %s" <$CALCRESULT> <$DLGITEMSHOW>
#say
装备:<$CALCRESULT>\ \<返回/@back> <关闭/@exit>
MapQuest添加拾取触发,文件MapQuest.txt,
触发时支持的变量:同上
掉落物品的角色,如果下线或消失,角色名将为空,一般设置物品消失的时间比怪物消失的时间长
例:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;地图 变量 判断 角色名 物品名 执行文件名
3 [123] 0 蛤蟆/玩家名 乌木剑 QPickup1 // QPickup1指向MapQuest_def目录下的QPickup.txt脚本
3 [123] 0 * 屠龙 QPickup2
添加远程脚本功能
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1) 引擎成功加载RemoteScript.dll,可以使用远程脚本功能,
RemoteScript.ini是参数设置文件,其中:
Host=127.0.0.1 // 远程NPC脚本服务器的IP地址
Port=8800 // 远程NPC脚本服务器的端口
Password=bluem2 // 连接密码
ServerVersion=热血传奇_V1.0 // 服务器的版本,会以此标识上传、加载远程脚本数据,可动态修改
要加载远程NPC脚本:勾选 引擎主菜单-管理-使用远程脚本,勾选后,重新加载NPC或开启引擎会加载远程服务器的NPC脚本数据
最好要保证远程脚本服务器能和引擎服务器通讯够顺畅,否则远程加载NPC脚本速度会变慢。
启用远程加载脚本后,本地脚本文件的内容可以清空
2) 远程脚本服务器参见附件:RemoteScriptServer.7z
修改参数文件config.conf,以达到自己的要求,主要修改其中的端口和连接密码,参考压缩包中的“说明.txt”
修改完,运行:启动.bat 即可
3) 引擎成功加载RemoteScript.dll,适当修改脚本之后,可以点击 引擎主菜单-管理-上传脚本数据,
可以使用专门的测试服务器修改、上传脚本,其他连接同一远程脚本服务器的引擎,只需要重新加载所有NPC即是最新状态。
4) 涉及文件在压缩包目录:通用-远程NPC脚本 中,注意连接设置正确性,否则将导致引擎卡顿
|