6.2 KiB
6.2 KiB
《林夏》操作说明
一、游戏简介
全黑屏叙事游戏。玩家扮演 24 岁的林夏,用一部碎屏手机度过今晚 21:00–02:00 的 5 个小时。
- 没有视觉界面,只有声音和触感
- 全程约 60 分钟(5 小时游戏时间压缩)
- 16 条消息,5 种结局
- 不需要说话,不需要麦克风
二、开始前准备
-
手机和电脑连接同一 Wi-Fi
-
打开手机浏览器,输入地址:
http://172.28.107.97:8765/game/ -
关灯,戴上耳机
-
将手机音量调到适中(建议 60–80%)
-
轻触屏幕任意位置开始游戏
iOS 用户注意:Safari 不支持震动反馈,操作正常但无震感。建议使用 Android Chrome。
三、消息类型与接收方式
游戏中有三种消息形态:
来电
- 触发:手机长震 + 角色专属铃声
- 响 20–30 秒后自动漏接
| 操作 | 效果 |
|---|---|
| 单点 | 接听 |
| 左滑 | 拒接 |
| 不动 | 漏接(对方挂断) |
微信语音 / 微信文字
- 触发:两短震 + 系统提示音(TTS 报出发件人)
| 操作 | 效果 |
|---|---|
| 单点 | 播放语音 / 念出文字 |
| 左滑 | 忽略(保持未读) |
| 不动 | 保持未读,晚些再听 |
四、回复消息
听完语音 / 文字念完后,进入等待回复状态:
| 操作 | 发送内容 |
|---|---|
| 单点 | 发"嗯。"(最简单的回执) |
| 双点 | 发标准回复(针对该消息的一句话) |
| 长按 1 秒 | 进入细回复模式 |
| 左滑 | 已读不回 |
| 不动 | 维持"已读未回"状态 |
五、细回复(核心机制)
长按 1 秒后,震动确认进入细回复。系统会依次念出 4 个候选回复:
一…… "好,明天寄。"
二…… "你怎么不自己来拿。"
三…… "你那边……都好吗。"
四…… (什么都不说)
在听到目标选项时,朝对应方向滑动:
| 滑动方向 | 对应选项 |
|---|---|
| 左滑 | 一 |
| 右滑 | 二 |
| 上滑 | 三 |
| 下滑 | 四 |
没听清? 单点屏幕可重听所有选项,或长按 1 秒重新播放。
选错了也没关系——每条消息只影响行为画像,不会"game over"。
六、查看当前状态
随时下滑,系统会用语音告诉你当前在哪个页面,以及可以做什么操作。
例如:
- 主屏幕时下滑 → "主屏幕,3条未读。上滑查看收件箱。"
- 来电时下滑 → "妈妈来电中。单点接听,左滑拒接。"
- 听完消息后下滑 → "阿哲的消息已播完。单点回嗯,双点标准回复,长按细回复,左滑已读不回。"
不确定自己在哪?下滑就对了。
七、查看未读列表(收件箱)
在主屏幕上滑,进入收件箱模式。
系统会依次念出所有未读消息:
"收件箱:4条未读。妈妈,来电。阿哲,语音。周南,语音。……"
- 单点 → 跳转至列表第一条
- 左滑 → 返回主屏幕
- 等待 8 秒 → 自动关闭收件箱,返回游戏
八、游戏内时间
游戏将现实的 21:00–02:00(5 小时)压缩为 60 分钟真实时间。
| 游戏时间 | 真实等待 |
|---|---|
| 21:03 | 约 36 秒 |
| 21:30 | 约 6 分钟 |
| 22:30 | 约 18 分钟 |
| 23:45 | 约 33 分钟 |
| 02:00 | 约 60 分钟 |
消息到来时间固定,漏接 / 不听是合法选择,但漏掉的内容不会重发。
九、结局说明(不含剧透)
共 5 种结局,由以下 5 个变量决定:
| 变量 | 触发条件 |
|---|---|
| 与妈妈的连接 | 是否接了妈妈的电话 / 回了文字 |
| 阿哲是否回来 | 23:15 那通电话的选择 |
| 群里是否发言 | 寝室群消息的回应 |
| 与周南的深度 | 回应周南的次数与方式 |
| 是否听自己 | 00:30 时光胶囊是否播放 |
另有一个隐藏结局 E,需要与某位角色深度互动才能触发。
十、行为画像
游戏全程追踪三个维度(玩家不可见):
| 维度 | 含义 | 触发行为 |
|---|---|---|
| avoidance(回避) | 林夏今晚想一个人待着 | 漏接、不回、已读不回 |
| engagement(投入) | 林夏在认真面对每一个人 | 细回复、主动追问 |
| nostalgia(怀旧) | 林夏在这一夜反复回望 | 重听同一条消息、分享自己 |
画像决定 00:30 时光胶囊播放哪个版本(明朗 / 迷茫 / 温柔)。
十一、彩蛋
- 夜间启动(现实时间 22:00–04:00 之间打开游戏):开场多一句话
- 消息09:小美醉语音结束后会有一个撤回事件
- 消息04:如果一直不回阿哲,会听到一个小细节
十二、开发者 / 测试模式
在 URL 末尾加 ?dev 可开启10倍速模式:
http://172.28.107.97:8765/game/?dev
- 所有消息的触发时间缩短为原来的 1/10
- 全程约 6 分钟可打通
- 适合测试结局分支
十三、启动服务器
关机重启后需要重新启动 HTTP 服务器:
cd /home/xsl/blind
python3 -m http.server 8765 --bind 0.0.0.0 &
查看当前 IP:
hostname -I | awk '{print $1}'
十四、文件结构
/home/xsl/blind/
├── game/
│ ├── index.html 主页面(黑屏)
│ ├── manifest.json PWA 配置
│ ├── 操作说明.md 本文件
│ └── js/
│ ├── utils.js 工具函数 + 浏览器 TTS
│ ├── haptics.js 震动反馈
│ ├── audio.js 音频管理器
│ ├── gestures.js 单指手势检测
│ ├── profile.js 行为画像评分
│ ├── story.js 16条消息数据
│ ├── engine.js 游戏状态机
│ └── main.js 入口
└── audio/
└── 00_raw/
├── tts/ 角色语音(68条)
├── music/ BGM + 铃声
├── sfx/ 音效
└── ambience/ 环境底噪
"屏幕坏了,但她的一夜还没结束。"