HTML5 重写:6 款游戏 + 用户系统 + 全局设置 + 5 轮迭代重构

- 新增 web/ 纯音频 HTML5 平台:共享引擎(手势/WebAudio 三层/设置/震动)、
  Node 零依赖服务器(静态 + 注册登录 + 进度存档 API)
- 游戏:剑与声(RPG 新作)、声命线、暗室(重设计)、音序回响(重设计)、
  节拍行者(跟随领奏重构)、盲航(同向闪避重构);声东击西删除
- 全局功能:男声/女声双套 TTS 资产、三档语速、BGM 音量三档、
  震动反馈语言(10 种震型)、服务器进度同步
- 资产:899 ogg + 899 m4a(Qwen3-TTS 双性别语音、Stable Audio 3 音效、
  Mureka BGM 4+3 首),终检零缺失
- 文档:docs/design/ 13 篇设计审查文档、docs/audio/ 资产管线、
  web/server/README.md API 文档
This commit is contained in:
SoundGame Dev
2026-08-29 21:55:44 +08:00
parent f0f0a9b50e
commit cc0f8c008d
1885 changed files with 11246 additions and 5 deletions
Executable
+33
View File
@@ -0,0 +1,33 @@
#!/bin/bash
# serve.sh — 本地托管 SoundGame Web 站点(含用户系统 API)
#
# 用法:
# bash web/serve.sh (或 chmod +x 后 ./web/serve.sh)
#
# 手机访问:手机与电脑连**同一 WiFi**,浏览器打开下面打印的局域网地址
# (WSL2 用户注意:若手机无法访问 WSL2 的 IP,需在 Windows 侧做端口转发:
# netsh interface portproxy add v4tov4 listenport=8000 listenaddress=0.0.0.0 connectport=8000 connectaddress=<WSL_IP>
# 然后用 Windows 主机的局域网 IP 访问)。
#
# 服务器:web/server/server.js(Node 零依赖),静态托管 web/ + JSON API:
# POST /api/register {username, pin} 注册(PIN 为 4~6 位数字)
# POST /api/login {username, pin} 登录 → { token }
# GET /api/progress?game=xxx 读进度(Bearer token)
# PUT /api/progress {game, data} 写进度(Bearer token)
# 数据落盘 web/server/data/,端口用 env PORT 覆盖(默认 8000)。
# 详见 web/server/README.md。
IP=$(hostname -I | awk '{print $1}')
PORT=${PORT:-8000}
echo "================================================"
echo " SoundGame Web 本地服务器(静态 + 用户系统 API)"
echo " 本机访问: http://localhost:${PORT}/"
echo " 局域网访问: http://${IP}:${PORT}/ <- 手机浏览器开这个"
echo " 游戏大厅在根路径,模板游戏: /template/"
echo " API: /api/register /api/login /api/progress"
echo " 手机需与电脑在同一 WiFi"
echo " Ctrl+C 停止"
echo "================================================"
exec /home/ubuntu/SoundGame/tools/node/bin/node /home/ubuntu/SoundGame/web/server/server.js