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

传奇合击服务端改数据实操:升级送装/金牛宝箱/元宝店铺/新技能书全改法

热度:
改数据前先停M2,备份MirServer\Mir200\Envir整个目录和Mud2\DB里的StdItems.DB、Magic.DB,改崩了直接覆盖回滚。Hero/GOM/GEE引擎路径大同小异,下面以Hero引擎合击端为例。

一、升级送装备
升级触发走QFunction-0.txt(路径Mir200\Envir\Market_Def\QFunction-0.txt),找[@PlayLevelUp]段,没有就自己加。
例:35级送骨玉权杖+恶魔长袍,40级送开天:
[@PlayLevelUp]
IFCHECKLEVELEX=35

ACT

GIVE骨玉权杖1
GIVE恶魔长袍(男)1
SENDMSG0恭喜达到35级获赠法师装备
BREAK

IFCHECKLEVELEX=40

ACT

GIVE开天1
SENDMSG0恭喜达到40级获赠开天一把
BREAK
CHECKLEVELEX是“等于”,CHECKLEVELEX>39是“大于等于40”。要分段送(比如40-49每次升一级都送绑金)用变量记录,新手先写死等级点最稳。改完M2点“重新加载QF脚本”生效,不用重启。

二、金牛宝箱价格和开出内容
1.价格改法分两种:
•若是“钥匙+宝箱”双击开启型:金牛钥匙是个物品,改Mud2\DB\StdItems.DB(DBC2000打开HeroDB里的StdItems表),找到金牛钥匙那行,Price字段填新元宝价,或者把NeedLevel/NeedJob不动、直接让NPC收元宝开。更常见是写个NPC宝箱:

-NPC型金牛宝箱:在Market_Def\盟重省\金牛宝箱-3.txt里写
[@main]
金牛宝箱开启需88元宝
<开启/@open>
[@open]
IFCHECKGAMEGOLD>=88

ACT

TAKE元宝88
GOTO@rand
ELSESAY

元宝不足

2.开出物品改法:
双击型宝箱走QFunction-0.txt的[@GetBoxsItemX](X=宝箱Shape值),或宝箱NPC里用RANDOM配[@reward1]段:
[@rand]
ACTRANDOM100

IFRANDOM100<5

GOTO@r1
IFRANDOM100<15

GOTO@r2
GOTO@r3
[@r1]
ACTGIVE屠龙1

SENDMSG6开出屠龙!
[@r2]
ACTGIVE雷霆战甲1

[@r3]
ACTGIVE金疮药(大)5

概率自己调,RANDOM100下行数对应分段。开箱触发文件也可能在Envir\Boxs目录下有个TXT专门列掉落表,按行改物品名和数量即可。

三、元宝店铺加新道具(装备/仇杀道具/技能书)
最简路径:M2启动→查看→列表信息二(或“列表信息→其他设置→商铺物品列表”)→右侧选物品→设类别、价格、货币类型选“元宝”、写描述→增加→保存→重读商铺列表。类别0装饰1补给2强化3好友4限量5奇珍,对应商铺分页。
手动改文件:Envir\ShopItemList.txt,格式
物品ID物品名售价描述
排序
例:
2101擒拿手技能书288新控场技
3
60001仇人追杀令50标记仇人全服追杀
4
60002雷霆战甲999元宝店特供
2
物品ID必须在StdItems.DB里真实存在,名字一字不差,不然商铺显示空白。改完M2重读商铺,小退重登可见。

仇人追杀道具本身不是引擎原生功能,要自己加物品+脚本:StdItems.DB加“仇人追杀令”StdMode=31AniCount=66,QFunction-0.txt写[@StdModeFunc66]用GetName输名字→SetKillFlag或写全局变量让刺客NPC优先传送追杀,这块要写机器人脚本配合,纯改DB出不来效果。

四、新增技能书(擒拿手/乾坤大挪移/群毒/解毒)
1.Magic.DB(Mud2\DB\Magic.DB)加技能行:
找空白行,MagID不能和原技能重复(火墙11、冰咆哮33这种别碰),MagName填“擒拿手”,Job(职业1战2法3道)按你要的填,Level1-3伤害公式改DefSpell/DefPower字段,Effect动画编号对应客户端wil里的动作帧,不配动画放出来是透明球。合击技要额外在HeroSkill表里挂主副职组合,单纯加书不放合击槽。
2.StdItems.DB加技能书物品:
Index用未占用的(2101起),Name“擒拿手技能书”,Type=18(技能书类),StdMode=18,AniCount填对应MagID,NeedLevel填可学等级。客户端Data\Magic.wil没这技能图标就显示空书,要打补丁。
3.技能书进商铺/宝箱/NPC:
商铺按第三节加一行;宝箱按第二节RANDOM段加GIVE擒拿手技能书1;NPC卖书改Market_Def里书店老板脚本,[@buy]段加<擒拿手技能书/@buy_qn>
[@buy_qn]
IFCHECKGAMEGOLD>=188

ACTTAKE元宝188

GIVE擒拿手技能书1
BREAK

群毒=道士群体施毒,复制原施毒术行改Range和TargetCount;解毒=新被动或道具触发,StdMode=31双击解buff,QFunction里[@StdModeFuncXX]写RecvBuff清毒状态。乾坤大挪移做成战士位移技,Magic.DB里Effect设传送帧,脚本端加TeleportPos偏移。

五、还能改什么新东西
•新装备:StdItems.DB加行,Shape套现有外观或自己加wil帧,AC/DC/MAC/幸运/攻速字段照抄同档装备改数值,客户端Item.wil补图。

•新怪物:Monster.DB加行,MonGen.txt写“地图XY怪物名范围数量间隔”刷怪。

•新地图:Map目录扔.map文件,MapInfo.txt注册地图号+名字+属性(安全/战斗/可飞)。

•新NPC功能:Merchant.txt加刷新行,Market_Def下建“名字-地图.txt”写对话和GIVE/TAKE/CHANGEEXP等命令。

-新合击:HeroSkill.DB加主职+副职→合击MagID映射,Magic.DB里合击技伤害公式独立一段,客户端补合击特效wil。
•新BUFF/状态:Magic.DB里设BuffType,QFunction用AddBuff命令挂,配合RobotManage.txt做持续时间扣血扣蓝。

-新货币:GlobalVal或自定义变量做“荣誉点”“帮贡”,NPC用CHECKVAR判余额TAKE/ADD变动。
•新任务线:QuestDiary建目录写[@main]对话树,GOTO分段发奖,机器人AutoRunRobot.txt定时发全服任务。

改完一类就重载对应模块(QF/QM/NPC/商铺/DB用@ReloadItemDb@ReloadMagicDb或M2菜单),别一次性全改完再起服,报错定位不到哪行。客户端不显图先查wil索引除以1200的Shape值对不对,再查登录器是否带了版本补丁。
[顶部]