Back to home@FADE-4869

dsh-gacha-viz

Genshin Impact gacha history visualizer and pity probability calculator for DeepSeek Harness (DSH plugin)

Stars
0
Language
JavaScript
Created
Aug 26, 2026
Updated
Aug 26, 2026

Introduction

dsh-gacha-viz · 原神抽卡记录可视化

DeepSeek Harness (DSH) 插件 —— 自动提取原神抽卡链接、拉取官方祈愿记录、统计保底进度,并内置 1~90 抽概率计算器。右下角「祈愿之光照板」,一键查看你的欧非血统。

topic license

✨ 特性

  • 自动发现抽卡链接:从游戏日志 output_log.txt 自动提取含 authkey= 的祈愿链接(支持国服/国际服路径),无需手动复制;发现后自动持久化,重启不丢
  • 官方 API 拉取:米哈游 getGachaLog API,end_id 游标分页 + id 去重,完整历史记录
  • 限流自愈:遇到 -110 限流自动冷却 60s 重试(最多 4 次),页间隔 1200ms 防触发
  • 磁盘持久化:数据保存在 data/gacha-data.json(6 小时 TTL 内秒开、零 API 请求),拉取失败/链接过期时自动回退显示本地数据并提示原因
  • 统计面板:总抽数、五星率、各卡池(角色/武器/常驻/新手)保底进度、最近五星、最近 50 抽明细
  • 📊 概率计算器:内置完整 1~90 抽出金概率分布表(含软保底/硬保底),可查询任意抽数概率
  • ⚡ 自动跟随保底:概率页根据当前卡池保底进度自动定位对应抽数,显示"下一抽出金概率 / 距硬保底还差 X 抽"
  • 偏好记忆:手动抽数、卡池选择、自动跟随开关通过 localStorage 持久化

📦 安装

方式一:手动安装(推荐)

  1. 克隆或下载本仓库,把 dsh-gacha-viz 目录放到你的 DSH 插件目录:

    # Windows 示例($DSH_HOME 默认为 %USERPROFILE%\.dsh)
    git clone https://github.com/<你的用户名>/dsh-gacha-viz.git %USERPROFILE%\.dsh\plugins\dsh-gacha-viz
    
  2. $DSH_HOME/profiles/<profile>/cordis.patch.ymlinsert 列表追加两行:

    - insert:
        - id: dsh-gacha-viz-host
          name: 'file:///<绝对路径>/dsh-gacha-viz/lib/index.mjs?v=1'
        - id: dsh-gacha-viz-client
          name: 'dsh-gacha-viz'
    
  3. 重启 dsh web,刷新页面。

方式二:从 DSH 插件市场部署

在 DSH 侧边栏「插件市场」中找到本插件(dsh-plugin topic 下),点击「部署」,当前会话的模型会按 README 自动完成安装。

🎮 使用

  1. 打开 DSH Web 界面,右下角出现金色 悬浮按钮
  2. 点击打开面板,自动加载本地数据(首次使用会提示粘贴链接或先在游戏中打开祈愿记录页)
  3. 刷新最新数据:
    • 打开原神 → 进入「祈愿」→ 点开「祈愿记录」页(链接写入日志)
    • 回面板点
  4. 切换到「📊 概率」页:查看完整概率分布表、查询指定抽数、自动跟随当前保底进度

🎲 概率计算规则(与原神官方一致)

规则说明
5★ 基础概率0.6%
软保底第 74 抽起,每抽 +6%(74 抽 6.6% → 90 抽 100%)
硬保底90 抽必出 5★
UP 概率出 5★ 时 50% 为当期 UP
大保底本次 5★ 非 UP,下次必为 UP
捕获明光小保底歪计数 +1、不歪 -1,计数到 3 时下次小保底必触发

概率表包含:抽数 / 本抽出金概率 / 前 N 抽未出金概率 / 前 N 抽出金总概率 / 首次出金恰在第 N 抽概率。关键节点:第 73 抽累计约 35.6%、第 75 抽约 47.4%、第 77 抽单抽出金峰值 10.53%、73~81 抽为最高概率区间。

📁 数据与隐私

dsh-gacha-viz/
├── lib/
│   ├── index.mjs     # 主机端:URL 发现、API 拉取、统计、磁盘缓存
│   ├── client.js     # 浏览器端:面板 UI(总览/概率/卡池)
│   └── stub.mjs      # client 加载桩
└── data/             # 运行时生成(已 .gitignore,不会提交)
    ├── gacha-data.json  # 抽卡数据缓存(6h TTL)
    └── gacha-url.txt    # 抽卡链接(authkey 仅本地保存,24h 过期)

隐私说明authkey 是敏感凭据(24 小时有效),仅保存在本地 data/gacha-url.txt(0600 权限),不会上传到任何第三方;抽卡数据只与米哈游官方 API 通信。

🛠 开发

  • 修改 lib/index.mjs(主机端)后:更新 cordis.patch.yml?v= 版本号触发热重载,或重启 dsh
  • 修改 lib/client.js(浏览器端)后:刷新页面即可(rev 按内容 hash 自动更新)

📄 许可证

MIT License — 见 LICENSE