完整实现 UNO Show 'Em No Mercy 规则,含 Draw 6、Draw 10、Skip Everyone 等惩罚卡
open mercy — Vue 游戏站模板
作者 alii13
开源实时多人卡牌游戏站,支持2-10人对战与AI单机模式,含WebMCP接口供AI代理游玩。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。 本截图因高度限制未包含整页。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
无需登录即可游玩,支持匿名认证,创建房间与 2-10 人实时对战
内置 AI 对手的单人模式,适合快速体验
通过 WebMCP 暴露游戏工具,AI 代理可自动发现并参与游戏
程序化 SVG 生成卡牌,无图片资源依赖,加载轻量
移动端响应式设计,支持 320px 以上屏幕
模板详细介绍
open mercy 是一个开源的实时多人卡牌游戏项目,基于 Vue 3 与 TypeScript 构建,实现了 Mattel UNO Show 'Em No Mercy 的完整规则,包括 Draw 6、Draw 10、Skip Everyone、Discard All、Color Roulette 等惩罚性卡牌。项目提供可直接运行的在线演示,无需登录即可快速加入游戏,支持创建房间与 2-10 人实时对战,也内置了 AI 对手的单人模式。前端采用程序化 SVG 生成卡牌,无需图片资源,并配有自定义的工业/赛博朋克风格主题。后端依赖 Supabase 处理匿名认证、游戏状态与实时同步,可选 Cloudflare Worker 代理以绕过区域限制。
项目结构清晰,前端代码位于 frontend 目录,包含组件、组合式函数、Pinia 状态管理和游戏规则工具。部署到 Cloudflare Pages 的流程在 README 中有详细说明,支持 CLI 或 GitHub 自动部署。值得注意的是,项目通过 WebMCP 暴露了游戏工具接口,允许 AI 代理像人类玩家一样浏览页面并参与游戏,且只获取玩家可见的信息,不泄露对手手牌。这一特性使其成为测试 AI 代理与网页游戏交互的独特起点。
需要自行核对的是,项目尚未提供完整的数据库表结构或迁移文件,Supabase 的配置步骤仅涵盖认证与 URL 设置,实际游戏状态存储可能依赖运行时自动建表,但 README 未明确说明。此外,项目处于早期阶段(15 stars),许可证状态标注为待审查,上线前需确认代码合规性。若计划用于生产环境,建议先验证多人同步的稳定性与安全性。
适合你的项目吗?
适用场景
- 作为 UNO 变体规则的参考实现,用于学习卡牌游戏状态管理
- 作为 AI 代理与网页游戏交互的实验平台,测试 WebMCP 能力
- 作为 Supabase 实时同步与匿名认证的示例项目
- 作为 Vue 3 + TypeScript 游戏开发的教学案例
适合人群
- 对卡牌游戏规则实现感兴趣的开发者
- 研究 AI 代理与网页交互的技术爱好者
- 需要快速搭建多人游戏原型的团队
- 希望了解 Supabase 在游戏后端应用的开发者
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
需要 Node.js 18+ 和一个 Supabase 项目(免费版即可)。
- 2
克隆仓库后,在 frontend 目录安装依赖,复制 .env.example 为 .env 并填入 Supabase URL 与匿名密钥。
- 3
需在 Supabase 控制台启用匿名登录,并设置 Site URL 为你的部署地址。
- 4
本地运行 npm run dev,生产构建用 npm run build。
- 5
部署到 Cloudflare Pages 时,构建命令为 npm run build,输出目录为 dist,根目录为 frontend,并配置相应环境变量。
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明MIT许可允许免费使用、修改、分发和商用,仅需保留版权与许可声明;README声明为独立项目并自创名称与美术。
使用时需要遵守
- 保留原作者版权声明和 MIT 许可证声明。
- 保留版权声明和许可声明于所有副本或实质部分
额外费用与待核对事项
- README声明与Mattel及UNO品牌无关联,未确认第三方商标或素材使用范围
查看原文依据
Permission is hereby granted, free of charge, to any person obtaining a copy
许可证原文
Card game rules are not copyrightable; the name, art, and trade dress here are our own.
README 原文
https://github.com/alii13/open-mercy/blob/main/LICENSEhttps://github.com/alii13/open-mercy/blob/HEAD/README.mdPermission is hereby granted, free of char
许可证原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-09-24。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 77 / 100
- 技术栈
- Vue · TypeScript
- 网站类型
- 游戏站
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-09-01
- 截图检查日期
- 2026-09-05
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Vue。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
当前版本没有可核对的编辑审核记录;旧的应用时间不代表已完成事实审核。
这条历史介绍未保存固定版本的来源快照。请对照当前仓库,发现不一致可反馈。
反馈内容错误看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

GeoGuess
GeoGuess 是一个开源的多人地理猜谜游戏项目,核心玩法是让玩家在五轮中猜测随机地点的位置,比拼谁离真实地点更近。 它支持最多五名玩家联机对战,房主创建房间并设定规模,其他人输入相同房间名即可加入。
Vue · 游戏站

XlegeX Match 3
XlegeX Match 3 是一个基于 Vue 与 TypeScript 的三消网页游戏模板,定位是简化版的“羊了个羊”。 项目以兔子为默认素材,核心玩法是点击卡牌、匹配消除,并提供了完整的游戏状态管理与事件回调。
Vue · 游戏站

depict it
Depict It 是一个开源的多人派对游戏项目,核心玩法是玩家通过绘画和文字描述接力,将最初的短语演变成搞笑的故事。
Vue · 游戏站

n puzzle
n puzzle 是一个基于 Vue 的开源益智游戏项目,核心玩法是经典的滑块拼图(n-puzzle)。 项目提供了两种游戏模式:图片模式和数字模式,图片模式允许玩家自定义图片进行拼图,数字模式则使用数字方块。
Vue · 游戏站

mahjong
mahjong 是一个开源的麻将纸牌(Mahjong Solitaire)游戏项目,使用 Vue 3、TypeScript 和 Vite 构建。
Vue · 游戏站

game 2048
game 2048 是一个基于 Vue 3 和 Vite 的开源游戏站模板,实现了经典的 2048 游戏逻辑与交互。 项目提供真实的在线演示,可直接体验游戏玩法,也可以作为构建互动网页游戏的起点。
Vue · 游戏站
