dsh-game-uid
给自己(DSH 里的 agent)装的查 UID → 角色练度与面板插件:给一串 UID,直接把亮出来的角色的 等级、命座、天赋、武器、汇总面板和圣遗物/遗器/驱动盘套装构成整理成一份中文报告。
支持三款能匿名查的游戏:原神、崩坏:星穹铁道、绝区零。
异环、鸣潮没有匿名按 UID 查的公开接口,game 传这两个会返回说明,不会瞎编数据。
只在 macOS 版 DeepSeek Harness 上验证过(DSH 0.2.x / 桌面端)。 换到 Windows 跑不起来的话,把这句话发给你的 DeepSeek: 「帮我适配 dsh-game-uid 到 Windows,路径和导出你来改」——接口都是公开的,改起来不难。
它注册了什么
工具 game_uid:
| 参数 | 必填 | 说明 |
|---|---|---|
uid |
✅ | 原神 / 星铁 / 绝区零 UID(9~10 位数字) |
game |
auto(默认,三个游戏并发探一次)/ genshin / hsr / zzz / nte |
|
format |
md(默认)/ text(去掉 Markdown 记号,发 QQ 用)/ qq(一行紧凑版,≤150 字) |
|
角色 |
逗号/顿号分隔的角色名:点了名就只输出这几个;不传就输出展柜里全部 | |
save |
true 时落地存档(JSON + Markdown),默认不写盘 |
|
detail |
已弃用,保留仅为兼容;工具只返回汇总面板,不列单件词条 |
对 agent 说人话就行:「查一下 UID 618285856 的练度」「只看这个号的甘雨」 「637000000 星铁练度怎么样,存个档」「绝区零 UID 14658559 看看面板」。
输出长什么样
🎮 **原神** · UID `618285856`
👤 Algoinde · AR57 · 世界等级 8 · 成就 458 · 展柜 4 人
**甘雨** (冰) · Lv.90 · 0命 · 天赋 9/9/9 · 弓
⚔️ 阿莫斯之弓 R3 · Lv.90 · 5★ · 基础攻 608 · 攻击力 49.6%
📊 生命 9797 · 攻击 2471 · 防御 630 · 暴击率 40.3% · 暴击伤害 180.2%
🧿 冰风迷途的勇士 4 件 + 角斗士的终幕礼 1 件
只报汇总数值:不给单件圣遗物的词条,不打分、不评级、不评价强弱。 想自己判断,数据全摆在这儿了。
数据从哪来
- 原神:
https://enka.network/api/uid/<uid>(只读公开接口,无需 token) - 星铁:
https://api.mihomo.me/sr_info_parsed/<uid>?lang=cn - 绝区零:
https://enka.network/api/zzz/uid/<uid>(Enka 的 ZZZ 端点) - 名字表(角色/武器/套装)是构建时从 Enka 官方 store 抽的中文子集,落在
data/, 运行时不联网查表,只有取玩家数据那一次请求。
所以:只查得到展柜/支援角色(游戏里没放进展柜的看不到),数据有几分钟缓存延迟。
角色筛选
角色=甘雨 → 只输出甘雨;角色=甘雨、班尼特 → 输出这两个;不传 → 展柜里全部。
按名字包含匹配、不分大小写。点名的角色不在展柜里时,会直接说明,而不是给一份空报告。
存档文件
save=true 时写到 DSH_GAME_UID_ARCHIVE(默认 ~/.dsh/game-uid-archive):
genshin-618285856-<ts>.json:format: dsh-game-uid/1,玩家信息 + 每个角色的面板与套装genshin-618285856-<ts>.md:同一份内容的可读版
绝区零的特殊处理
- 命座 3 全技能 +2 级、命座 5 再 +2 级(官方文档要求自己加,Enka 给的是基础值)。
- 属性表
data/zzz-props.json里百分比属性是 ×100 存的(800 = 8%), 渲染时按Format是否含%决定要不要 /100。 - 驱动盘主词条、音擎主/副词条用官方给的近似公式还原数值;
角色基础面板用
BaseProps + GrowthProps×(等级−1)/10000 + PromotionProps + CoreEnhancementProps四段式算, 面板里会注明「不含音擎与驱动盘加成」。
QQ 群里 @ 也能查
dsh-qq-bridge 会把「群里 @ 我」的消息喂进目标会话(正文带 【群 昵称】 前缀),
回答再由它转发回那个群。所以群里 @ 机器人说「查询 618285856」时,agent 会调用
game_uid 并把结果发回群里——两个插件之间不需要额外对接。
为此 game_uid 做了两件事:
description里写明「QQ 群里 @ 你并给出 UID 时用这个工具」;format=qq输出一行紧凑版(🎮原神 618285856 Algoinde AR57 · 甘雨 Lv.90 …), 因为 bridge 的简短()会把超过 160 字的回复截断(带 Markdown 图片时例外)。
完整报告留在 DSH 里看,或者加 save=true 落地成存档。
安装
dsh plugin --profile <profile> add file:/path/to/dsh-game-uid-<version>.tgz
装完要完全退出桌面端再重开(⌘Q)才装载新代码。
更新日志
- 0.2.2:修立绘取数用的角色 id —— 星铁/绝区零接口把 id 当字符串给(
"1321"), 旧版用只认 number 的n()转换后恒为 0,导致按 id 查立绘/素材时全部落空(卡片变纯文字)。 现存原神avatarId(数字)、星铁Number(c.id)、绝区零Number(id)三条都取到了值。 - 0.2.1:只展示汇总面板,不打分、不列单件词条;支持
角色点名;exports补"."。
No comments yet. Be the first to write one.