🦊 三六局 V2

AI 主持人驱动的聚会破冰游戏 · 模块化架构 · 目标平台 微信小程序

核心架构

AI 担任主持人,全权驱动游戏进程。人类降级为「超级管理员」——只控制节奏和越权干预。 模块化设计,每模块 <500 行,移植微信小程序时仅需替换 UI 层和存储适配器。

模块结构

文件行数职责移植
data/constants.js, penalties.js254常量、惩罚词库✅ 直接复用
state/game-state.js170全局状态管理 + 持久化⚠️ 换 storage 适配器
engine/round-manager, match-calc, penalty-engine288游戏逻辑(纯函数)✅ 直接复用
ai/prompt-templates.js, ai-client.js295AI 通信 + Prompt 管理⚠️ fetch→wx.request
channel/supabase-channel.js121Supabase Realtime 消息总线⚠️ 小程序版 SDK
ui/renderer.js260DOM 渲染❌ 整体替换为 WXML
app/actions.js410编排层 + 消息处理⚠️ 事件绑定替换

游戏循环

AI 出题 30s 计时 自动分析 匹配结果 阈值检测 惩罚投票 本轮结算 下一轮

自动化流程

通信协议

方向消息类型
Host → AllGAME_STARTED, QUESTION, TIMER_TICK, TIMER_END, MATCH_RESULT, VOTE_START, VOTE_RESULT, ROUND_SETTLEMENT, ROUND_CHANGED, JEALOUSY_UPDATED, GAME_ENDED, AI_THINKING, ROOM_STATE
Player → HostPLAYER_JOINED, PLAYER_ANSWER, PLAYER_REJOINED, VOTE_CAST, ROOM_STATE_REQUEST

基于 Supabase Realtime Broadcast(PubSub 模式)。Host 浏览器为状态权威源,每隔 3 秒 + 状态变化时广播全量 ROOM_STATE。玩家终端是瘦客户端——只接收广播、提交回答/投票。

消息循环机制 已实现

状态同步策略

会话持久化

AI 架构

AI 主持人 System Prompt DeepSeek

你是三六局(Sanliuju)的AI主持人。你全权负责游戏进程:出题、收集回答、计算匹配度、触发奖惩、生成总结。

第一轮「信息采集」:出轻松诙谐的生活化问题。轮末生成初始匹配矩阵。
第二轮「当下匹配」:聚焦当下场景,根据回答自动生成暖心/火花值。
第三轮「人性博弈」:清空前两轮日志,深度价值观拷问,玩家通过回答悄悄提升匹配度。
输出格式:所有输出必须是 JSON,包含 func 字段指定渲染函数。
风格:幽默、戏精、接地气,问题让人一愣然后笑。

AI 调用

调用触发超时
generateQuestion出题按钮 / 自动出首题10s
analyzeMatches计时结束(自动)20s
generateRoundSummary本轮结算(自动)15s
generateGameReport游戏结束20s

部署

组件平台
前端Cloudflare Pages(静态站点)
AI 代理CF Pages Function /api/ai → DeepSeek API
实时通信Supabase Realtime Broadcast
TTS(计划中)百度短文本合成 API(精品音库,5 万次)

移植路径

阶段平台UI 层状态存储
1 ✅Web 模拟器HTML DOMlocalStorage
2 📱微信小程序WXML + WXSSwx.setStorageSync
3 📲APPReact Native / FlutterAsyncStorage

技术标签

Vanilla JS IIFE 模块 localStorage CSS Animations Supabase Realtime Cloudflare Pages DeepSeek API @supabase/supabase-js

三六局 Sanliuju V2 · 2026-05-15