
必须同时更新 GameLogin.exe M2Server.exe
修复引擎一个卡死问题
增加穿脱触发
增加传送戒指,使用传送命令时触发
[@TakeOnEx]
#ACT
SENDMSG 6
人物穿装备,位置<$CURRTAKETEMPOS>,物品<$CURRTEMNAME>(<$G_CURRTEMNAME>),ID<$CURRTEMMAKEINDEX>
[@TakeOffEx]
#ACT
SENDMSG 6
人物脱装备,位置<$CURRTAKETEMPOS>,物品<$CURRTEMNAME>(<$G_CURRTEMNAME>),ID<$CURRTEMMAKEINDEX>
[@HeroTakeOnEx]
#ACT
SENDMSG 6
英雄穿装备,位置<$CURRTAKETEMPOS>,物品<$CURRTEMNAME>(<$G_CURRTEMNAME>),ID<$CURRTEMMAKEINDEX>
[@HeroTakeOffEx]
#ACT
SENDMSG 6 英雄脱装备,位置<$CURRTAKETEMPOS>,物品<$CURRTEMNAME>(<$G_CURRTEMNAME>),ID<$CURRTEMMAKEINDEX>
人物使用传送命令时,QF触发
[@ConfirmMove]
#ACT
;ConfirmMove (1=禁止
0=允许)
ConfirmMove 1
sendmsg 6 你已经被禁止传送
必须同时更新 GameLogin.exe M2Server.exe
累加行会中所有在线成员的个人变量
AddGuildHumVar 行会名称 需要累加的变量(N等等数字变量) 累加结果保存变量
;示例
ADDGuildHumVar 兄弟团 U20 N$统计总数
sendmsg 7
兄弟团中的所有在线成员的U20变量累加合计为<$STR(N$统计总数)>
;-----------------------------------------------------------------------------------
按在线人数排序,导出行会名称
SortGuildToList 导出文本路径 排序模式(0,1) 保存模式(0=只有行会名称,1=以冒号分割
行会名称:在线人数)
;示例
SortGuildToList ..\QuestDiary\行会名称.txt 0 0
;-----------------------------------------------------------------------------------
导出行会在线成员数据
GuildSaveToList
导出文本路径 行会名称 成员的变量或常量
;示例
GuildSaveToList ..\QuestDiary\行会成员数据.txt
<$USERNAME>|<$LEVEL>|<$STR(S$伤害统计)>|<$STR(S$杀敌人数)>
;-----------------------------------------------------------------------------------
微信红包生成到文件
RedEnvelopeSaveToList
导出文本路径 红包总金额 模式(0平均,1随机) 红包数量 最小红包(随机模式有效) 最大红包(随机模式有效,必须大于平均值,设置为0时自动模式)
;示例
[@生成红包到文件]
#ACT
RedEnvelopeSaveToList ..\QuestDiary\红包.txt 1000
1 20 5 100
必须同时更新 GameLogin.exe M2Server.exe
个人商店商铺 购买和取款 QF触发
加入行会前QF触发
增加脚本命令GIVE物品后,进行关联LinkGiveItem
增加脚本命令LoadFileToMemoryEx和LoadFileToMemory用法一样,这个命令是用于通区数据
增加脚本命令FileExists(检测文件是否存在)、DeleteFile(删除文件)
扩展checkitem命令
优化脚本运行速度
修复已知BUG
常量:
当前卖家名字 <$USERSHOPSELLER>
当前买家名字
<$USERSHOPBUYER>
当前购买或出售的物品常量和以前通用 <$CURRTEMNAME>
<$G_CURRTEMNAME> <$CURRTEMINDEX>
<$CURRTEMMAKEINDEX>
当前购买或出售的物品使用的货币类型名称
<$BUYITEMMONEYTYPENAME>
当前购买或出售的物品使用的货币类型值
<$BUYITEMMONEYTYPE>
当前购买或出售的物品的价格 <$BUYITEPRICE>
;购买触发 买家触发
[@BuyUserShopItem]
#IF
#ACT
sendmsg 6
你购买了<$USERSHOPSELLER>出售的摆摊物品<$G_CURRTEMNAME>,ID:<$CURRTEMINDEX>,货币名称:<$BUYITEMMONEYTYPENAME>,货币类型:<$BUYITEMMONEYTYPE>,物品价格:<$BUYITEPRICE>
;取款触发 卖家触发
[@GetUserShopItemMoney]
扩展checkitem命令
checkitem 物品名称 数量 是否部分匹配(0=名称必须完全一样,1=名称部分一样) 是否检测改名名称(0=不检测 1=检测)
;加入行会成员前的QF触发
[@ConfirmGuildAddMember]
#ACT
;ConfirmGuildAddMember
(1=禁止 0=允许)
ConfirmGuildAddMember 1
sendmsg 6 已经被禁止加入行会
[@main]
#if
#act
GIVE 乌木剑
1
;给一个物品
LinkGiveItem
;关联这个物品
CHECKITEMADDVALUE -1 0 +
1
;脚本命令操作该物品
SENDUPGRADEITEM
;修改后的参数,刷新到客户端
[@main]
#if
FileExists
..\QuestDiary\数据.txt
;检测“..\QuestDiary\数据.txt”
是否存在
#act
;删除“..\QuestDiary\数据.txt”
DeleteFile ..\QuestDiary\数据.txt
必须同时更新 GameLogin.exe M2Server.exe
修复透视一个问题
修复微端一个问题
增加透视物品一些选项
增加31类物品支持叠加
必须同时更新 GameLogin.exe M2Server.exe
修复透视物品光柱绘制错误
增加透视物品是否显示光柱(查看-列表信息二
)
修改透视看到的物品就是爆出来的物品,不能爆的物品不透视
内挂如果没有勾选自动捡取的,透视的物品也不会显示
透视到什么物品,杀死后怪物就爆什么物品,不爆的物品,透视不显示
如果开通人物杀怪爆率倍数,两个不一样的杀怪物爆率倍数的玩家
看到的透视物品可能不相同,当然杀死怪物爆的物品也不一样
如果没有开通人物杀怪爆率倍数,所有人看到的透视物品一样
必须同时更新
GameLogin.exe M2Server.exe
增加SetMonBurstItems支持多行
增加脚本命令IncFileList
增加无视爆物品控制怪物(查看-列表信息一)
增加爆率透视功能(查看-列表信息二,SHOWMONITEM
参数(0=关闭 1开启透视))
必须同时更新 GameLogin.exe M2Server.exe
增加叠加物品OverLap=3时,叠加物品重量不变(不管叠加多少个,物品重量不变)
增加<$CONST(X)>用法
增加脚本命令获取来源信息GETITEMCREATEINFO
增加64位引擎(有两个64位引擎,一个是64位引擎,另外一个是64位多线程引擎)
---------------------------------------------------------------------------------------
获取来源信息
GETITEMCREATEINFO 装备位置(-1时是OK框中的装备, 0~18或30~41时是穿在身上的装备) 变量1(0=没有来源 1GM创建 2NPC创建 3购买的商铺的 4购买的NPC商店里的 5怪物爆的 6系统刷的 7挖矿 8挖的 9宝箱) 变量2(自定义来源信息) 变量2(人物名称) 变量4(怪物名称) 变量5(地图名称) 变量6(时间)
---------------------------------------------------------------------------------------
增加<$CONST(X)>用法,表示X不是变量,就是一个常量字符,一些地图名称以变量名称开头的等等地方,可以用<$CONST(X)>表示
这样就不在把<$CONST(X)>当成变量,造成脚本错误,例如:
[@main]
#Act
MOV N0
3
;这里的N0的变量值等于“3”是把“3”当成地图名称,还是把“N0”当成地图名称,引擎以前有这方面的处理,优先检查有没有N0这个地图
;现在可以直接设置成地图名称
MAP
<$CONST(N0)>
;表示传送到地图名称为“N0”的地图
必须同时更新 GameLogin.exe M2Server.exe GameOfMir引擎控制器.exe
增加叠加物品OverLap=3时,叠加物品重量不变(不管叠加多少个,物品重量不变)
必须同时更新 GameLogin.exe M2Server.exe GameOfMir引擎控制器.exe
增加脚本命令ChangeSlaveAbility和GetSlaveAbility
修复启动器在2003系统启动不了的问题
修复微端一个问题
优化一些封包和数据
------------------------修改宝宝属性-----------------------------
ChangeSlaveAbility 参数1 参数2 参数3
参数1 属性类型 1,HP 2,MAXHP 3,AC 4,MAXAC 5,MAC
6,MAXMAC 7,DC 8,MAXDC 9,MC 10,MAXMC 11,SC 12,MAXSC 13,appr(就是宝宝样子) 14,移动速度
15,攻击速度
参数2 属性值
参数3 宝宝名字 可不写
不写为所有宝宝
------------------------获取宝宝属性-----------------------------
GetSlaveAbility
参数1 参数2 参数3
参数1 属性类型 2,MAXHP 3,AC 4,MAXAC 5,MAC 6,MAXMAC 7,DC 8,MAXDC 9,MC
10,MAXMC 11,SC 12,MAXSC 13,appr(就是宝宝样子) 14,移动速度 15,攻击速度
参数2 变量 必须是完整格式的整数型变量
比如<$STR(N88)> <$STR(N$宝宝血量)>
参数3 宝宝名字 同名宝宝取第一个宝宝的属性
本次更新全套
增加脚本命令LoadFileToMemory一般在引擎启动时使用该命令
修复WIL编辑器密码读取错误
修改登录器微端模式,强制创建目录
修改捡物精灵不简装
LoadFileToMemory 文件(文件不能是通区数据文件,不支持绝对路径) 类型(0=普通文件
1=INI格式文件)
该命令作用是,把脚本用到的数据文件加载到内存里,脚本命令读取的时候就不用从硬盘读取该文件了
--------------------------------------好处--------------------------------------
已经在启动的的时候加载到内存,直接在内存读写,读写速度快,用在读写比较频繁的文件,比如捡取触发等等,
每秒引擎每隔一段时间,保存一次该文件,不会频繁读写硬盘。
--------------------------------------缺点--------------------------------------
不能手动修改该文件,只能通过脚本命令读写
--------------------------------------------------------------------------------
[@Startup]
#ACT
LoadFileToMemory
..\QuestDiary\数据\名单.txt
LoadFileToMemory ..\QuestDiary\数据\战力排行数量.txt
[@main]
#IF
CHECKTEXTLIST ..\QuestDiary\数据\名单.txt
<$USERNAME)>
#SAY
你的名字已经保存
#ELSEACT
AddTextList
..\QuestDiary\数据\名单.txt <$USERNAME)>
SENGMSG 6
写入后,不能立即保存到文件里,引擎每隔一段时间自动保存