文件内容
docs/missing-core-plan.md
# 缺什么 — missing-core 设计文档
## 命令
```
/pvp 缺什么
/pvp 缺什么 <联盟>
```
## 用途
结合用户库存、配队推荐、热门环境,输出当前最缺的核心组件。
## 判断逻辑
### Step 1: 获取当前推荐配队
从 `buildTeam()` 输出中获取 3 只推荐宝可梦(角色:核心/安全换/收割)。
### Step 2: 对比用户库存
对推荐配队的每只宝可梦:
- 检查 `my_pokemon.json` 中是否存在该 speciesId + 同联盟
- 如果存在且 `built === true` → ✅ 已有
- 如果存在但 `built === false` → ⏳ 已有但未培养
- 如果不存在 → ❌ 缺少
### Step 3: 补充缺失判断
除了推荐配队,还检查热门前 10 中用户缺少的:
- 排名前 10 且 user 没有 → 标记为高优缺失
- 排名前 25 且 user 没有 → 标记为可考虑
### Step 4: 生成输出
```
📦 超级联盟 缺少核心
已有:
✅ 胖嘟嘟
✅ 土龙弟弟
✅ 七夕青鸟
缺少:
❌ 勾魂眼(高优)
❌ 大舌舔(高优)
❌ 钢铠鸦
补齐后可组成:
胖嘟嘟(核心)
勾魂眼(安全换)
土龙弟弟(收割)
预计配队评分:87 /100
下一步建议:优先补 勾魂眼
```
## 补充逻辑
勾魂眼高优的原因:
- 排名高(#6)
- 属性独特(恶/幽灵),抗性面覆盖好
- 用户完全缺失
## 预计配队评分
用 `buildTeam()` 生成一个模拟队伍:
- 用户已有 → 保留
- 用户缺少 → 用推荐配队的第1个缺失填充
- 计算评分并展示
## 实现位置
- `src/missing.ts` — `/pvp 缺什么` 命令逻辑
- `src/index.ts` — 新增路由
## 不做
- 不编数据
- 不展示胜率
- 不模拟对战