新建项目

This commit is contained in:
2026-07-29 10:50:33 +08:00
parent bfd3841cbd
commit 4f69b859a8
49 changed files with 5565 additions and 0 deletions

369
docs/PRD.md Normal file
View File

@@ -0,0 +1,369 @@
# 藏猫猫计划:产品需求文档
版本0.1
阶段MVP 可交互原型
产品形态:微信小程序
## 1. 产品概述
### 1.1 产品定位
“藏猫猫计划”是一款帮助用户快速组织线下真人追逃游戏的小程序。它通过房间邀请、身份分配、地图边界、模糊位置线索、抓捕确认和自动结算,承担线下游戏的主持人角色。
产品不鼓励玩家持续盯着手机,而是利用语音、震动、倒计时和少量关键交互,让现实空间成为主要游戏场景。
一句话表达:
> 选择一块场地,邀请几个朋友,现实世界立刻变成游戏地图。
### 1.2 目标用户
- 朋友聚会:希望快速开始一场有互动感的户外游戏。
- 校园社团:需要低成本组织多人活动。
- 亲子家庭:希望进行范围可控的户外探索。
- 企业团建:需要可配置、可复盘的团队项目。
- 景区与营地:希望将场地包装成互动游戏内容。
### 1.3 核心价值
- 两分钟内完成组局,降低组织成本。
- 自动处理分队、倒计时、线索和结算。
- 通过有限位置信息保留躲藏和推理乐趣。
- 用安全边界、越界提醒和紧急集合降低户外风险。
- 通过战报和称号促进复玩与社交传播。
### 1.4 产品原则
1. 安全高于胜负。
2. 模糊信息高于精确导航。
3. 线下互动高于屏幕操作。
4. 每位玩家尽量持续参与,减少被淘汰后的等待。
5. 基础规则公平,付费内容不直接提供竞技优势。
## 2. 游戏核心循环
```text
创建房间 → 邀请好友 → 候场确认 → 分配身份
躲藏准备 → 正式追逃 → 线索与技能 → 抓捕确认
阵营结算 → 趣味战报 → 分享/再来一局
```
一次标准游戏建议配置:
- 人数612 人
- 场地:公园、校园、营地等低车流开放区域
- 半径300800 米
- 时长3045 分钟
- 躲藏准备35 分钟
- 位置线索:每 5 分钟一次,只展示网格或大致区域
## 3. 游戏模式
### 3.1 MVP 模式
#### 经典模式
- 玩家分为寻找者和躲藏者。
- 寻找者在规定时间内抓到全部躲藏者即获胜。
- 任意躲藏者存活至倒计时结束,则躲藏阵营获胜。
- 被抓玩家进入观战状态,不再显示其他躲藏者的实时信息。
#### 感染模式
- 初始仅有少量寻找者。
- 躲藏者被抓后转化为寻找者并继续参与。
- 最后一名未被抓的玩家获得“最终幸存者”称号。
- 推荐作为默认模式,因为玩家被抓后无需长时间等待。
### 3.2 后续模式
- 占点模式:双方争夺地图中的虚拟据点。
- 护送模式:护送目标到达终点,另一方负责拦截。
- 宝藏模式:结合地图线索、二维码和现实任务点。
- 暗号模式:通过线下对话或动作确认队友身份。
- 伪装者模式:队伍中存在秘密身份和隐藏任务。
- 亲子模式:小范围、短时长、监护人可见全员位置。
- 自定义剧本:主办方配置角色、任务、道具与胜利条件。
## 4. 角色和能力
### 4.1 躲藏者
- 目标:在时间结束前保持未被抓状态。
- 可见信息:剩余时间、个人状态、安全边界、公开事件。
- 基础技能“静默”:跳过一次周期性位置暴露。
- 后续能力:假信号、分身、队友换位、紧急撤离提示。
### 4.2 寻找者
- 目标:在时间结束前完成抓捕。
- 可见信息:剩余人数、周期性模糊线索、公开事件。
- 基础技能“雷达”:检测附近是否存在未被抓的躲藏者,但不显示精确方向。
- 后续能力:足迹、缩圈、虚拟封锁区、连续追踪奖励。
### 4.3 房主
- 配置场地、时长、模式和人数。
- 开始、暂停或提前结束游戏。
- 移除异常玩家。
- 发起全员集合。
- 处理抓捕争议和安全事件。
## 5. 功能需求
### 5.1 首页
- 展示产品核心价值和主操作入口。
- 提供“创建游戏”和“加入房间”。
- 展示最近一场未结束的游戏,可继续进入。
- 提供安全规则入口。
- 后续增加历史战绩、常用队伍和附近活动。
### 5.2 创建游戏
房主填写:
- 房间名称。
- 游戏模式:经典或感染。
- 游戏时长1590 分钟。
- 准备时长110 分钟。
- 最大人数430 人。
- 初始寻找者人数。
- 线索间隔310 分钟。
- 场地半径2001500 米。
- 是否开启技能。
校验规则:
- 初始寻找者必须少于最大人数。
- 游戏和准备时间必须在允许范围内。
- 创建前必须勾选安全承诺。
### 5.3 加入房间
- 输入六位房间码加入。
- 支持通过小程序分享卡片携带房间参数直接加入。
- 展示房间名称、模式、房主和当前人数。
- 玩家确认昵称和安全规则后进入候场。
- 房间已满、已开始或已结束时给出明确提示。
### 5.4 候场
- 展示房间码、规则摘要和玩家列表。
- 房主可以邀请好友、调整规则和开始游戏。
- 玩家可以切换“已准备/未准备”状态。
- 开始前进行定位、电量与网络提示。
- 分配身份后,身份只对本人可见。
- 开始游戏时先进入躲藏准备阶段。
MVP 原型为便于单人演示,会自动加入模拟玩家。
### 5.5 游戏进行中
公共信息:
- 当前阶段、倒计时、存活人数和边界状态。
- 游戏事件流,如线索广播、技能使用和抓捕结果。
- 安全按钮:暂停参与、紧急集合、联系房主。
寻找者界面:
- 模糊区域线索。
- 雷达技能和冷却状态。
- 输入动态口令完成抓捕。
躲藏者界面:
- 下次位置暴露倒计时。
- 静默技能。
- 供寻找者验证的动态四位数口令。
- 自身是否越界或接近边界。
### 5.6 抓捕确认
推荐正式版流程:
1. 寻找者在线下发现目标。
2. 双方保持安全距离,不进行身体接触。
3. 躲藏者展示周期性变化的二维码或四位数口令。
4. 寻找者扫码或输入口令。
5. 服务端验证双方距离、口令时效和玩家状态。
6. 双方收到震动和结果提示。
异常处理:
- 口令错误时不泄露目标身份。
- 相同口令不可重复使用。
- 玩家可在短时间内发起争议。
- 房主可查看事件记录并作出裁定。
### 5.7 结算和战报
- 展示获胜阵营和个人结果。
- 展示存活时间、抓捕数、技能使用和移动距离。
- 生成“最终幸存者”“最佳猎人”“极限逃脱”等称号。
- 支持分享战报卡片。
- 支持按原规则再来一局。
### 5.8 安全中心
- 游戏区域必须由房主明确设置。
- 接近边界和越界时持续提醒。
- 禁止将机动车道、水域、施工区和私人区域设为任务点。
- 禁止身体冲撞、拉扯和强行进入封闭空间。
- 提供一键退出、全员集合和紧急联系人。
- 低电量、定位关闭或长时间失联时提醒本人和房主。
- 未成年人参与公开活动时要求监护人同意。
## 6. 隐私与合规
### 6.1 数据最小化
- 只在一局游戏期间采集实现玩法所需的位置数据。
- 默认向其他玩家展示模糊区域,不展示精确坐标。
- 游戏结束后删除精确轨迹,战报只保留聚合结果。
- 陌生人房间隐藏真实姓名、微信号和完整头像信息。
### 6.2 权限使用
- 在用户开始需要定位的玩法前,再解释并请求定位授权。
- 拒绝定位后仍可浏览规则,但不能进入正式游戏。
- 相册和摄像头权限只在扫码或生成战报时按需申请。
- 提供数据导出、历史清除和账号注销入口。
### 6.3 风险提示
- 小程序不是人身安全保障工具。
- 房主必须确认场地合法、安全且适合活动。
- 不建议在夜间、恶劣天气、高车流区域或陌生复杂地形进行游戏。
- 发生危险时立即停止游戏并联系当地紧急服务。
## 7. 状态模型
房间状态:
- `waiting`:等待玩家加入。
- `preparing`:身份已分配,躲藏者准备中。
- `playing`:正式游戏进行中。
- `paused`:房主暂停。
- `finished`:游戏结束。
- `cancelled`:房主取消。
玩家状态:
- `idle`:未准备。
- `ready`:已准备。
- `hiding`:躲藏中。
- `seeking`:寻找中。
- `caught`:已被抓。
- `spectating`:观战。
- `offline`:暂时离线。
- `quit`:退出游戏。
## 8. 非功能需求
- 房间关键事件同步延迟目标小于 1 秒。
- 倒计时由服务端时间校准,客户端不得作为最终依据。
- 弱网重连后能恢复身份、状态和剩余时间。
- 精确坐标传输和存储必须加密并设置短生命周期。
- 单局至少支持 30 人,后续活动版支持 100 人。
- 关键按钮应适合户外单手操作,并提供震动或声音反馈。
- 页面应在主流微信版本和常见屏幕尺寸下可用。
## 9. MVP 范围
### 9.1 本仓库已实现的原型
- 首页、创建、加入、候场、游戏、结算和安全规则页面。
- 本地房间和玩家模拟。
- 经典/感染模式配置。
- 准备与游戏倒计时。
- 角色分配、模糊线索、雷达、静默和口令抓捕。
- 基础战报与再来一局。
### 9.2 真实多人版必须补齐
- 微信服务端登录与用户体系。
- 云数据库或自有后端。
- WebSocket 实时同步。
- 地图选区与地理围栏。
- 后台定位策略和真机兼容性验证。
- 服务端口令和技能校验。
- 分享卡片、订阅消息和内容安全。
- 埋点、崩溃监控、举报和客服流程。
### 9.3 暂不进入 MVP
- 附近陌生人公开组局。
- 付费商城。
- 用户自制剧本市场。
- 景区和企业管理后台。
- 赛季、段位和复杂成长体系。
## 10. 数据指标
北极星指标:
- 每周成功完成的多人游戏局数。
核心漏斗:
- 首页访问 → 创建/加入房间。
- 进入房间 → 完成准备。
- 完成准备 → 正式开局。
- 正式开局 → 正常结算。
- 正常结算 → 分享或再来一局。
质量指标:
- 平均每局人数和时长。
- 中途退出率、失联率和争议率。
- 创建房间至开局的时间。
- 位置授权成功率和弱网重连成功率。
- 7 日内再次开局的房主比例。
安全指标:
- 越界事件数。
- 紧急暂停和集合事件数。
- 举报率及处理时长。
## 11. 版本路线
### V0.1 可交互原型
- 验证规则、信息节奏和页面流程。
- 用模拟玩家完成单人走查。
### V0.2 熟人内测
- 接入真实登录、房间同步和地理围栏。
- 支持 612 人熟人局。
- 完成隐私与安全流程。
### V0.3 公测
- 优化弱网、后台切换和耗电。
- 增加分享战报、历史记录和常用队伍。
- 上线感染模式完整技能和平衡参数。
### V1.0 场景扩展
- 增加宝藏、占点和亲子玩法。
- 提供活动模板和主办方工具。
- 探索营地、景区和团建商业合作。
## 12. 验收标准
MVP 进入熟人内测前至少满足:
1. 6 名玩家可通过分享进入同一房间。
2. 所有玩家看到一致的阶段、倒计时和抓捕结果。
3. 身份信息不会错误地展示给其他阵营。
4. 拒绝定位或越界时能阻止继续参与并清晰提示。
5. 抓捕口令过期、重复或距离不符时无法通过。
6. 短暂断网后能在 10 秒内恢复游戏状态。
7. 房主可暂停、集合和结束游戏。
8. 游戏结束后精确位置按策略完成删除。