Skip to main content

nonebot-plugin-miao

原神 / 崩坏:星穹铁道的 NoneBot2 抽卡记录与角色面板插件,并提供原神、星铁、绝区零的模拟抽卡与角色攻略图。移植自 miao-plugin(MIT),支持 OneBot V11。

功能

  • Authkey 抽卡记录更新、分析、按版本统计、UIGF / SRGF 导入导出
  • 原神、星铁、绝区零模拟单抽/十连、多角色池与装备池选择、保底、原神武器定轨和每日次数限制
  • 三游戏国服卡池从官方公开接口自动同步,按开放时间切换,无需绑定 UID 或 Cookie
  • Enka(原神)、Mihomo(星铁)、米游社 Cookie 面板更新
  • 属性计算、圣遗物 / 遗器评分、面板列表 / 详情 / 伤害图片
  • 原神角色与武器图鉴、名称索引(无需绑定 UID)
  • 原神、星铁与绝区零角色攻略图(分游戏来源、本地缓存、强制刷新与默认来源设置)

安装

nb plugin install nonebot-plugin-miao-genshin
pip install nonebot-plugin-miao-genshin
poetry add nonebot-plugin-miao-genshin

注意:PyPI 上的 nonebot-plugin-miao 是他人发布的无关项目,请勿安装;本插件的 PyPI 包名为 nonebot-plugin-miao-genshin(导入模块名仍为 nonebot_plugin_miao)。

配置

均有默认值;在 NoneBot .env 中按需覆盖。

配置项 默认值 说明
MIAO_RES_MIRROR jsDelivr miao-plugin resources 角色图片与静态资源镜像
MIAO_PROFILE_INTERVAL 3 面板更新冷却(分钟)
MIAO_MYS_COOKIE 空 全局米游社 Cookie(可选)
MIAO_GACHA_DAILY_LIMIT 1 每款游戏每日模拟额度,1 代表 10 抽;同游戏所有卡池合计,SUPERUSER 不限
MIAO_GACHA_POOL_INTERVAL 60 官方模拟卡池同步间隔(分钟,至少 1);查看/抽取时按需检查,后台每 5 分钟检查是否到期
MIAO_RES_AUTO_UPDATE True 每日自动更新面板资源(凌晨 4:20,需 nonebot-plugin-apscheduler)
MIAO_STRATEGY_DEFAULT_SOURCE 1 原神角色攻略图默认来源(1-7,可被设置指令覆盖)
MIAO_SR_STRATEGY_DEFAULT_SOURCE 1 星铁角色攻略图默认来源(1-3,可被设置指令覆盖)
MIAO_ZZZ_STRATEGY_DEFAULT_SOURCE 1 绝区零角色攻略图默认来源(1-4,可被设置指令覆盖)

指令

指令 范围 说明
/绑定uid <UID> / /星铁绑定uid <UID> 群聊、私聊 绑定游戏 UID
/绑定cookie <cookie> 仅私聊 绑定米游社 Cookie
/更新抽卡记录 / /抽卡分析 / /全部池统计 群聊、私聊 抽卡记录与统计;星铁命令前加“星铁”
十连 / 十连2 / 武器十连 / 单抽 群聊、私聊 原神模拟抽卡,可选当期两个角色池和武器池
星铁十连[编号] / 星铁光锥十连[编号] 群聊、私聊 星铁角色池/光锥池,编号省略时为第 1 池
绝区零十连[编号] / 绝区零音擎十连[编号] 群聊、私聊 绝区零角色池/音擎池,包含并行复刻池
/卡池列表 / /星铁卡池列表 / /绝区零卡池列表 群聊、私聊 显示当前 UP、截止时间和每个卡池的抽取指令
/更新卡池 / /更新星铁卡池 / /更新绝区零卡池 群聊、私聊 立即重新同步对应游戏官方卡池
/定轨 / /定轨1 / /定轨2 / /定轨0 群聊、私聊 原神武器池定轨:循环选择 / 选第 1 把 / 选第 2 把 / 取消
/导入记录 / /导出记录 群聊、私聊 UIGF / SRGF 记录交换
/更新面板 / /米游社更新面板 群聊、私聊 更新角色面板
/面板列表 / /角色名面板 / /角色名伤害2 群聊、私聊 查看面板与指定伤害条目
/角色图鉴 / /武器图鉴 群聊、私聊 查看原神角色或武器名称索引
/芙宁娜图鉴 / /雾切图鉴 群聊、私聊 查看角色或武器的详细图鉴;也支持 # 前缀
/心海攻略[1-7] 群聊、私聊 查看原神角色攻略图;末尾数字选择攻略来源
/更新心海攻略[1-7] 群聊、私聊 忽略本地缓存并重新获取攻略图
/星铁流萤攻略[1-3] 群聊、私聊 查看星铁角色攻略图,支持现有星铁角色别名
/绝区零星见雅攻略[1-4] 群聊、私聊 查看绝区零角色攻略图,请使用角色正式名称
/攻略帮助 / /星铁攻略帮助 / /绝区零攻略帮助 群聊、私聊 查看全部或指定游戏的攻略来源
/设置默认攻略2 / /设置星铁默认攻略2 / /设置绝区零默认攻略2 群聊、私聊 分游戏持久化设置默认来源
/圣遗物列表 / /面板帮助 / /抽卡帮助 群聊、私聊 列表与帮助

除模拟抽卡外,所有功能均要求以 / 开头;图鉴和攻略指令额外兼容 Yunzai 常用的 # 前缀。发送 Authkey 抽卡链接时,也需要在完整链接前添加 /。

