要驯服一种动物,先得学会它那一篇御兽宝典。 二十七本书对二十七种动物,一一对应。一本书教一个
招式——以那种动物命名的「篇」,老虎是山君篇——会了这个招式就带着一道光环
(SpellAuraChongWuJiaoHu),把这一种动物标成你能驯的(PlayerEntity.SetCanJiaoHuChongWuType)。
整道门就是这道光环:任何可驯的动物身上都显示驯化这一项,光环没有就上锁,锁上的悬停文字是
「需要装备」加上你缺的那一篇(SetCustomLockDes 把宠物自己的招式名填进去)。招式丢了,那一种
宠物就不再跟着你(CheckAndRemoveChongWu)。
npc_chongwu 列了三十五个可驯的角色、二十七种;有几种除了普通动物还有一个有名有姓的个体。
| 种类 | 动物 | 具名个体 | 书(卷·篇) | 物品 |
|---|---|---|---|---|
| 1 | 兔 | 家禽卷·月德 | 69001 | |
| 2 | 羊 | 阿沸 | 家禽卷·卷娄 | 69002 |
| 3 | 牛 | 家禽卷·乌键 | 69003 | |
| 4 | 猫 | 锦绣 | 家禽卷·狸奴 | 69004 |
| 5 | 狗 | 二黄 | 家禽卷·黄耳 | 69005 |
| 6 | 鸭 | 轩辕十四 | 家禽卷·晨凫 | 69006 |
| 7 | 猪 | 公主 | 家禽卷·豕豚 | 69007 |
| 8 | 鸡(土申) | 家禽卷·烛夜 | 69008 | |
| 9 | 鹿 | 走兽卷·玉角 | 69051 | |
| 10 | 虎 | 走兽卷·山君 | 69052 | |
| 11 | 鳄鱼 | 走兽卷·土龙 | 69053 | |
| 12 | 狼 | 大蓝 | 走兽卷·胡犲 | 69054 |
| 13 | 狐 | 走兽卷·玄狐 | 69055 | |
| 14 | 熊 | 走兽卷·熊罴 | 69056 | |
| 15 | 大雁 | 飞禽卷·辞鸿 | 69101 | |
| 16 | 麻雀 | 飞禽卷·照夜 | 69102 | |
| 17 | 乌鸦 | 飞禽卷·凤黯 | 69103 | |
| 18 | 丹鹤 | 丹鹤王 | 飞禽卷·仙驭 | 69104 |
| 19 | 雷鹏 | 传说卷·雷鹏 | 69151 | |
| 20 | 白龙 | 传说卷·白龙 | 69152 | |
| 21 | 开明兽 | 传说卷·开明 | 69153 | |
| 22 | 王龟 | 传说卷·王龟 | 69154 | |
| 23 | 仙鹿 | 传说卷·仙鹿 | 69155 | |
| 24 | 蛇 | 毒虫卷·苍蛇 | 69201 | |
| 25 | 蝎子 | 毒虫卷·虿尾 | 69202 | |
| 26 | 蜈蚣 | 毒虫卷·百足 | 69203 | |
| 27 | 壁虎 | 毒虫卷·墨龙 | 69205 |
每一种的招式是 3000 + 种类号(山君篇是 3010)。数据里有一处怪:两行仙鹿,其中一行挂的是王龟的招式。
每本书都是商店货。表里点名的卖家,按书分:
| 卖家 | 位置(x, z) | 书 |
|---|---|---|
| 飞狐客 | 1376, 847 | 黄耳(狗)、晨凫(鸭)、凤黯(乌鸦)、仙驭(丹鹤) |
| 风云剑 | 1365, 850 | 豕豚(猪)、烛夜(鸡)、雷鹏、白龙 |
| 神秘客 | 1400, 857 | 玉角(鹿)、山君(虎)、开明、王龟 |
| 逐秋风 | 1400, 847 | 土龙(鳄鱼)、胡犲(狼)、仙鹿、苍蛇(蛇) |
| 逍天雄 | 1408, 791 | 乌键(牛)、狸奴(猫)、辞鸿(大雁)、照夜(麻雀)、墨龙(壁虎) |
| 不留手 | 1519, 685 | 月德(兔)、卷娄(羊)、玄狐(狐)、熊罴(熊)、虿尾(蝎子)、百足(蜈蚣) |
| 宗清宁 | 1029, 1476 | 月德(兔)、乌键(牛)、晨凫(鸭) |
七个人里五个站在 (1400, 850) 附近六十米之内;不留手在东边不远;宗清宁在很南边,只带三本家禽书。
每本书还都在另一个商店组(3591)里,那个组没有任何角色的 shopID 指向它,是世界自己生成的铺子,
而不是站在某处的人。游戏开着的时候,人物页能找到上面任何一个人,/ways?item=<编号> 会列出一本书
的来源、距离,以及今天货架上有没有。通过关注装到宠物身上的万兽秘技是另一种物品,不在这些货架上。
几乎所有默认交互在宠物身上都藏起来了(默认行带 condition2 = 0&86,是宠物就藏),所以宠物的
F菜单很短:
| 项 | 做什么 |
|---|---|
| 驯化 | 任何可驯动物都显示,学会它那一篇之前上锁;成功后动物进入你的跟随列表(TeamManager.AddFollowPlayerNpc)跟着你走。代码里这个列表没有上限 |
| 关注 | 打开一个选择框,列出你身上的万兽秘技(物品类型3、子类23),把选中那本书的招式装进宠物自己的招式格(EquipSpell(…, 第0格, …)),书消耗掉。只有一格,所以一只宠物一本秘技,再装一本就替换。书是认动物的:万兽秘技·山君写的是宠物使出猛虎出林时你自己加27阳——那是老虎的招式,装到别的动物身上什么都不做 |
| 喂食 | 打开一个食物选择框,把物品的属性变化加到宠物自己的属性上(对宠物的表调 ModAttriField) |
| 更名 | 改名 |
| 驱逐 | 遣散 |
| 遗忘 | 空壳——游戏回一句「未开放」 |
跟着你的宠物会不会一起打,没有追:那由它的AI脚本决定,脚本没读。
NpcChongWuPrototype/表 npc_chongwu(id、npcId、chongWuType、chongWuSubType、spellId);
NpcEntity.IsChongWu;AnswerViewNew.CheckISCHONGWU/CheckIsXunHua/
CheckIsHaveCurrentChongWuBuff;SpellAuraChongWuJiaoHu(光环槽 47)→
PlayerEntity.SetCanJiaoHuChongWuType;npc_interact 默认行 66–70 及其条件(0&86、0&88、
0&87);InteractSlot.InteractWithNpc 的 IT_XUNHUA、IT_GUANZHU、IT_WEISHI、IT_YIWANG、
IT_GENGMING 分支;关注与喂食的选择框 CommonTipView.XsySelect;TeamManager.AddFollowPlayerNpc/
CheckAndRemoveChongWu;db2.txt 里的物品文本 71001–71008 和万兽秘技的描述;卖家出自 shop 表。