qwq12738qwq / nonebot-plugin-beatsaberscore

Nonebot2的Beat Saber查分
GNU General Public License v3.0
6 stars 0 forks source link

logo

暗色模式有惊喜(指变好看力)
***重要提醒!!!*** 此版本未在运行速度上做一丁点优化(主要是网络下载问题),如介意请等下一个版本更新~[运行速度参考](https://github.com/qwq12738qwq/nonebot-plugin-beatsaberscore?tab=readme-ov-file#-%E6%B5%8B%E8%AF%95) ## 📖 介绍 Nonebot2的节奏光剑BeatLeader&ScoreSaber查分(ノ≧∀≦)ノ ~~完全不需要介绍,咕噜咕噜咕噜~~ ## 💿 安装(以下选择其一安装即可)
使用 nb-cli 安装 (十分甚至九分的推荐) 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装 nb plugin install nonebot-plugin-beatsaberscore
使用 pip 安装 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装 pip install nonebot-plugin-beatsaberscore 如果安装完插件不载入的话,在nonebot文件夹中找到**pyproject.toml**,在**plugins**里面添加**nonebot-plugin-beatsaberscore**就完成了
>如果你的Nonebot2项目下已经启用虚拟环境,可以使用Pipenv安装到项目中,但你需要安装pipenv包 >
使用 pipenv 安装 先安装pipenv pip install pipenv 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装 pipenv install nonebot-plugin-beatsaberscore
## 🔄 更新 ***请不要用上面的安装方式更新!!!!!!!!!!!!***
使用 nb-cli 更新 在 nonebot2 项目的根目录下打开命令行, 输入以下指令更新 nb plugin install nonebot-plugin-beatsaberscore --upgrade
使用 pip 更新 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可更新 pip install nonebot-plugin-beatsaberscore --upgrade
## ⚙️ 配置 | 配置项 | 必填 | 默认值 | 说明 | |:-----:|:----:|:----:|:----:| | BS_RETRIES | 否 | 8 | 网络错误重试次数 | | BS_TIMEOUT | 否 | 5 | 网络超时时间 | | COMMAND_START | 否 | [] | 响应前缀设置 | PS:最好是有科学上网,如果没有,BS_RETRIES向建议调至6以上 ## 🎉 使用 如果设置了响应前缀,使用以下命令的时候不要忘记加上响应前缀 可以发送` BS help `或` BS帮助 `获取帮助(其实也就导航到这里力) ` BS绑定 ` + SteamID 绑定SteamID,绑定ID才可以查分,也可发送` BS bind `,等效` BS绑定 ` ***注意:*** 先绑定SteamID再查分!!! ***ScoreSaber查分*** ` s40 `,` ss40 `,` SS查分 `,` SS score `都可用于触发查分指令 ***BeatLeader查分*** ` b40 `,` bl40 `,` BL查分 `,` BL score `都可用于触发查分指令 ***BeatLeader&ScoreSaber查分*** ` BS查分 `,` bs查分 `,双倍快乐 PS:如果遇到这种错误,这是我**有意而为之**,忽视即可,不影响正常使用 ***Song_ID查歌*** 发送` BS search ` + 歌曲的ID或者` BS查歌 ` + 歌曲的id可以查询歌曲的信息 ***Song计算准度*** ` 谱面计算 `+ 歌曲id + 难度 + 需要的准度(歌曲id/难度/需要的准度顺序可以打乱) 举个例子: **注意** 此功能尚未完善,miss Note数仅供看着玩(),但我能确保需求分数是准确的 **SteamID是什么?** 在登入` beatleader.xyz `后打开个人信息 这个就是你的` SteamID `辣(即使ID不是纯数字也是可以用的) 即使是scoresaber排行榜网站也是同理 也可以到Steam个人主页去找SteamID,这里就不多赘述了 ## ✨ 未来规划 - [X] 添加对ScoreSaber的查分支持 - [X] 重做优化查分图 - [ ] 定时推送beatsaver的新曲,渲染新曲图片 - [ ] 给自制谱投票功能 - [ ] 歌曲的推荐 - [ ] 优化运行速度,使用线上+本地缓存来提高响应速度 ## 📝 更新日志 ### 1.1.4 ----**大道至简** - **大幅改动排版,全面重绘查分图!!!** - 更新 简陋的歌曲准度计算 - 更新 指令触发细节优化,对一些地方进行细节优化 - 新增 SS+,SS,S,A的准度评级 - 新增 左|右手准度数据(现阶段仅支持beatleader) - 更改 下调pyproject.toml版本依赖(应该可以增强与其他Nonebot插件共存兼容性?) - 添加 b40,s40指令触发 ### 0.9.7.post2 - 修复 [#2](https://github.com/qwq12738qwq/nonebot-plugin-beatsaberscore/issues/2) ### 0.9.7 - ~~修复 [#2](https://github.com/qwq12738qwq/nonebot-plugin-beatsaberscore/issues/2)~~ - 更改了下存储数据的逻辑 ### 0.9.6 - 新增 [ScoreSaber的查分支持](https://github.com/qwq12738qwq/nonebot-plugin-beatsaberscore/issues/1) - 修复 绑定错误ID时返回的一些错误信息进行修正 ### 0.9.3 - 增加了歌曲id的搜歌功能 ### 0.9.0 - 完成基础的beatleader查分 ## 🔍 已知问题 有极少数的SteamID获取不到beatleader中某些信息导致代码报错(换成.get函数不知道怎么样了...) 比其他查分器运行的要慢一些~(现在更久了...( T﹏T )) (歌曲图片都在海外,如果没有科学上网下载图片会很慢,导致响应时间会变得有些长) 绑定信息存在本地,如果换Bot查分的话你需要再绑定一次 在scoresaber查分下,有个别账号在#36-#40之间id丢失,目前我找不到原因 ## 🗨️ 想说的话 之后的某些更新可能需要借助BeatLeader完成对ScoreSaber查分图的优化 建议**两个排行榜一起用**捏(两个一起用不好嘛( >﹏<。)) 还有些地方还没做,但我们也做出相对满意的东西力o(〃’▽’〃)o之后还会慢慢优化的 本人代码写的比较烂,谨慎pr~~ 如果你有更好的想法和建议,随时欢迎提出issues~(●´∀`●)(一些抽象的想法我也会考虑哒) 可以的话,给个小小的star~,你的star会让我获得happy buff♪(^∀^●)ノシ ## 💡 鸣谢 ### Homo大佬 ----核心成员,负责本项目的绝大部分美术ヾ(*´▽‘*)ノ ### [Nonebot框架](https://github.com/nonebot/nonebot2) ## 🎨 效果 At last,效果图(●′ω`●) enjoy~ ## 🚧 测试 测试环境 Unraid-6.11.5 Docker-20.10.21 Ubuntu-24.04 python-3.12.3 nonebot2-2.3.0 httpx-0.23.1 pillow-10.4.0 **2分34秒**