三游戏模拟抽卡

  • 默认不带游戏名为原神。十连、十抽、10连、10抽 均可;换成 单抽 就只扣除 1 抽并推进 1 次保底。模拟指令兼容 /、# 前缀。
  • 角色池与装备池分别编号。例如 星铁十连2 抽第二个角色池,星铁光锥十连2 抽第二个光锥池;绝区零音擎十连2 抽第二个音擎池。以当前卡池列表为准,不存在的编号会提示,不会消耗次数。
  • 常驻池:常驻十连、星铁常驻十连、绝区零常驻十连。星铁联动角色/光锥池也会列出,并与普通活动池分别保存保底。
  • 三款游戏分别保存保底和每日额度。同游戏普通角色活动池之间共享保底,装备池之间共享另一份保底,常驻池独立;群聊和私聊沿用各自的用户存档。每日北京时间 04:00 重置额度,保底不清零。
  • 原神旧存档保留累计抽数和大小保底。武器命定值上限为 1;换期清空定轨及命定值,保留武器大小保底。旧存档无法确认定轨所属期次时,也会清空定轨及命定值。

卡池使用官方国服公开数据:原神、星铁、绝区零。每次同步读取全部受支持卡池的中文详情,更新 UP、陪跑四星、常驻物品和基础概率;新角色不依赖插件内置角色表。结果优先使用官方提供的图片,缺图时显示名字占位卡。

首次使用联网获取并持久化缓存,此后按配置自动同步。后台每 5 分钟检查;查看或抽取时也检查同步期限及开池/结束时间,所以机器人重启后仍可自动恢复。自动同步独立于 MIAO_RES_AUTO_UPDATE。接口故障只使用仍有效的旧缓存并提示,过期或尚未开放的池不会参与抽取,失败后至少间隔 1 分钟重试。

模拟器实现基础概率、90 抽角色/常驻保底、80 抽装备保底、四星保底、大小保底及原神武器定轨;软保底使用模拟递增曲线。目前不模拟原神捕获明光、常驻新手优惠/自选奖励、星铁「星缘相邀」或绝区零「定制调频」自选名单,也不包含集录、新手专池和邦布池。上述自选名单按未自定义时的官方默认物品表处理。

攻略来源编号按游戏分别计算:

  • 原神:1 西风驿站、2 原神观测枢、3 派蒙喵喵屋、4 OH是姜姜呀、5 曉K、6 坤易、7 婧枫赛赛。
  • 星铁:1 列车广播、2 牧牧Muu、3 丶ATRI丶。
  • 绝区零:1 绳么东西BROADCAST、2 烟雨如诗、3 丶ATRI丶、4 小橙子阿。

攻略数据来自米游社公开合集,新域名不可用时会自动尝试旧域名。星铁和绝区零会继续进入合集链接的具体攻略帖,排除文章封面后返回正文攻略图;接口不可用或对应来源未收录角色时,插件会返回中文提示。绝区零目前没有随包角色元数据,指令直接按正式角色名匹配,因此新角色无需等待插件更新,但不保证识别简称。

移植对照

miao-plugin 功能 本插件位置 状态
抽卡记录、分析、模拟 gacha/、datasource/gacha_log.py 已实现
Enka / Mihomo / 米游社面板 datasource/ 已实现
属性、评分与伤害规则 core/、dmg/ 已实现
面板和抽卡卡片 render/ 已实现
原神角色与武器图鉴 commands/encyclopedia.py、render/encyclopedia.py 已实现
原神、星铁、绝区零角色攻略图 commands/strategy.py、datasource/strategy.py 已实现(分游戏来源、缓存、刷新、默认来源)

未移植:群内排名、练度统计、面板图上传、私有 API、备选面板源与 Yunzai 按钮交互。

开发

poetry install
poetry run python -m compileall nonebot_plugin_miao
poetry run pytest -v
poetry run ruff check .

致谢与许可

本项目使用 MIT License。

Metadata

Release files for nonebot-plugin-miao-genshin 0.1.18

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nonebot-plugin-miao-genshin 0.1.18
File Size Uploaded
nonebot_plugin_miao_genshin-0.1.18.tar.gz 7.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for nonebot-plugin-miao-genshin 0.1.18
File Interpreter ABI Platform
nonebot_plugin_miao_genshin-0.1.18-py3-none-any.whl Python 3 none any Details

Total release size: 15.7 MB

Release files / nonebot_plugin_miao_genshin-0.1.18.tar.gz

Download URL nonebot_plugin_miao_genshin-0.1.18.tar.gz
Size 7.5 MB
Tags Source
SHA-256 checksum
How to use checksums
5ecf47fcb87ea3f7d069d82125fb964c4feba13ce229233500f387610a1f8250
BLAKE2b-256 checksum
How to use checksums
1eaea543090a5d45d4ee7065ca9229d78392d7757ef72b8b1f3ed33449ffd343
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / nonebot_plugin_miao_genshin-0.1.18-py3-none-any.whl

Download URL nonebot_plugin_miao_genshin-0.1.18-py3-none-any.whl
Size 8.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
305da07c741cda785abcc38b49de1ea40d7c17cda070a50d455d5d1ac84fa325
BLAKE2b-256 checksum
How to use checksums
30e43e7f12c6ce7be3dcf6672f5bb685245d526dbb995294ef485b4c55833708
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.1.18 This release

2 release files

0.1.17

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page