Spaces:
Sleeping
Sleeping
File size: 4,686 Bytes
7756c57 14e1900 20984d5 7756c57 7644a65 7756c57 683852a 825a24e 683852a 825a24e 683852a 825a24e 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 20984d5 683852a 20984d5 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a 26b751d 683852a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 | ---
title: MahjongGameDesigner
emoji: 🀄️
colorFrom: green
colorTo: yellow
sdk: gradio
sdk_version: 5.9.1
app_file: app.py
pinned: false
---
# 🀄️ 麻将玩法创意工坊
> AI 驱动的麻将玩法设计与迭代工具
[](https://huggingface.co/spaces/Estazz/MahjongGameDesigner_work_v1)
---
## ✨ 功能亮点
| 功能 | 说明 |
|------|------|
| 🎯 **多阶段引导** | Analyse 模式逐步收敛需求,避免一次性生成偏差 |
| 🔄 **可控迭代** | 基于 DesignState 做最小修改,支持范围锁定 |
| 📊 **差异可视化** | 每轮修改自动对比,清晰展示变更点 |
| 🕐 **版本历史** | 支持回滚到任意历史版本 |
| 💡 **方案发散** | AI 给出多个候选方案供选择 |
| ✅ **输出校验** | 自动检测 mGDL 完整性和逻辑守恒 |
---
## 📖 完整使用指南
👉 **[点击查看完整使用指南 (USER_GUIDE.md)](./USER_GUIDE.md)**
指南包含:
- 界面各部分详细说明
- 每个选项的作用和使用场景
- 推荐工作流程
- 高级功能教程
- 系统架构说明
- 常见问题解答
---
## 🚀 30秒快速开始
### 方式一:需求明确时
直接在输入框描述你的想法:
```
设计一个"血战+扎鸟"的麻将玩法,底座是四川血战,
融入贵州捉鸡的扎鸟机制,胡牌后扎鸟独立计分
```
点击发送,等待 AI 生成完整玩法。
### 方式二:需求不明确时
1. ☑️ 勾选 **Analyse 模式**
2. 输入初步想法:"想做一个有扎鸟的血战麻将"
3. AI 会逐轮问你关键问题,帮你收敛需求
4. 当显示 `READY_TO_GENERATE: true` 时
5. 点击 **"基于当前 DesignState 生成完整玩法"**
---
## 📦 输出物
| 文件 | 内容 | 用途 |
|------|------|------|
| `gdl_output.txt` | mGDL v1.3 结构化描述 | 程序落地、规则引擎 |
| `narrative_output.txt` | 自然语言规则说明 | 策划评审、人工阅读 |
| `design_log_output.txt` | 设计日志 | 复核融合决策、追溯推演 |
---
## 🎮 核心控制选项说明
### 可控迭代控制区
| 选项 | 说明 |
|------|------|
| **启用可控迭代** | 基于上轮 DesignState 做最小修改(推荐开启) |
| **Analyse 模式** | 单问题迭代收敛需求,不生成 mGDL |
| **修改范围** | 限制 AI 本轮可修改的内容范围 |
### 细粒度范围控制
| 选项 | 说明 |
|------|------|
| **预设模式** | 使用预设的修改范围 |
| **自定义模式** | 手动锁定特定字段或机制 |
| **软约束** | 越界时提示但不阻断 |
| **硬约束** | 越界时阻断生成 |
### 版本与方案
| 功能 | 说明 |
|------|------|
| **版本历史** | 查看和回滚到历史版本 |
| **方案选择** | 从 AI 给出的多个方案中选择 |
| **重新发散** | 让 AI 给出更多不同方向的方案 |
---
## ⚙️ 环境变量配置
自部署时可通过环境变量调整:
```bash
# API 配置
DEEPSEEK_API_KEY=your-api-key
DEEPSEEK_BASE_URL=https://api.deepseek.com
MODEL_NAME=deepseek-chat
# 功能开关
ENABLE_REFERENCE_RETRIEVAL=1 # 参考玩法检索
REFERENCE_MAX_VARIANTS=3 # 最多注入几个参考
ENABLE_OUTPUT_VALIDATION=1 # 输出校验
```
---
## 🤔 常见问题
<details>
<summary><b>为什么 Analyse 模式不输出 mGDL?</b></summary>
Analyse 模式专注于"收敛需求",通过逐轮问答明确设计方向。当 `READY_TO_GENERATE: true` 时,使用"一键生成"按钮获取完整输出。
</details>
<details>
<summary><b>为什么 AI 修改了我没要求改的部分?</b></summary>
1. 确保开启"可控迭代"
2. 选择更严格的"修改范围"
3. 使用"细粒度范围控制"锁定关键字段
4. 必要时回滚到之前的版本
</details>
<details>
<summary><b>如何保证规则逻辑正确?</b></summary>
1. 检查输出中的"动作—手牌变化表"
2. 验证"最小回合推演"是否闭环
3. 确认 mGDL 的 invariants 包含守恒约束
4. 参考设计日志中的推演记录
</details>
---
## 📚 内置参考资源
工具已预加载以下资源:
- **mGDL v1.3 语法规范**
- **麻将机制说明词典**(50+ 常见机制)
- **参考玩法库**:
- 四川血战/血流
- 红中麻将
- 长沙麻将
- 贵州捉鸡
- 广东100张/鸡平胡
- 武汉麻将
- 卡五星
- 等等...
系统会根据你的输入自动检索最相关的参考玩法。
---
## 🛠️ 技术栈
- **前端**:Gradio 5.x
- **AI**:DeepSeek V3 / OpenAI 兼容 API
- **语言**:Python 3.10+
---
## 📝 License
MIT License
---
*Made with ❤️ for Mahjong enthusiasts*
|