查看: 6|回复: 0

传奇单机版自定义宝宝怎么配?从MobDB到AI行为,这几个坑搞清楚宝宝才听话

68

主题

40

回帖

364

积分

二百VIP

积分
364
发表于 昨天 19:41 | 显示全部楼层 |阅读模式
<
论坛最近有个帖子我看了好几遍,标题是"自定义宝宝锁定目标久了没有图像和伤害"——发帖的人配置看起来没啥问题,但宝宝就是不打,或者打着打着动画消失了。这个问题回复里的答案各说各的,有人说是MobDB字段,有人说是MoveType,还有人说是脚本问题。

宝宝系统是翎风引擎里配置坑最多、最容易踩的系统之一。不只是加条目那么简单,涉及MobDB、脚本触发、客户端素材三个层面,哪层出了问题都会让你找半天原因。

今天就把这套逻辑从头理清楚,照着做至少能少踩三分之二的坑。

第一步:MobDB基础配置,宝宝能不能"存在"取决于这里

翎风引擎的宝宝本质上就是一种特殊类型的怪物(Monster),所有宝宝的属性来源都在MobDB。

打开SQLite数据库(或DBC2000),找到MobDB表,关键字段如下:


  • Name:宝宝名称,必须和脚本里的召唤命令保持一致,大小写不能错
  • Race:设为 5 代表是宝宝类型,不然无法被召唤
  • RaceImg:客户端素材编号,对应客户端Monster文件夹里的图像,必须存在,否则宝宝召出来就是透明的
  • MoveType:移动类型,设为 2 才会自主追击目标,设为0宝宝就站原地不动
  • AttackMode:攻击模式,1为主动攻击周围敌人,0为被动(只有被打才还手)
  • HP / MaxHP:血量和血量上限,不填或填0宝宝一召出来就死
  • Speed:移动速度,建议300~500之间,太低宝宝追不上怪,太高视觉效果很诡异


踩坑一:Race没设5

这是最常见的。Race不设5,游戏引擎压根不把这个怪当宝宝处理,召唤命令不报错但就是没效果,什么都看不见。

第二步:脚本召唤,宝宝召不出来多半是这里

MobDB配完了,宝宝还得有召唤入口。翎风引擎通过QFunction脚本来触发召唤,常用的命令是 PETADD。

举个最简单的召唤脚本:
  1. @main
  2. SAY 你想召唤宝宝吗?
  3. GOTO @SUMMON_PET
  4. @SUMMON_PET
  5. PETADD 火焰犬
  6. SAY 宝宝召唤成功!
复制代码

踩坑二:宝宝名称大小写和MobDB不一致

PETADD后面的名称必须和MobDB里的Name字段一字不差。中文名字相对安全,但如果你用了英文宝宝名或者有空格,就要特别注意。比如MobDB里写的是 Fire Dog,脚本里写 Firedog 就召不出来。

踩坑三:PETADD和SUMMON的区别


  • PETADD:召唤成为"宠物",跟随玩家,有宝宝栏显示,受PetShowHP等配置控制
  • SUMMON:召唤成为"跟班怪物",跟随玩家但不进宝宝栏,没有血条UI


大多数玩家想要的是宝宝栏那种,应该用PETADD。用错了命令,宝宝召出来但行为完全不对。

第三步:客户端素材,宝宝有伤害但没图像是这个问题

"锁定目标久了没有图像",这个问题多半出在客户端素材上。

翎风引擎宝宝的客户端图像靠RaceImg字段关联。这个数值对应客户端Monster目录里的WIL图像文件编号。

排查步骤:
1. 先确认MobDB里RaceImg填的是哪个数字,比如100
2. 去客户端Monster目录,找有没有Mon100.wil或Mon100.wzl这类文件
3. 如果没有,宝宝会出现"打怪有效果但看不见身体"或者"走一段后图像消失"的现象
4. 把对应的素材文件放进客户端Monster目录,打包成补丁推送给玩家

踩坑四:素材文件在服务端能看到,但客户端没有

很多人配了宝宝,在服务端GM模式下看起来正常,但玩家登进去看不到。原因就是服务端和客户端的Monster素材包没有同步。修改服务端MobDB之后,记得同步更新客户端补丁。

第四步:AI行为调优,宝宝"光站不打"或"打着打着停了"

配完前三步,宝宝能出来能走路了,但有时候会出现:

  • 宝宝跟着你走,但不主动攻击怪
  • 宝宝打了几下就停手了,目标还活着
  • 宝宝被怪打了也不反击


这些问题涉及AI行为配置,主要看MobDB这几个字段:

字段说明推荐值
AttackMode攻击模式1(主动攻击)
AIMoveRangeAI感知范围10~15(格数),太小发现不了怪
AIAttackRate攻击频率100(基础值,越大攻击越频繁)
AIFleeRate逃跑概率0(不逃跑),设高了宝宝会跑
Guard看守模式0(跟随攻击),1(原地守护)


踩坑五:AIMoveRange设太小

翎风引擎默认宝宝感知范围很小,如果你在一张大地图上,宝宝跟着你走但不打怪,检查AIMoveRange是不是只有3-5格。把它改到12以上,宝宝就会主动扫周边目标了。

踩坑六:MoveType影响AI能否正常工作

MoveType设为0的宝宝,哪怕你把AttackMode设成1,它也只会在原地攻击站在它旁边的怪。如果怪移动走了,宝宝就停手了——看起来像"打着打着停了",其实是宝宝不追。

第五步:宝宝血条不显示(附加坑)

宝宝配好了,发现血条不显示,三步检查:
1. 客户端NewOpUI.Pak版本是否包含宝宝血条UI
2. ServerConfig.ini里 PetShowHP=1 是否开启
3. MobDB里 ShowHPBar=1 是否设置

三者缺一不可,任何一个没配就不显示。

完整自查清单

检查项正确值常见错误
MobDB → Race5忘记设,宝宝召不出
MobDB → MoveType2设0宝宝不追目标
MobDB → AttackMode1设0宝宝只被动反击
MobDB → AIMoveRange≥10设太小发现不了怪
MobDB → RaceImg有效素材编号素材不存在宝宝透明
脚本 → PETADD名称与Name字段完全一致大小写/空格不匹配
客户端 → Monster素材对应RaceImg编号文件服务端有但客户端没同步
ServerConfig → PetShowHP1血条不显示


配一只能用的宝宝,核心就是:MobDB字段要全、脚本名称要对、客户端素材要同步、AI参数要调。哪个环节缺了都会出问题,而且报错很少,更多时候是"无反应",只能靠经验一步一步排查。

把这张自查清单存起来,下次再遇到宝宝不动、不打、没图像,按着查基本能定位到。
高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

QQ| 手机版|小黑屋|二百版本库 |网站地图

免责声明:本站所有资源皆来自于互联网.请在下载使用内24小时内删除! 如果侵犯了您的权益,请至邮箱: (1531850810@qq.com), 我们会及时删除侵权内容。

Copyright © 2001-2026 Discuz Team. Powered by Discuz! X3.5

关于我们 | 联系方式 | 隐私政策