查看: 169|回复: 0

2019/10/22【BLUE引擎更新日志】M2每1开网关端口的人数限制从6000提高到8000

[复制链接]

2275

主题

129

回帖

5690

积分

版主

积分
5690
威望
374
金币
1282
贡献
4031
发表于 2024-10-24 21:18:38 | 显示全部楼层 |阅读模式

Blue引擎+登录器+程序全部免费开放,QQ快捷登陆,加入BLUE引擎论坛!

您需要 登录 才可以下载或查看,没有账号?立即注册

×

2019/10/22        !全套程序配套使用
---------------------------------------------------------------------------
M2加入自动更新功能,可在关于菜单设置是否自动检测更新
M2可储存ints从0~9扩展到0~29,尽量使用此变量,避免使用直接读写文本的自定义变量
M2每1开网关端口的人数限制从6000提高到8000
提高M2处理游戏流量的能力
修正上个版本可能存在跑位空气墙问题
游戏网关接收缓冲区大小自适应,增加发送缓存以提高处理流量能力(内存相对上个版本会多一些)
游戏网关修正关闭程序时的一个bug
M2/DBS改写人物数据存取逻辑,大幅度提高存取数据的效率
修正很小的可能造成个别玩家数据存储错误bug,需要配套更新M2和DBServer
修正挂机假人会攻击人物下线时刻的英雄
扩展NPC命令:compval <$USERID> ^ "userid"        // $USERID是否以userid开头
扩展NPC命令:compval <$USERID> ` "userid"        // $USERID是否以userid结尾
登录器支持自配置自动刷新服务器列表
登录器配置器可自定义客户端logo,png格式,可利用登陆器更新功能下载至传奇目录,留空使用默认logo(建议使用PS裁剪掉透明部分以减少文件大小)
KillMonGetFullExp +/-/= 秒数                                // 高等级杀怪获取全部经验时间(秒),存库
REFITEMSHAPE 位置 数值                                                // 引用某同类型物品外观,位置:0衣服 1武器,数值参考stditems.db中的物品idx,存库,(连击合击版本才支持)

---------------------------------------
增加角色改名功能,详见附件示意脚本,改名之前,如果有武器正在升级,需要取回

---------------------------------------
推广ID功能
登录器配置器增加“推广ID”的填写,最多14字节(7个汉字)
游戏内获取推广ID的脚本变量:<$ADID>

---------------------------------------
增加NPC命令:SetAbility 位置(0~100) 数值 持续秒数 结束时的提示字符(留空不提示)
其中有如下49个固有属性,其他的50-100可以用作临时计时变量,也可以作为计时器使用。

[@SetAbility]
#ACT
SetAbility 10 15 30 暴击附加属性恢复正常。
SENDMSG 5 获得暴击附加属性15点,持续30秒。
;SetAbility 10 0 0 暴击附加属性恢复正常。  // 立即清理位置10的属性
;SetAbility clearup // 清理所有属性

位置对应属性:
  0 // 腕力
  1 // 负重
  2 // 背包重量
  3 // 准确
  4 // 敏捷
  5 // 魔法躲避 每一点代表10%,10点即为100%。
  6 // 毒物躲避 每一点代表10%,10点即为100%。
  7 // 中毒恢复 每一点代表10%,10点即为100%。
  8 // 生命恢复 每一点代表10%,10点即为100%。
  9 // 魔法恢复 每一点代表10%,10点即为100%。
  10 // 暴击
  11 // 目标爆率
  12 // 防爆
  13 // 忽视 属性为百分比,最大为100。
  14 // 增伤 属性为百分比,最大为100。
  15 // 反射 属性为百分比,最大为100。
  16 // 物减 属性为百分比,最大为100。
  17 // 魔减 属性为百分比,最大为100。
  18 // 吸血
  19 // 幸运
  20 // GM隐身(观察模式)
  21 // GM无敌
  22 // 禁止使用物品
  23 // 禁止丢弃
  24 // 禁止移动
  25 // 禁止跑步
  26 // 禁止物理攻击
  27 // 禁止魔法攻击
  28 // 稳如泰山(不可被野蛮推动)
  29 // 禁止召唤英雄
  30 // 禁止修改攻击模式
  31 // 禁止使用仓库
  32 // 麻痹模式
  33 // 魔道麻痹
  34 // 复活
  35 // 护身
  36 // 传送
  37 // 探测
  38 // 隐身
  39 // 破麻
  40 // 防毒
  41 // 破复活
  42 // 破护身
  43 // 背包不掉
  44 // 装备不掉
  45 // 攻击加速(10点以下为减速度,10点以上为加速度,与武器一致)
  46 // 禁止交易
  47 // 禁止摆摊
  48 // 禁止出售物品

---------------------------------------
新增爆率文件引入用法,可以和以前的爆率混搭使用,支持多个文件被同时调用,方便编辑爆率
  比如在 白野猪.txt 写入如下内容:        // MonDropItems目录位于MonItems目录下
  #CALL [MonDropItems\药品爆率.txt]
  #CALL [MonDropItems\衣服爆率.txt]

---------------------------------------
支持爆率变量检测,兼容老格式,满足指定条件,物品才会爆出:
1/x 装备名称 数量 $检测变量 检测符(><=!?) 检测数 扣除“$检测变量”的数量(负数扣除,正数增加) 普通随机掉落是否必定扣除(0/1),设置1即使没有掉落也扣除,默认关闭
检测符: ?表示>=,^和`用于字符串检查
扣除: 和爆率没有关系,只关联检查条件,设置数值为0不进行扣除
例子:
1/1 强效太阳水 1 $GOLDCOUNT ? 0 100000                // 增加10万金币
1/3 强效太阳水 1 $GAMEGOLD ? 100 -100                // 元宝>=100时,有1/3几率计算掉落物品,否则不掉;元宝>=100时,扣除100元宝
1/8 某区物品   1 $SERVERNAME = XX传奇1区        // XX传奇1区 才有可能爆出
1/8 某物品     1 $USERID ^ head                                // 账号以head开头 才有可能爆出
1/8 某物品     1 $USERNAME ` tail                        // 角色名以tail结尾 才有可能爆出

支持变量:
  $SERVERNAME
  $SERVERIP
  $WEBSITE
  $BBSSITE
  $CLIENTDOWNLOAD
  $QQ
  $PHONE
  $BANKACCOUNT0
  $BANKACCOUNT1
  $BANKACCOUNT2
  $BANKACCOUNT3
  $BANKACCOUNT4
  $BANKACCOUNT5
  $BANKACCOUNT6
  $BANKACCOUNT7
  $BANKACCOUNT8
  $BANKACCOUNT9
  $GAMEGOLDNAME
  $GAMEPOINTNAME
  $USERCOUNT
  $MACRUNTIME // 服务器开启天数
  $SERVERRUNTIME // 引擎开启分钟数
  $DATETIME:  // 当前日期,格式:2019-11-12
  $CURRENTMAPDESC // 地图
  $CURRENTMAP  // 地图文件名
  $CURRENTX
  $CURRENTY
  $GENDER  // 0,1
  $JOB  //0,1,2
  $ABILITYADDPOINT0..ABILITYADDPOINT6
  $ABILITYADDTIME0..ABILITYADDTIME6
  $USERNAME
  $USERID
  $CURITEMID
  $ATTINFO_SKILLID
  $ATTINFO_RACE
  $ATTINFO_ISHERO
  $ATTINFO_NAME
  $ATTINFO_FNAME
  $ATTINFO_MNAME
  $CURTITLENAME
  $MEMBRETYPE
  $MEMBRELEVEL
  $RANDOMNO
  $RELEVEL
  $GUILDHUMCOUNT
  $GUILDNAME
  $RANKNAME
  $LEVEL
  $COLLECTEXP
  $COLLECTIPEXP
  $HP
  $MAXHP
  $MP
  $MAXMP
  $AC
  $MAXAC
  $MAC
  $MAXMAC
  $DC
  $MAXDC
  $MC
  $MAXMC
  $SC
  $MAXSC
  $HIT
  $SPD
  $BONUSPOINT
  $BONUSABIL_AC
  $BONUSABIL_MAC
  $BONUSABIL_DC
  $BONUSABIL_MC
  $BONUSABIL_SC
  $BONUSABIL_HP
  $BONUSABIL_MP
  $BONUSABIL_HIT
  $BONUSABIL_SPD
  $BONUSABIL_X2
  $EXP
  $MAXEXP
  $PKPOINT
  $HW
  $MAXHW
  $BW
  $MAXBW
  $WW
  $MAXWW
  $HUNGER
  $CREDITPOINT  // 支持扣除操作
  $GOLDCOUNT // 支持扣除操作
  $GAMEGOLD // 支持扣除操作
  $NIMBUS // 支持扣除操作
  $GAMEPOINT // 支持扣除操作
  $GAMEDIAMOND // 支持扣除操作
  $GAMEGIRD // 支持扣除操作
  $INTS0..INTS30  // 支持扣除操作
  $LOGINLONG // 登录时长,分钟
  $DRESS        // 衣服名
  $WEAPON        // 武器名
  $RIGHTHAND
  $HELMET
  $NECKLACE
  $RING_R
  $RING_L
  $ARMRING_R
  $ARMRING_L
  $HELMETEX  // 非176版本
  $BUJUK  // 非176版本
  $BELT  // 非176版本
  $BOOTS  // 非176版本
  $CHARM  // 非176版本
  $DRUM  // 非176版本
  $HORSE  // 非176版本
  $FASHION  // 非176版本
  $HWID
  $YEAR
  $MONTH
  $DAY
  $HOUR
  $MINUTE
  $SECOND
  $MILLISECONDS
  $MONDROPRATE
  $IPADDR
  $IPLOCAL
  $GUILDBUILDPOINT
  $GUILDAURAEPOINT
  $GUILDSTABILITYPOINT
  $GUILDFLOURISHPOINT
  $STR(XX) // 支持扣除操作,其中的全局变量不要频繁使用,否则造成服务器卡顿
  $H.STR(XX) // 支持扣除操作,其中的全局变量不要频繁使用,否则造成服务器卡顿
  $HUMAN(XX) // 支持扣除操作,定义为内存操作将会自动保存,否则不自动保存;此变量不要高频使用,否则有效率问题
  $H.HUMAN(XX) // 支持扣除操作,定义为内存操作将会自动保存,否则不自动保存;此变量不要高频使用,否则有效率问题
  $GUILD(XX) // 支持扣除操作,定义为内存操作将会自动保存,否则不自动保存;此变量不要高频使用,否则有效率问题
  $GLOBAL(XX) // 支持扣除操作,定义为内存操作将会自动保存,否则不自动保存;此变量不要高频使用,否则有效率问题
  $PARAM(0..7)

攻击触发:
---------------------------------------
!setup.txt AttackTrigger=0        // 攻击触发总开关,默认0关闭,1开启触发QF的[@Attack]
Envir\MonAttackTrigger.txt        // 可以被攻击触发的怪物名称列表,每行一个

// 下列为[@Attack][@UnderAttack]攻击触发字段的【专属】变量,不能用于其他字段,否则引擎会发生崩溃
$TARINFO_RACE                // 目标Race
$TARINFO_ISHERO                // 目标是否英雄 {'0', '1'}
$TARINFO_NAME                // 目标名称
$TARINFO_FNAME                // 目标全名
$ATTINFO_SKILLID        // 攻击使用技能ID
$ATTINFO_RACE                // 攻击者Race
$ATTINFO_ISHERO                // 攻击者是否英雄
$ATTINFO_NAME                // 攻击者名称
$ATTINFO_FNAME                // 攻击者全名

// 目标变量
$T.CURRENTMAPDESC
$T.CURRENTMAP
$T.CURRENTX
$T.CURRENTY
$T.USERNAME
$T.MONKILLER
$T.KILLER
$T.LEVEL
$T.HP
$T.MAXHP
$T.MP
$T.MAXMP
$T.AC
$T.MAXAC
$T.MAC
$T.MAXMAC
$T.DC
$T.MAXDC
$T.MC
$T.MAXMC
$T.SC
$T.MAXSC
$T.HIT
$T.SPD

// QF例子
[@Attack]                                // 人或随从攻击列表指定怪物,会触发
#IF
COMPVAL <$TARINFO_FNAME> = 蜈蚣
COMPVAL <$T.HP> > 50
#ACT
T.HUMANHP - 50
SENDMSG 7 目标【<$TARINFO_NAME>】血量<$T.HP>

#IF
COMPVAL <$ATTINFO_RACE> ! 1                // Race=1 是玩家,这里就是非玩家(即随从)
#ACT
SENDMSG 7 你的随从<$ATTINFO_NAME>正在攻击<$TARINFO_NAME>


[@UnderAttack]                                                // 被人或随从或列表指定怪物攻击,会触发
#IF
COMPVAL <$ATTINFO_FNAME> = 蜈蚣                                // 蜈蚣打随从或自己
#ACT
HUMANHP - 50                                                // 主人扣血

#IF
COMPVAL <$ATTINFO_MNAME> ! ""                                // 攻击者主人名称不为空
#ACT
SENDMSG 7 【<$ATTINFO_MNAME>】的随从<$ATTINFO_NAME>正在攻击你
#ELSEIF
COMPVAL <$TARINFO_RACE> ! 1                                        // 自己的随从
#ACT
SENDMSG 7 【<$ATTINFO_NAME>】正在攻击你的随从【<$TARINFO_NAME>】
#ELSEACT
SENDMSG 7 【<$ATTINFO_NAME>】正在攻击你

---------------------------------------
界面自定义按钮,最多20个,参考附件,可利用登陆自动更新配置
客户端data目录下增加配置文件:MainWidgetCfg.ini                // 主界面自定义按钮,最多20个,参考附件,可利用登陆自动更新配置
MainWidgetCfg.ini的wmlib=Lui时,会调用Lui.pkg的图片,图片名为lui.pkg内的文件名,非lui库的图片索引大于0才生效
MainWidgetCfg.ini LoginShowChildButton=0/1 字段,登陆是否显示各个子按钮

点击按钮会根据按钮序号执行QChatMission-0.txt脚本对应的[@MainBtnFunc_0至20]字段,[@MainBtnFunc_20]是显示开关的触发
相应的NPC控制脚本命令如下:
MAIN_FUNC_BTN_SHOW 序号 0/1                                // 显示或隐藏
MAIN_FUNC_BTN_FLASH 序号 0/1                                // 按钮是否闪烁
MAIN_FUNC_BTN_POS 序号 X Y                                // 调整按钮位置
!Setup.txt OpenMainFuncBtns=0/1                                // 开启或关闭主界面功能按钮功能,默认关闭


您的回帖是对楼主莫大的鼓励和支持。禁止讨论违规敏感话题、禁止攻击辱骂他人!懒人可选回复语句:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

帮助

客服

QQ群

回复

列表