This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
# alpha 0.6.3.1015 多人彩票与游戏记录
|
||||
|
||||
## 一把彩票怎么玩
|
||||
|
||||
1. 任意群友发送 `/彩票 开始`。发起人是本轮主持人。
|
||||
2. 每个人发送 `/彩票 报名 3 4 7 100`,表示选择 3、4、7,下注 100
|
||||
金币。也可简写为 `/彩票347100`;省略金额时默认下注 10。
|
||||
3. 发送 `/彩票 当前状态` 查看本轮主持人、报名人数、每个人的号码和下注。
|
||||
4. 主持人发送 `/彩票 开奖`。机器人从 0~9 中抽取三个互不重复的数字,
|
||||
统一排序后结算。
|
||||
5. 主持人也可在开奖前发送 `/彩票 取消`,所有报名者全额退款。
|
||||
|
||||
命令关键词和数字之间的空格均可省略。`/买彩票` 和 `/lottery` 保留为
|
||||
对应别名。
|
||||
|
||||
## 选号与报名
|
||||
|
||||
- 每张票必须是三个互不重复的 0~9 数字。
|
||||
- 数字顺序不影响结果:`347`、`743` 和 `3 4 7` 都保存为 `3 4 7`。
|
||||
- 每人每把只有一张票。再次报名会更新号码和下注,不增加个人局号。
|
||||
- 更新到更高下注时只补扣差额;降低下注时退回差额。
|
||||
- 下注范围是 1~500,省略时为 10。
|
||||
- 没有进行中的彩票时不能报名;没有报名者时不能开奖。
|
||||
- 只有创建本轮的主持人可以开奖或取消,状态查询对群内所有人开放。
|
||||
|
||||
支持的报名示例:
|
||||
|
||||
```text
|
||||
/彩票 347
|
||||
/彩票 743 100
|
||||
/彩票 报名 3 4 7 100
|
||||
/彩票报名347金额100
|
||||
/彩票347100
|
||||
/lottery join 347 100
|
||||
```
|
||||
|
||||
## 返还规则
|
||||
|
||||
报名时先扣除下注。开奖号和玩家号码按集合比较,返还包含本金:
|
||||
|
||||
| 命中数 | 返还 |
|
||||
|---|---:|
|
||||
| 0 个 | 0% |
|
||||
| 1 个 | 50% |
|
||||
| 2 个 | 120% |
|
||||
| 3 个 | 300% |
|
||||
|
||||
金币只使用整数;百分比计算的小数部分向下取整。例如下注 100,命中两个
|
||||
返还 120,净变化为 `+20`。
|
||||
|
||||
## 个人局号与记录
|
||||
|
||||
抽奖、彩票和 21 点分别维护本人的游戏局号。第一次参与某种游戏显示
|
||||
`Jacky #1:...`,下一把显示 `Jacky #2:...`。配置别名解析到同一人物时,
|
||||
共用同一账户、局号和历史。
|
||||
|
||||
发送 `/游戏记录 [页码]`、`/个人记录 [页码]` 或
|
||||
`/gamehistory [page]` 查看最近记录,每页五条。记录包含游戏、个人局号、
|
||||
结果、下注、返还和净变化,最多保留最近 50 条。
|
||||
|
||||
21 点下注范围同步调整为 1~500。`/21点 开始 100` 只表示本局下注 100;
|
||||
发牌后再单独发送 `/21点 要牌` 或 `/21点 停牌`。
|
||||
|
||||
## 持久化与并发
|
||||
|
||||
彩票轮次、报名和结算保存在 Edge SQLite。报名/改注、所有玩家的开奖返还、
|
||||
取消退款和事件重放响应都在 `BEGIN IMMEDIATE` 事务中提交。重复事件不会
|
||||
重复扣款、发奖或增加局号;进程重启后未开奖轮次和个人记录仍然保留。
|
||||
@@ -9,9 +9,10 @@ OpenClaw;中文、英文命令对应同一实现,英文不区分大小写,
|
||||
| context-summary | `/上下文 [100|200|300]` | `/context [100|200|300]` |
|
||||
| single-player-games | `/金币` | `/wallet` |
|
||||
| single-player-games | `/抽奖 [金额]` | `/draw [金额]` |
|
||||
| single-player-games | `/买彩票 [000~999] [金额]` | `/lottery [000~999] [金额]` |
|
||||
| single-player-games | `/彩票 开始/报名/当前状态/开奖/取消` | `/lottery start/join/status/draw/cancel` |
|
||||
| single-player-games | `/21点 开始 [金额]`(空格可省略) | `/blackjack start [金额]`(空格可省略) |
|
||||
| single-player-games | `/21点 要牌/停牌/状态/结束` | `/blackjack hit/stand/status/end` |
|
||||
| single-player-games | `/游戏记录 [页码]` | `/gamehistory [page]` |
|
||||
| single-player-games | `/游戏帮助` | `/games` |
|
||||
| person-directory | `/人物列表 [页码]`、`/别名列表 [页码]` | `/people [页码]` |
|
||||
| person-directory | `/人物 [名称或别名]`、`/个人属性 [名称或别名]` | `/person [名称或别名]` |
|
||||
@@ -51,27 +52,29 @@ person_key。相同人物的已配置别名共用金币和牌局,其他群使
|
||||
应优先追加别名而不是重命名。用户不能通过游戏命令指定他人的账户,
|
||||
不能充值、转账、赠币或兑换真实资产。
|
||||
|
||||
## 单人游戏管理
|
||||
## 虚拟金币与游戏管理
|
||||
|
||||
每个群内人物首次使用账户时一次性获得 1000 虚拟金币。再次查询、
|
||||
重启服务或切换已配置别名都不会重复领取。下注为 2~100 的整数,
|
||||
余额不足或参数非法不扣款。
|
||||
重启服务或切换已配置别名都不会重复领取。抽奖下注为 2~100,彩票和
|
||||
21 点下注为 1~500;余额不足或参数非法不扣款。
|
||||
|
||||
抽奖默认下注 10:5% 概率返还五倍下注,20% 返还两倍,其余无返还。
|
||||
彩票默认随机三位号码、下注 10;可指定 000~999,命中返还五百倍。
|
||||
所有返还都包含本金,回复同时报告下注、返还、净变化和余额。
|
||||
alpha 0.6.3 将旧的个人即时彩票替换为群内多人轮次。三位数字顺序无关,
|
||||
下注范围 1~500,命中 1/2/3 个分别返还 50%/120%/300%。完整流程见
|
||||
[多人彩票与游戏记录](group-lottery-0.6.3.md)。
|
||||
|
||||
21 点默认下注 50。`/21点 开始 100` 表示拿 100 金币作为本局下注进场,
|
||||
21 点默认下注 50、范围 1~500。`/21点 开始 100` 表示拿 100 金币作为本局下注进场,
|
||||
等价的 OCR 紧凑形式是 `/21点开始100`。开局会扣除下注并发两张牌,
|
||||
然后根据牌面单独发送 `/21点 要牌` 或 `/21点 停牌`;开局与操作写在
|
||||
同一条消息时不会扣款,而会返回分步提示。牌局使用洗牌后的单副 52 张牌,
|
||||
牌堆、双方手牌、下注和最后操作时间持久化。A 可作为 1 或 11;
|
||||
庄家软 17 停牌。开始后只公开一张庄家牌;要牌、停牌、认输和查询都
|
||||
仅针对本人牌局。发牌、状态和结算回复以当前群内人物的配置展示名开头,
|
||||
例如 `jacky:你的牌 ...`;别名解析到同一人物时沿用相同展示名和账户。
|
||||
例如 `jacky #1:你的牌 ...`;别名解析到同一人物时沿用相同展示名、
|
||||
账户、局号和游戏记录。
|
||||
自然 21 点立即结算,返还 2.5 倍下注向下取整;普通胜利返还两倍,
|
||||
平局返还下注,失败不返还。每人最多一局;牌局进行中不接受另一笔
|
||||
抽奖、彩票或开局。
|
||||
抽奖或 21 点开局,多人彩票报名仍可独立进行。
|
||||
|
||||
十分钟无有效游戏操作的牌局在下一次账户操作时按认输结束;查询状态
|
||||
不延长有效期。主动结束同样按认输处理,不退下注。其他人可以各自
|
||||
|
||||
Reference in New Issue
Block a user