18铜人 发表于 2024-10-29 14:58:52

2021/5/20 【BLUE引擎更新日志】修正回城坐标存取错误

2021/5/20        全套配套
---------------------------------------------------------------------------
M2
英雄纯数字名称问题
神秘人切换地图名字不还原问题
禁止交易,别人依旧可以发起交易和购买物品问题
刺杀空降问题
优化场景底层效率,优化地图关门处理流程
优化字符串分割处理、字符串格式化效率
优化自动拾取功能
优化角色名字更新、在线人数获取等
优化大封包下发(技能、存库、背包等)
优化SetAbility命令逻辑
优化变量转换流程
优化底层功能函数
修正安全区变更后重新加载可能出错问题
修正地图变量、全局自由扩展变量赋值不能覆盖问题
修正施毒术灰名计算错误问题
多少秒后可以复活变量$REVIVALDURATION,秒,-1表示不能复活,0可以立即复活,其他正数表示n秒后被杀可以复活,在对方没有反复活技能的情况下
战斗状态持续时间变量$BATTLEMODEDURATION,毫秒
增加掉落装备NPC命令:DropEquip 0|1|3 提示掉落(0/1),参数1指装备位置,可以指定多个位置,使用“|”间隔,或者使用all指定全部,参数2掉落是否提示
优化DelayCall命令
修正重新加载MapQuest可能导致引擎出错问题(包括菜单“以上所有NPC”)
支持使用4G内存
优化Event管理
优化副本管理
修正副本刷角蝇有可能导致出错问题
尝试修正脱机人数计算不对问题
添加将<$DATETIME>分离的变量:<$DATE>、<$TIME>
添加唯一ID的变量:<$UID>,确保ID唯一的前提是:不同的服务器,setup参数中的serverid唯一
!setup的下ViewWhisper=1时,引擎会显示聊天信息(原默认),
    当ViewWhisper=2时,可触发QChatMission的[@OnMonitorChatMessage],
    <$CHATMSG>是此字段【专用】获取聊天信息变量,此触发字段禁止使用文本操作,否则将引发引擎崩溃,可参考:记录聊天日志示例.txt

增加NPC命令:StrCap S1 S2 ( )                // 捕获字符串S1中“()”内的内容到S2,S1返回剩余部分
扩展NPC命令:UpgradeItem                        // 第5参数设置为99时,忽略普通属性的升级,只升级神秘属性;第4参数为鉴定属性,格式:普通鉴定属性|神秘鉴定属性|特殊属性|神技|几鉴,类似Give命令的格式,留空则不起作用
扩展NPC命令:UpgradeItemEx                // 第5参数设置为99时,忽略普通属性的升级,只升级神秘属性;第8参数为鉴定属性,同UpgradeItem的第4参数
扩展NPC命令:UpgradeItemEx                // 第4参数如果是1=5,3=5,28=7,28=8这样的“位置=数值”批量格式,则直接按第4参数修改装备普通属性,不会失败
扩展NPC命令:UpgradeDlgItem                // 第4参数设置为99时,忽略普通属性的升级,只升级神秘属性;第6参数为鉴定属性,同上
增加NPC命令:GetEquipProps                 // 身上装备位置(0~16或10000),装备位置为10000时,获取的是自定装备框的装备属性,即DlgItem
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
作用:获取装备属性值到一组变量中,n=身上装备位置0~16或10000,p=普通属性0~30,i=鉴定属性1~30,注意下面的n、p、i都是变量
                普通属性:M_EQUIP_NORM_PROPS{p}
                有效的普通属性总字符串:S_EQUIP_NORM_PROPS                                // 数值格式:1=5,3=5,28=7,28=8,等于号左边是属性位置0~30,右边是数值
                一组鉴定基础属性:S_EQUIP_EVAL_BASE_PROPS                                // 数值格式:1=5,3=5,28=7,28=8,等于号左边是鉴定属性1~30,右边是数值,结合StrTok命令使用,鉴定属性1~30可参考以前的更新说明
                一组鉴定神秘属性:S_EQUIP_EVAL_MYST_PROPS                                // 数值格式:1=5,3=5,28=7,28=8,等于号左边是鉴定属性1~30,右边是数值
                单条鉴定基础属性:S_EQUIP_EVAL_BASE_PROP_SLOT{1~4}                // 数值格式:1=5,SLOT范围1~4,表示第几条属性,属性值非0才有效
                单条鉴定神秘属性:S_EQUIP_EVAL_MYST_PROP_SLOT{1~4}                // 数值格式:1=5,SLOT范围1~4,表示第几条属性,属性值非0才有效
                单条鉴定基础属性:M_EQUIP_EVAL_BASE_PROPS{i}                                // 按鉴定属性1~30得到基础属性数值,如果有重复的属性,不能使用此变量
                单条鉴定神秘属性:M_EQUIP_EVAL_MYST_PROPS{i}                                // 按鉴定属性1~30得到神秘属性数值,如果有重复的属性,不能使用此变量
                鉴定特殊属性:M_EQUIP_EVAL_SPEC_PROPS                                        // 可以使用IsBitSet,SetBit,UnsetBit命令比较计算
                鉴定神技:M_EQUIP_EVAL_SKILL_PROPS                                                // 可以使用IsBitSet,SetBit,UnsetBit命令比较计算
                鉴定次数:M_EQUIP_EVAL_TIMES_PROPS
               
                是否有鉴定基础属性:M_EQUIP_HAS_EVAL_BASE_PROPS                        // =0没有,>0有
                是否有鉴定神秘属性:M_EQUIP_HAS_EVAL_MYST_PROPS                        // =0没有,>0有
               
获取到属性会触发本NPC的[@OnGetEquipProps]字段,附带返回变量如下,其他请查看附带示例:GetEquipProps.txt
                $PARAM(0)        // 物品ID
                $PARAM(1)        // stdmode
                $PARAM(2)        // looks
                $PARAM(3)        // 装备位置
                $PARAM(4)        // 鉴定基础属性有效条数
                $PARAM(5)        // 鉴定神秘属性有效条数

特殊属性对应数字说明,不同数字相加可以得到多个属性:
    1 八卦护身
    2 战意麻痹
    4 复活
    8 探测
    16 传送
    32 麻痹
    64 魔道麻痹

RunGate
优化加速控制,增加操作码间隔过滤(FilterOpcodes.txt),防止部分封包攻击

DBS-MySQL版
修正回城坐标存取错误
支持使用4G内存

页: [1]
查看完整版本: 2021/5/20 【BLUE引擎更新日志】修正回城坐标存取错误