- server.py: zero-dependency stdlib backend (HTTP + WebSocket /ws), 大话骰 rule engine, server-driven bots - live.html: real MVP frontend wired to the backend over WebSocket - index.html/app.js/style.css: older static prototype - deploy/: systemd unit + Nginx reverse proxy + Let's Encrypt setup.sh - test_*.py: standalone HTTP / in-process test scripts Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
177 lines
3.0 KiB
Markdown
177 lines
3.0 KiB
Markdown
# 喝酒游戏集合项目设计方案
|
||
|
||
## 项目定位
|
||
|
||
项目名称暂定:**酒桌派对 Drinking Game Hub**
|
||
|
||
这是一个适合线下聚会、KTV、酒吧、朋友酒局使用的多人喝酒游戏集合。用户只需要手机打开网页,输入昵称,即可创建或加入房间。
|
||
|
||
## 游戏集合
|
||
|
||
首期包含 4 个游戏:
|
||
|
||
1. **德州扑克**
|
||
- 适合 2-9 人
|
||
- 可做筹码、底池、翻牌、转牌、河牌
|
||
- 可加入喝酒惩罚,例如输家喝、All-in 输家翻倍
|
||
|
||
2. **大话骰**
|
||
- 适合 2-12 人
|
||
- 支持叫点、开骰、斋/飞/劈等扩展规则
|
||
- 酒局热场核心玩法
|
||
|
||
3. **六张牌**
|
||
- 适合 2-8 人
|
||
- 每人六张牌,快速比牌
|
||
- 节奏快,适合短局惩罚
|
||
|
||
4. **抓二游**
|
||
- 适合 4-8 人
|
||
- 抓牌、组队、对抗、结算
|
||
- 可做地方玩法扩展
|
||
|
||
## 核心用户流程
|
||
|
||
```text
|
||
输入昵称 → 进入大厅 → 选择游戏 → 创建/加入房间 → 等待玩家 → 房主开始 → 游戏进行 → 结算喝酒惩罚 → 再来一局
|
||
```
|
||
|
||
## 页面结构
|
||
|
||
### 1. 首页 / 大厅
|
||
|
||
功能:
|
||
|
||
- 输入昵称
|
||
- 快速开房
|
||
- 输入房间号加入
|
||
- 随机加入
|
||
- 游戏列表
|
||
- 可加入房间列表
|
||
|
||
### 2. 游戏选择页
|
||
|
||
每个游戏卡片展示:
|
||
|
||
- 游戏名称
|
||
- 图标
|
||
- 人数范围
|
||
- 游戏标签
|
||
- 简短玩法说明
|
||
- 创建房间按钮
|
||
|
||
### 3. 房间页
|
||
|
||
功能:
|
||
|
||
- 房间号
|
||
- 玩家列表
|
||
- 房主标识
|
||
- 准备状态
|
||
- 暂停加入
|
||
- 邀请链接
|
||
- 开始游戏
|
||
- 退出房间
|
||
|
||
### 4. 游戏页
|
||
|
||
不同游戏独立布局,但保留统一顶部:
|
||
|
||
- 当前房间
|
||
- 当前玩家
|
||
- 轮次状态
|
||
- 操作按钮
|
||
- 聊天/提示区
|
||
- 喝酒惩罚提示
|
||
|
||
### 5. 结算页
|
||
|
||
展示:
|
||
|
||
- 本局赢家
|
||
- 本局输家
|
||
- 喝酒惩罚
|
||
- 再来一局
|
||
- 返回大厅
|
||
|
||
## 视觉风格
|
||
|
||
建议风格:
|
||
|
||
- 深色背景
|
||
- 霓虹酒吧感
|
||
- 橙色、金色、玫红点缀
|
||
- 卡片式布局
|
||
- 移动端优先
|
||
- 按钮大、操作简单
|
||
|
||
关键词:
|
||
|
||
```text
|
||
酒吧感、派对感、年轻、刺激、手机友好、无需登录、快速开局
|
||
```
|
||
|
||
## 技术建议
|
||
|
||
### 免费轻量版
|
||
|
||
适合快速上线:
|
||
|
||
- 前端:HTML / CSS / JavaScript 或 React
|
||
- 后端:Flask / FastAPI / Node.js
|
||
- 实时通信:WebSocket
|
||
- 数据存储:内存 + SQLite
|
||
- 部署:1Panel / Docker / Nginx
|
||
|
||
### 推荐正式版
|
||
|
||
- 前端:React + Tailwind CSS + shadcn/ui
|
||
- 后端:FastAPI 或 Flask
|
||
- 实时通信:Socket.IO / WebSocket
|
||
- 数据库:SQLite 起步,后续 PostgreSQL
|
||
- 房间状态:Redis 可选
|
||
|
||
## MVP 优先级
|
||
|
||
### 第一阶段:大厅 + 房间系统
|
||
|
||
必须做:
|
||
|
||
- 昵称进入
|
||
- 游戏选择
|
||
- 创建房间
|
||
- 加入房间
|
||
- 玩家列表
|
||
- 房主开始
|
||
- 暂停加入
|
||
|
||
### 第二阶段:先做大话骰
|
||
|
||
原因:
|
||
|
||
- 最适合喝酒
|
||
- 规则容易
|
||
- UI 互动强
|
||
- 最容易出氛围
|
||
|
||
### 第三阶段:加入德州扑克
|
||
|
||
加入:
|
||
|
||
- 发牌
|
||
- 公共牌
|
||
- 筹码
|
||
- 回合操作
|
||
- 胜负结算
|
||
|
||
### 第四阶段:六张牌、抓二游
|
||
|
||
作为扩展玩法加入。
|
||
|
||
## 当前原型文件
|
||
|
||
- `index.html`:大厅 UI 原型
|
||
- `style.css`:视觉样式
|
||
|
||
可以直接在 Minis 里预览。
|