|
|
569801dd14
|
fix: 赛马插件P0-P2问题修复
- P0: room_store sqlite3→aiosqlite异步化
- P0: points_service统一异常处理+轻量重试
- P0: _send_to_scope加warning日志
- P1: 积分历史记录补充source/reason字段
- P1: 赛马结算写入赔率快照(odds_snapshot)
- P1: test_commands改为commands_mod间接引用(测试隔离)
- P2: 马名去重统一casefold()比较
|
2026-05-01 22:50:14 +08:00 |
|
|
|
b4f71ddb3b
|
docs(赛马插件): 更新命令说明并改进默认马名逻辑
- 在README中补充命令参数和示例
- 当未提供马名时,自动使用用户昵称作为默认马名
- 优化帮助文本中的命令描述
|
2026-04-07 20:50:28 +08:00 |
|
|
|
9895256064
|
feat(horse_racing): 实现赛马消息更新替换与自动撤回
重构消息发送逻辑,引入消息类型区分和自动撤回机制。赛马进度更新现在会替换前一条更新消息,避免消息刷屏;比赛结果发送前自动撤回最后一条进度更新,提升聊天体验。同时支持配置不同消息类型的自动撤回时间。
- 新增 MessageService.send_with_recall 方法统一处理消息发送和撤回
- 添加 recall_previous_of_type 方法用于撤回特定类型的上一条消息
- 修改 _send_to_scope 函数支持消息类型参数
- 更新测试代码以适配新的消息发送接口
|
2026-04-07 20:17:00 +08:00 |
|
|
|
2b8afcb1b0
|
fix(赛马插件): 修复进度条对齐并显示积分余额
修复赛马进度条显示时中文字符宽度计算问题,使用全角空格进行对齐
在积分结算时异步获取并显示用户当前积分余额
|
2026-04-06 23:33:01 +08:00 |
|
|
|
386e67ec60
|
feat(赛马插件): 在结算时显示用户昵称而非ID
- 新增 `_get_user_name` 和 `_build_name_map` 函数,用于根据群名片或昵称获取用户显示名
- 修改 `_format_point_change_lines` 函数,接受并应用昵称映射
- 在 `run_race_with_settlement` 中构建昵称映射,并在冠军马主和中奖下注者处使用显示名
|
2026-04-06 23:24:32 +08:00 |
|
|
|
498d39b676
|
feat(赛马插件): 调整参与奖励并优化赛马显示对齐
- 将参与奖励从50点降低到20点以平衡经济系统
- 为所有马主添加参与奖励计算和发放逻辑
- 优化赛况显示中的马名对齐,支持中文字符宽度计算
|
2026-04-06 23:21:21 +08:00 |
|
|
|
aca33820fc
|
fix(群赛马): 将比赛开始消息发送方式从finish改为send
避免使用finish导致命令执行提前结束,确保后续异步比赛任务能正常执行
|
2026-04-06 23:14:20 +08:00 |
|
|
|
e773a7a1ef
|
feat: 赛马游戏调整 - 允许自马下注 & 取消非冠军参赛奖励
- 移除下注时不能给自己马匹下注的限制
- 非冠军马主不再获得参赛奖励积分(PARTICIPANT_REWARD=0)
- 同步更新帮助文本、README文档和config默认值
|
2026-04-05 21:25:10 +08:00 |
|
|
|
ff8cf611af
|
feat(赛马): 完善帮助命令信息
|
2026-04-04 22:51:05 +08:00 |
|
|
|
64020cb0e6
|
feat(赛马): 为马匹添加序号并优化积分结算展示
- 为 Horse 模型添加 index 字段,用于唯一标识马匹序号
- 在报名时自动分配递增序号,并在所有展示中使用固定序号排序
- 新增积分变化计算功能,在比赛结果中展示每位用户的积分变化和总结描述
- 支持通过序号或马匹名下注,优化用户交互体验
- 添加用户上次马名记忆功能,允许重复使用马名报名
- 更新测试用例以验证序号展示和积分变化功能
|
2026-04-04 22:43:46 +08:00 |
|
|
|
ab1329042a
|
feat(group_horse_racing): 增加赛马消息图片渲染功能
- 在配置中新增图片渲染相关参数:RACE_RENDER_AS_IMAGE、RACE_IMAGE_WIDTH 等
- 复用 danding_qqpush 的 ImageRenderer,使其支持自定义标题
- 在比赛开始、结束和进度播报时,将文本消息转换为带标题的图片发送
- 修复测试用例中的消息发送函数调用
|
2026-04-04 22:09:53 +08:00 |
|
|
|
adccbfebb5
|
添加赛马实时进度播报
将比赛循环从race_engine移到commands中,每回合发送进度条:
马匹名 |████████░░░░░░| 45.2m
race_engine改为提供tick/determine_champion/format_progress方法
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-04 01:32:42 +08:00 |
|
|
|
1dd247ab4b
|
修复:参赛奖励改为结算时发放
报名时不再立即发放积分,改为比赛结算时统一发放参与奖励,
防止通过反复报名/取消刷积分
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-04 01:23:06 +08:00 |
|
|
|
e341fc085c
|
补全赛马插件完整游戏逻辑
实现所有帮助文本中声明的命令和比赛结算流程:
- 赛马报名:解析马匹名、创建Horse对象、防重复报名、发放参赛奖励
- 赛马取消报名:移除马匹、退还相关下注
- 赛马下注:扣积分、记录下注、不能给自己的马下注
- 赛马赔率:基于下注分布动态计算赔率
- 赛马开赛:异步执行比赛、自动结算冠军奖励和下注赔付、保存结果
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-04 01:18:49 +08:00 |
|
|
|
387dd3a0bb
|
修复:group_horse_racing 环境变量加载问题
- 修改 __init__.py 在插件初始化时加载 Config
- 修改 commands.py 和 test_commands.py 从 __init__.py 导入 plugin_config
- 确保配置通过 NoneBot 的 driver 正确加载环境变量
- 这样可以正确解析 .env 中的 JSON 格式环境变量
这解决了权限检查中 TESTERS 集合为空的问题。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-03 22:50:20 +08:00 |
|
|
|
ab1b25e239
|
功能:实现 Group_Horse_Racing 群赛马插件
- 新增群赛马游戏插件,支持多人参与赛马竞猜
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 00:24:25 +08:00 |
|