Skip to main content

怪物图鉴

怪物图鉴管理小怪、精英、BOSS 的激活、单怪奖励和累计收集宝箱;稳定 key 中的 npc 不扩展为 NPC 对话、剧情或任务功能。怪物身份、技能、AI 和关卡编排归角色/战斗内容;英雄图鉴另有激活和属性规则,不与本功能合并。

入口与激活​

设计入口在主界面右侧邮件下方,功能解锁后显示。来源称“首次遇到新怪物即激活”,三类怪物每激活一只都增加 1 点总进度,不因 BOSS 增加更多积分。

当前实现采用胜利结算激活。 后端 origin/master@88b24abe 的 handler/battle/battle.go 在 IsWin 分支调用 RoleManual.ActivateMonstersByMission,按通关关卡的配置新增怪物集合激活,返回本次新增 ID。不是收到任意怪物生成事件就激活,也不是失败遇到后立即激活。客户端应消费 BattleEndResp.new_manual_monsters/服务端图鉴数据,不自行认定首次遭遇。

旧设计把训练、GM 预览排除在正式遭遇之外,召唤怪要求正式怪物 ID 及有效上报;当前按关卡新增集合实现没有单独验证每一个实际刷出的召唤怪。这些差异需要决定产品想要“通关收集”还是“遭遇收集”,本次整理不自动改游戏行为。

单怪奖励与卡片状态​

状态展示操作
未激活通用未知怪物图标点击无反应
激活未领奖立绘、类型、名称、领奖按钮与提示点击领取该怪物一次性奖励
激活已领奖正常怪物卡点击打开详情

每只怪物奖励只能领取一次;重复遇到、重复通关不重置。主界面列表使用 Spine 第一帧静态图,详情使用 Spine 动画,并显示名称、说明、类型和奖励。奖励区展示图标、品质、数量;已领后变暗并加对勾。详情点击空白回到图鉴,图鉴点击空白回到主界面。

怪物卡解锁后可领取奖励

怪物详情包含动画、名称类型说明和已领取奖励

两图用于定义卡片和详情层级,图内奖品数值不作为当前配置。

累计宝箱​

小怪、精英、BOSS 激活数量一起计入总进度。展示“已解锁数量 / 当前宝箱要求数量”。未达成时点宝箱查看内容图标、品质和数量;可领时发光,点击领取并展示获取奖励。领取后推进到下一档;最后一档已领则进度条满、尾部宝箱打开。

后端 CheckCountReward 的请求标识是 manual_count 配置行 ID,不是阈值数量;检查总激活数、所有前置档已领、当前档未领。CountRewards 持久化行 ID,不能把阈值写入该字段。原型文案“解锁更多图鉴,获得积分奖励”指收集进度,不代表另有可消费积分货币。

当前 manual_count.csv@01457767 为 8 档:

行 ID激活数奖励 ItemSub
17202 × 3
210202 × 3
313202 × 3
416202 × 3
519202 × 3
622202 × 3
725202 × 3
828202 × 3

旧 Excel 样例是怪物 ID 1 小怪钻石 10、ID 2 精英钻石 20、ID 3/4 BOSS 各钻石 50;累计 10/20/50 只分别钻石 200/300/1000。它们是结构样例,不替换当前 monster.ManualReward 和 manual_count.Reward。物品解析用 ItemID|ItemCount;...,不能根据样图硬编码钻石。

飞书 Hu0bbdFcKoTuLNx5WHPc7VjRnee 的怪物图鉴新手引导奖励段(A77—B79)另要求“第一个累计奖励必给 10 个普通招募券”。当前首档却是 202×3,而同提交 item.csv 的 202 备注为“符文抽奖钥匙”。这既有数量也有物品类型差异;需明确新手引导奖励是否由其他路径补发,或该方案是否已变更,不能把现表称为符合这条来源要求。

页签、排序和红点​

小怪、精英、BOSS 三页签展示各自全部怪物,当前页签更大并高亮。旧功能契约规定 Sort 降序、MonsterID 升序,具体 UI 仍需与当前配置消费对应。图鉴不维护第二套怪物档案。

主入口红点聚合所有单怪未领及达标未领宝箱;分类页签只聚合本类别单怪奖励;对应怪物/领奖按钮显示单怪提示,宝箱显示自身可领提示。领取某怪物不应清除其他怪物或宝箱红点,全部可领项完成后主入口才清除。后端 HasRedTip 已汇总单怪和累计奖励,对应旧约定 RedTipType.Manual=6;分类页签如何绑定需看前端。

累计进度和当前宝箱的展示区域

最后宝箱领取后的满进度与打开状态

当前数据与缺口​

RoleManual 保存已激活怪物、已领取怪物、已领取宝箱行 ID 三个集合,运行时索引从持久数据恢复;Format 输出每只怪物的 activated/rewarded、总数及宝箱状态。GetRewardableMonsters 过滤不存在、未激活和已领取项;实际发奖与保存由 handler 协调。该模块提供奖励,不提供永久属性,不能将英雄图鉴全英雄属性接到它名下。

当前最重要差异是“见怪”与“胜利按关卡集合”的激活时点。界面资源、规则语言键 MonsterManual_rule_unlock_more、正式怪物列表/排序和训练模式的实际消费仍未取得 GUI 证据;旧 UI handoff 尚缺美术导出审核的描述不代表本次已补齐素材审批。

现有测试入口与来源​

后端存在 service/role/model/manual/entity_test.go、service/role/handler/manual/manual_test.go 及战斗结算测试;未执行、未新增或扩写测试,未声明 GUI 通过。

正文整合旧 monster-npc-manual 的 19 条规则、配置契约、状态与飞书 T3aTbp8txoF6lPx9tqLciPzingf《图鉴模块功能需求》全部功能说明及表格。旧“已确认 contract”缺原批准凭证,整理不提升其权威等级;当前实现结论以本页列出的后端/配置提交为限。