返回赛题列表
21 点(Blackjack)
进阶经典 21 点纸牌游戏——玩家与庄家对决,目标是手牌点数尽量接近 21 但不能爆牌。考察纸牌游戏规则实现、庄家 AI 决策逻辑和筹码系统。
规则说明▼
模型需要生成一个单文件 HTML 网页。
页面是一个经典的 21 点(Blackjack)纸牌游戏。玩家与庄家一对一对决,目标是手牌点数尽量接近 21 点但不超过 21 点。包含完整的要牌/停牌/加倍/分牌操作、庄家按规则自动决策、筹码下注系统和多局连续游戏。
phase1:仅给出一句话需求,零约束,考验模型对"21 点纸牌游戏"的自主理解
phase2:给出完整的规则和功能列表,考察模型对复杂纸牌规则的精确实现和工程完成度
Prompt▼
phase1:▼
做一个单文件 HTML 的 21 点(Blackjack)纸牌游戏。
phase2:▼
做一个单文件 HTML 的 **21 点(Blackjack)** 经典纸牌游戏。玩家与庄家一对一对决,目标是手牌点数尽量接近 21 但不爆牌。
````
### 核心规则
- 使用标准 52 张扑克牌(无大小王),可配置 1–6 副牌(默认 1 副)
- 牌面点数:2–10 按面值计算,J/Q/K 算 10 点,A 可算 1 或 11(自动选择对玩家最有利的值)
- 开局:玩家和庄家各发 2 张牌,玩家两张明牌,庄家一明一暗(暗牌背面朝上)
- **Blackjack**:前两张牌即为 A + 10 点牌,直接获胜(除非庄家也是 Blackjack 则平局)
### 玩家操作
1. **要牌(Hit)**:再抽一张牌,点数超过 21 则爆牌(Bust),立即输
2. **停牌(Stand)**:不再要牌,轮到庄家行动
3. **加倍(Double Down)**:将赌注翻倍,再抽且仅抽一张牌后自动停牌。仅在前两张牌时可用
4. **分牌(Split)**:当前两张牌点数相同时,可拆分为两手分别进行。分牌后每手各补一张牌,独立操作。仅允许分牌一次(不可递归分牌)
5. 分牌后的每手牌可独立执行 Hit / Stand / Double Down
### 庄家规则
6. 玩家全部停牌后,庄家翻开暗牌
7. 庄家按固定策略行动:点数 < 17 必须要牌,≥ 17 必须停牌(Soft 17 规则:含 A 算 11 的 17 点也停牌)
8. 庄家爆牌则所有未爆牌的玩家手牌获胜
### 胜负判定与赔率
9. 玩家爆牌 → 玩家输(不论庄家后续结果)
10. 庄家爆牌 → 玩家赢
11. 双方都未爆牌 → 点数大者赢,相同则平局(Push)
12. 赔率:普通赢 1:1,Blackjack 天牌赢 3:2,平局退还赌注
13. 加倍后赔率基于翻倍后的赌注计算
### 筹码与下注
14. 玩家初始筹码 1000
15. 每局开始前选择下注金额(提供快捷筹码按钮:10 / 25 / 50 / 100 / 全押)
16. 筹码余额实时显示,归零时游戏结束(可选择重新开始,重置为 1000)
17. 筹码余额使用 localStorage 持久化,刷新不丢失
### 牌堆管理
18. 牌堆剩余数量可视化显示
19. 当牌堆剩余不足 30% 时自动重新洗牌(多副牌时尤其重要)
20. 洗牌时有视觉提示
### 视觉设计
- 经典赌桌风格:深绿色桌面背景,木质或金属边框装饰
- 扑克牌使用标准设计:白底、圆角、四角显示点数和花色(♠♥♦♣),花色用红黑双色
- 牌背面有统一的花纹图案
- 发牌、翻牌有流畅的动画效果(牌从牌堆滑出、翻转)
- 爆牌时有明显的视觉反馈(如牌面变红、震动)
- Blackjack 天牌有庆祝特效
- 筹码区域有堆叠的筹码视觉效果
- 响应式布局,移动端可用(按钮足够大,触屏友好)
````
Gemini 3.1 Pro Preview High Thinking
Google · Vertex AI Studio