当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇服务端爆率设置格式及修改后爆率异常过高的具体原因排查

热度:
爆率的标准格式是“1/数字物品名称”,比如“1/5000龙纹剑”。中间用一个英文半角空格隔开,不要用Tab键,也不要用中文空格,物品名字必须和DBC2000里StdItems数据库中的名字一字不差。一行只写一条,结尾不要带句号或特殊符号。你设置1/5000理论上没错,但刚砍几个就爆出来是概率的正常波动,就像买彩票第一张就中奖,不代表彩票造假,几率小的事也可能很早发生。

你下的免费版爆率异常高,大概率是文件里同一件装备被重复写了好多行。引擎读取时每行都是一次独立判定,如果文件里写了10行“1/5000龙纹剑”,实际单次掉落概率就接近1/500了,你看着没几个怪其实判定了几十次。打开MonItems目录下对应怪物的txt文件,检查有没有重复的条目,有的话删到只剩一行。

还要看文件里有没有#CHILD格式的分组爆率。比如写着“#CHILD1/1RANDOM(1/1龙纹剑1/1骨玉权杖)”,这种意思是100%触发抽签,且必爆括号里的一样。这种格式如果混在传统格式里,会打乱你对爆率的预期,看不懂就先备份,然后把#CHILD开头的行暂时删掉测试。

除了MonItems文件夹,还有几个地方直接干涉爆率。M2Server控制台参数设置里有个“怪物爆率倍数”,如果被设成了10倍,你写1/5000就变成1/500。还有QuestDiary下的脚本文件,搜索SETMONSTERDROP或ChangeDropRate命令,很多版本会在杀怪脚本里动态加倍爆率。另外DBC2000的Monster数据库里有个DropRare字段,数值小于1会提高爆率,等于1是正常,大于1是降低,检查下是不是被改成了小数。

改完MonItems里的txt文件,有的引擎不会立即生效。进游戏用GM命令@ReloadMonItems刷新,不行就直接在M2控制台点“重新加载怪物爆率”,还不行就只能重启M2Server和DBServer。注意改文件时别把编码存成UTF-8带BOM,用系统自带的记事本或转成ANSI编码,不然引擎读不懂会按默认空值或旧值处理。
[顶部]