Genshin daily material plugin for NoneBot2
Project description
NoneBot Plugin GsMaterial
🤖 用于展示原神游戏秘境材料和升级消耗数据的 NoneBot2 插件
安装方法
如果你正在使用 2.0.0.beta1 以上版本 NoneBot,推荐使用以下命令安装:
# 从 nb_cli 安装
python -m nb_cli plugin install nonebot-plugin-gsmaterial
# 或从 PyPI 安装
python -m pip install nonebot-plugin-gsmaterial
插件配置
环境变量
一般来说,插件安装完成后无需设置环境变量,只需重启 Bot 即可开始使用。你也可以在 NoneBot2 当前使用的 .env
文件中添加下面的环境变量,对插件进行更多配置。环境变量修改后需要重启 Bot 才能生效。
-
gsmaterial_mirror
角色及武器图标下载镜像,需提供UI_AvatarIcon_Layla.png
等形式的图片,可供选择的镜像有:https://api.ambr.top/assets/UI/
安柏计划(默认)https://enka.network/ui/
Enka.Networkhttp://file.microgg.cn/ui/
小灰灰
-
gsmaterial_scheduler
每日材料订阅推送时间,默认为"8:10"
-
gsmaterial_skip_three
每日材料是否忽略三星物品,默认为True
-
gsmaterial_config
插件缓存目录,默认为 NoneBot2 根目录下data/gsmaterial
文件夹,填写时路径中的反斜杠\
务必全部替换为正斜杠/
-
gsmaterial_avatar
gsmaterial_weapon
gsmaterial_item
分别为角色图标、武器图标、物品图标文件夹或文件路径。一般情况不需要配置。这些配置针对的是已经使用 @KimigaiiWuyi/GenshinUID 等插件在本地下载了 GsMaterial 所需资源的用户,合理配置这些环境变量可以避免 GsMaterial 重复下载。如果启用了这些配置,请注意检查 NoneBot2 启动时由此插件输出的
图片缓存规则
,确保插件正确识别!配置具体填写的形式如下:/path/to/avatars
指定某个文件夹。如果 GsMaterial 后续需要补充下载文件,文件命名与当前已有文件的格式一致。如果该文件夹内尚无文件,则 GsMaterial 会在此文件夹下载以中文名称.png
形式命名的文件/path/to/avatars/10000002.png
指定某个文件。如果 GsMaterial 后续需要补充下载文件,文件命名规则为数字 ID.png
。与此同理,如果填入形如../神里绫华.jpg
,后续补充下载文件的命名规则就为中文名称.jpg
@KimigaiiWuyi/GenshinUID 用户安装 GsMaterial 后推荐配置:
gsmaterial_avatar="/path/to/GenshinUID/resource/chars" gsmaterial_weapon="/path/to/GenshinUID/resource/weapon"
Cookie 配置
如需使用材料计算功能,请在 gsmaterial_config
配置的目录下 cookie.json 文件中以字典形式填入米游社 Cookie,文件中至少需要有 account_id
和 cookie_token
。考虑到 cookie_token
有效期比较玄学,建议再多配置一个 stoken
来自动更新 cookie_token
。如果获取到的 stoken
以 v2_
开头,则还需要再配置一个 mid
。
最终你可能写入一个像这样的 cookie.json 文件:
最普通的一种
{
"account_id": "272894075",
"cookie_token": "PV6zzXj28UUSUHetJZO2sqEff4sqwdzDAA3Wz3xY",
"stoken": "5CzsKTYLuoCy4Pf5t7y3bHkS0MjljkOm89rOYfGh"
}
使用 stoken v2 的那种
{
"account_id": "272894075",
"cookie_token": "PV6zzXj28UUSUHetJZO2sqEff4sqwdzDAA3Wz3xY",
"stoken": "v2_efTJdH0uiaDIcoVSINjZY9lHOtSRS5NcfREpDUpXX-AQlLujTP2HWbi14TXHrH_dA1Dxw9TdTGG0LiRONpW=",
"mid": "0cckyppmwl_mhy"
}
命令说明
插件响应以下形式的消息:
-
以
材料
开头的消息附带参数 说明 空 返回今日天赋培养与武器突破材料总图 天赋
/角色
返回今日天赋培养材料图片 武器
返回今日武器突破材料图片 周一
/1
/ ...返回指定日期的天赋培养与武器突破材料总图 订阅
启用当前消息来源的每日材料订阅,群组内仅 Bot 管理员、群组创建者、群组管理员可操作 订阅删除
禁用当前消息来源的每日材料订阅,群组内仅 Bot 管理员、群组创建者、群组管理员可操作 -
以
周本
开头的消息附带参数 说明 空 返回周本材料总图 风龙
/风魔龙
返回 风魔龙·特瓦林 掉落材料图片 狼
/北风狼
/王狼
返回 安德留斯 掉落材料图片 公子
/达达利亚
/可达鸭
/鸭鸭
返回 「公子」 掉落材料图片 若托
/若陀
/龙王
返回 若陀龙王 掉落材料图片 女士
/罗莎琳
/魔女
返回 「女士」 掉落材料图片 雷神
/雷电
/雷军
/将军
返回 祸津御建鸣神命 掉落材料图片 正机
/散兵
/伞兵
/秘密主
返回 「正机之神」 掉落材料图片 -
以
原神计算
开头的消息第一个附带参数 必须 为角色名称或武器名称(支持别名),并且与后面的参数 用空格隔开。
计算角色时:
- 角色等级允许的输入包括
90
、81-90
等 - 天赋等级允许的输入包括
8
、1-8
、888
、81010
、8 8 8
、1-8 1-10 10
等 - 只计算等级消耗时,可以使用
111
作为天赋等级 - 只计算天赋消耗时,可以使用
1
作为角色等级,或者不输入角色等级并在天赋等级前添加「天赋」二字 - 同时限定天赋等级和天赋等级时,必须 角色等级在前、天赋等级在后,中间用空格或「天赋」二字隔开
- 未限定等级范围时,默认计算角色等级 1-81、三个天赋等级 1-8 消耗的材料
计算武器时:
- 武器等级允许的输入包括
90
、81-90
、81 90
等 - 未限定等级范围时,默认计算武器等级 1-90 消耗的材料
此指令附带参数较为复杂,下面是一些举例:
原神计算琴
计算 琴 角色等级 1-90、三个天赋等级 1-8 消耗材料原神计算琴 81
计算 琴 角色等级 1-81、三个天赋等级 1-8 消耗材料原神计算琴 81 111
计算 琴 角色等级 1-81 消耗材料原神计算琴 81-90 111
计算 琴 角色等级 81-90 消耗材料原神计算琴 90 8 8-10 10
计算 琴 角色等级 1-90、天赋等级 1-8 8-10 1-10 消耗材料原神计算琴 1 10
计算 琴 天赋等级 1-10 消耗材料原神计算琴 天赋101010
计算 琴 三个天赋等级均 1-10 消耗材料原神计算琴 天赋 10 1-8 1-10
计算 琴 天赋等级 1-10 1-8、1-10 消耗材料原神计算狼末 81
计算 狼的末路 等级 1-81 消耗材料原神计算狼末 81 88
计算 狼的末路 等级 81-88 消耗材料
计算角色示例
计算武器示例
- 角色等级允许的输入包括
其他说明
-
插件每日材料、周本材料数据来源为 Project Amber,所有未实装角色及武器的数据均由该数据库提供。
-
插件升级材料数据来源为 米游社养成计算器,使用此功能需要有效的
account_id
和cookie_token
。 -
插件使用的所有角色及武器图标会在 Bot 连接建立后从环境变量
GSMATERIAL_MIRROR
下载,所有计算器所需图标会在查询时从米游社下载。这些资源通常只需下载一次,其下载路径及保存文件名均可通过环境变量控制,具体说明请查看 环境变量 第 5 条。 -
插件的原神每日材料定时推送基于 @nonebot/plugin-apscheduler,如果 NoneBot2 启动时插件的定时任务未正常注册,可能需要额外添加该插件的环境变量
apscheduler_autostart=true
来使scheduler
自动启动。
特别鸣谢
@Mrs4s/go-cqhttp | @nonebot/nonebot2 | @nonebot/plugin-apscheduler | Project Amber
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for nonebot_plugin_gsmaterial-0.2.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 637cc09a63b23b6d3e385f49bb2ade50df14185cb81f376d4d27f0daa3c2774a |
|
MD5 | 7f5c34f5b664e4597fd3a176d7e2a7ce |
|
BLAKE2b-256 | 3447c8b2825629e47e72c5dca6d9aca38748fdcc2eedcfaf9e4a65043a60c81d |
Hashes for nonebot_plugin_gsmaterial-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72d3721fade682f91b11559e2d8bcdcd8b08fd296bd665004fb726b027b2585a |
|
MD5 | 9452db8da28163af594d126abf503337 |
|
BLAKE2b-256 | d495f0045f8332831ee458f09b9ce1a11be36a52c88b4301c348fc8e94d3e4fd |