Seira 是一个提供 osu! 成绩查询的 QQ 机器人。 支持生成最好成绩图、最近成绩图、排行榜等,持续更新中...
Seira 依赖 oStella 作为上游数据服务。
详细使用文档在这里~
扫描下面的二维码添加机器人↓
Seira正在活跃开发中,在使用的过程中可能会有一些Bug,也会有维护的情况发生🥹
如果使用过程中遇到了问题,或是有功能建议,欢迎Issue & PR 🥰
另外,由于QQ机器人最近正在进行业务调整,部分功能可能会不稳定或暂时不可用
不论是单人回放...
还是群友的同屏回放!
所有命令都以
/开头。指令详情请见文档。
| 命令 | 用法 | 结果 |
|---|---|---|
/bind |
/bind |
开始osu账号绑定流程 |
/unbind |
/unbind |
解除当前用户的osu账号绑定 |
/clearhistory |
/clearhistory |
清除当前用户在群聊中的记录 |
/f |
/f |
获取好友列表 |
/fall |
/fall |
获取全部好友列表 |
/fclear |
/fclear |
清除好友记录 |
/bp |
/bp [n/a-b] [uid/username/@user] [filters...] |
获取最多200条最好成绩或指定范围后过滤;省略数量时返回第一个匹配成绩详情 |
/rs |
/rs [n/a-b] [uid/username/@user] [filters...] |
获取最多200条最近成绩或指定范围后过滤;省略数量时返回第一个匹配成绩详情 |
/rp |
/rp [n/a-b] [uid/username/@user] [filters...] |
获取最多200条最近通过成绩或指定范围后过滤;省略数量时返回第一个匹配成绩详情 |
/tb |
/tb [#days] [uid/username/@user] |
获取近N天达成的BP(默认1天),并保留完整BP排名编号 |
/m |
/m <id/rsN/bpN> [Mod] |
获取指定谱面信息 |
/ap |
/ap <id/rsN/bpN> |
获取指定谱面音频预览 |
/bgp |
/bgp <id/rsN/bpN> |
获取指定谱面背景预览 |
/s |
/s <id/locId/rsN/bpN> |
获取指定的在线或本地成绩图 |
/sa |
/sa <id/locId/rsN/bpN> |
获取指定成绩分析图 |
/ma |
/ma [id/locId/rsN/bpN] [n/#n] |
获取指定或最近目标成绩的Miss分析;省略目标时用#n指定Miss |
/u |
/u [uid/username/@user] |
获取指定用户信息 |
/@ |
/@[someone] |
获取自己或指定用户的文字版信息 |
/r |
/r [id/locId/rsN/bpN] [[mm:ss]-[mm:ss]] |
生成并发送指定或最近目标的回放视频。省略范围时自动识别高光,使用-渲染整个回放 |
/rg |
/rg <start/group/#Rank/end/wish/stats [all]/lb [all]> |
猜 Rank 游戏及个人战绩查询 |
/rsc |
/rsc [id/locId/rsN/bpN] [+<id1>,<id2>...] |
生成并发送指定或最近目标的成绩同屏回放视频;追加用户和范围顺序不限 |
/rstat |
/rstat [id] |
获取视频生成进度 |
/rcancel |
/rcancel <id> |
取消排队中、渲染中或上传中的回放任务 |
/ms |
/ms <id/rsN/bpN> |
获取指定谱面集信息 |
/dl |
/dl <id/rsN/bpN/mp> |
获取指定谱面集的镜像下载链接 |
/sms |
/sms <query> |
搜索谱面集 |
/lb |
/lb [id] [<uid1>,<uid2>...] |
列出指定谱面排行或表现分排行 |
/daily |
/daily |
每日挑战信息 |
/roll |
/roll [dice] |
掷骰子 |
/luck |
/luck |
今日人品 |
/rbp |
/rbp [uid/username/@user] |
获取随机BP |
/mp |
/mp |
多人房间列表 |
/watch |
/watch add/del/list [目标] |
添加/删除/列出监视任务 |
/mpwatch |
/mpwatch start/stop/status [目标] |
按群成员添加、停止或查看多人房间监视;stop all 可停止本群全部监视 |
/romai |
/romai [目标] |
开始监视自己或目标正在进行的RomAI比赛 |
/mc |
/mc <服务器地址> |
获取指定MC服务器状态 |
/ai |
/ai [on/off/reset/reset all] |
开启/关闭/重置本群的AI对话 |
/wx |
/wx start <UID列表> <谱面ID列表> / /wx stop |
监视指定玩家在指定谱面取得的成绩,重启后自动恢复 |
/dcs |
/dcs start <guild-id>.<channel-id> / /dcs stop |
开启或解除当前 QQ 群与 Discord 频道的双向消息同步 |
/stat |
/stat |
服务状态和统计信息文本 |
/inspect |
/inspect |
获取当前上下文信息 |
/help |
/help |
显示帮助信息 |
部分指令会先回复“请求已加入队列,预计等待时间 X 秒”,待异步请求完成后再额外发送结果消息。
/r和/rsc(回放渲染)会先返回“生成请求正在等待中,队列位置:N”,随后返回请求状态,最后在渲染完成后再发送回放视频。
上传 osu! 服务器上不存在的 .osr 回放后,机器人会返回形如 loc123456789 的本地成绩ID;该ID可用于 /s、/sa、/ma、/r、
/rsc 等成绩目标指令。
对于一些需要指定谱面ID或成绩ID的指令(如 /m、/s、/ms 等),支持快捷查询写法,格式为 rs5、bp3、rp2。
快捷查询也可以直接作为指令使用,并在后面指定玩家,例如 /bp5 @用户;紧凑写法同样支持列表范围,例如 /bp21-30、
/rp6-10 @用户。
这些指令会共享最近一次显式指定的查询目标。已有最近目标时,/r、/rsc、/ma 可以省略目标,例如 /r 01:00-01:30、
/rsc +12345,67890 -、/ma #2。
也可以在前面写上玩家ID、用户名或@用户,例如 123456 rs5、peppy bp3、@ABC bp3,表示查询指定玩家的最近成绩第 5 条或最好成绩第
3 条。
rs5:使用你已绑定的玩家ID,查询“最近成绩第 5 条”rp1:使用你已绑定的玩家ID,查询“最近通过成绩第 1 条”bp3:使用你已绑定的玩家ID,查询“最好成绩第 3 条”12345 rs1:使用12345作为玩家ID,查询“最近成绩第 1 条”peppy rs1:先按用户名查找玩家ID,再查询“最近成绩第 1 条”@ABC rs1:使用ABC绑定的用户的ID作为玩家ID,查询“最近成绩第 1 条”
省略玩家目标时,使用快捷查询前需要先执行 /bind,否则会提示无法使用快捷查询。
你可以在私聊中直接发送你的回放文件,Seira会将其转存。 这样就可以对未上传到osu!服务器的回放进行分析了。
Warning
警告:危险区域!
以下命令仅用于调试,使用不当可能会造成数据丢失、账号封禁等后果,且仅在调试模式启用且发送者为bpt管理员的情况下可用。
这些指令可能会随时进行添加、修改或删除,且不保证向后兼容。
| 命令 | 结果 |
|---|---|
/debug.upload <type> <cos> <url> |
上传指定文件 |
/debug.test |
发送一段测试文本 |
/debug.message <base64> |
将指定Base64解码并作为Markdown消息发出 |
/debug.db <sql> |
对后端数据库执行指定的SQL语句 |
/debug.update-user-info |
更新数据库中所有玩家的信息 |
/debug.active-message |
发送一条主动消息 |
Note
此节仅面向想自行部署 Seira 的用户。 若想直接使用,请见使用指南
- JDK 25
- Maven
- QQ 开放平台机器人应用凭据
- 一个可访问的 oStella API
启动程序时,若不存在config.yml则会自动创建。请根据提示编辑 config.yml。
默认配置参见seira-example-config.yml
mvn -U clean compile exec:java