项目整理:重写主文档、归档过时文档、清理死代码、新增音频制作手册

文档整理:
- 重写 game/操作说明.md 为项目主文档(6游戏/6手势/旁白/模型生成音频/TTS两步流程)
- 归档过时文档至 other_docs/(林夏原始设计、旧执行文档)
- 新增 docs/音频制作执行手册.md(从零制作游戏音频的完整流程)
- docs/ 下保留旁白音色提示词、音频脚本

代码清理:
- 删除旧架构死代码: story.js / gestures.js / profile.js
- 删除耦合旧架构的过时测试目录 game/tests/

脚本配置修正:
- check_tts_env.sh: 启动脚本路径 AutoVideo → tts-server(实际位置)
- gen_narrator_samples.py: 硬编码地址改为环境变量,默认对齐 tts-server 端口 8000
This commit is contained in:
xsl
2026-06-19 22:29:04 +08:00
parent b3384499e3
commit 866f363591
46 changed files with 5061 additions and 2374 deletions
+28 -136
View File
@@ -6,155 +6,47 @@
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="theme-color" content="#000000">
<title>林夏</title>
<title>盲游</title>
<style>
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{
width:100%;height:100%;background:#000;
overflow:hidden;touch-action:none;
-webkit-tap-highlight-color:transparent;
width:100%;height:100%;background:#000;overflow:hidden;
touch-action:none;-webkit-tap-highlight-color:transparent;
user-select:none;-webkit-user-select:none;
font-family:-apple-system,'PingFang SC','Hiragino Sans GB',sans-serif;
}
#game{position:fixed;inset:0;background:#000;}
/* ── 开始界面 ── */
#start{
position:fixed;inset:0;background:#000;z-index:80;
display:flex;flex-direction:column;align-items:center;
color:#fff;text-align:center;padding:40px 32px 48px;
overflow-y:auto;-webkit-overflow-scrolling:touch;
}
#start h1{font-size:38px;font-weight:200;letter-spacing:14px;margin-top:48px;margin-bottom:28px}
#start .sub{font-size:14px;color:#777;line-height:2.4}
#start .hint{margin-top:40px;font-size:12px;color:#444;animation:pulse 2.5s ease-in-out infinite}
#start .tip{margin-top:16px;font-size:11px;color:#2a2a2a;line-height:1.9}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.2}}
/* ── 操作说明 ── */
#controls{
margin-top:44px;width:100%;max-width:320px;text-align:left;
}
#controls .ctrl-title{
font-size:10px;letter-spacing:4px;color:#333;text-align:center;margin-bottom:20px;
}
#controls .ctrl-group{
margin-bottom:20px;
}
#controls .ctrl-scene{
font-size:10px;letter-spacing:2px;color:#3a3a3a;margin-bottom:8px;padding-bottom:6px;
border-bottom:1px solid #1a1a1a;
}
#controls .ctrl-row{
display:flex;justify-content:space-between;align-items:baseline;
padding:5px 0;border-bottom:1px solid #111;
}
#controls .ctrl-row:last-child{border-bottom:none;}
#controls .ctrl-gesture{font-size:11px;color:#555;white-space:nowrap;flex-shrink:0;}
#controls .ctrl-action{font-size:11px;color:#2e2e2e;text-align:right;margin-left:12px;}
/* ── 字幕层(结局文字)── */
#caption{
position:fixed;inset:0;z-index:60;
display:none;align-items:center;justify-content:center;
color:#fff;font-size:18px;font-weight:300;letter-spacing:4px;
text-align:center;line-height:2;padding:40px;
animation:fadein .8s ease-out;
}
@keyframes fadein{from{opacity:0}to{opacity:1}}
/* ── 操作提示栏 ── */
#hint{
position:fixed;bottom:0;left:0;right:0;z-index:70;
padding:12px 24px 20px;
text-align:center;
font-size:11px;letter-spacing:1.5px;color:#444;
background:linear-gradient(transparent,rgba(0,0,0,0.85));
pointer-events:none;
min-height:52px;
display:flex;align-items:flex-end;justify-content:center;
transition:opacity 0.4s;
}
/* ── 调试条 ── */
#g{position:fixed;inset:0;background:#000;}
#dbg{
display:none;
position:fixed;bottom:30px;left:0;right:0;text-align:center;
font-size:11px;color:#333;z-index:200;pointer-events:none;font-family:monospace;
display:none;position:fixed;bottom:0;left:0;right:0;
background:rgba(0,0,0,.92);color:#0f0;font:10px monospace;
padding:4px 8px;max-height:72px;overflow-y:auto;z-index:99;
white-space:pre-wrap;
}
</style>
</head>
<body>
<div id="game"></div>
<div id="g"></div>
<pre id="dbg"></pre>
<div id="start">
<h1>林夏</h1>
<div class="sub">
今晚 16 条消息<br>
你接谁,不接谁<br>
决定明天的自己
</div>
<div id="controls">
<div class="ctrl-title">操 作 说 明</div>
<!-- 基础工具 -->
<script src="js/utils.js"></script>
<script src="js/haptics.js"></script>
<script src="js/audio.js"></script>
<div class="ctrl-group">
<div class="ctrl-scene">来电时</div>
<div class="ctrl-row"><span class="ctrl-gesture">单击 / 右滑</span><span class="ctrl-action">接听</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">左滑 / 双击</span><span class="ctrl-action">拒接</span></div>
</div>
<!-- 新核心 -->
<script src="js/narrator.js"></script>
<script src="js/input.js"></script>
<script src="js/engine.js"></script>
<div class="ctrl-group">
<div class="ctrl-scene">收到消息</div>
<div class="ctrl-row"><span class="ctrl-gesture">单击</span><span class="ctrl-action">播放</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">双击 / 左滑</span><span class="ctrl-action">跳过</span></div>
</div>
<!-- 六个游戏 -->
<script src="js/games/linxia.js"></script>
<script src="js/games/yinian.js"></script>
<script src="js/games/shouye.js"></script>
<script src="js/games/houzhen.js"></script>
<script src="js/games/yisheng.js"></script>
<script src="js/games/fu.js"></script>
<div class="ctrl-group">
<div class="ctrl-scene">选择回复</div>
<div class="ctrl-row"><span class="ctrl-gesture">单击</span><span class="ctrl-action">简单回应</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">右滑</span><span class="ctrl-action">温暖回应</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">左滑</span><span class="ctrl-action">冷淡回应</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">上滑</span><span class="ctrl-action">追问</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">下滑</span><span class="ctrl-action">沉默</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">双击</span><span class="ctrl-action">不回复</span></div>
</div>
<div class="ctrl-group">
<div class="ctrl-scene">播放中</div>
<div class="ctrl-row"><span class="ctrl-gesture">双击</span><span class="ctrl-action">跳过</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">长按</span><span class="ctrl-action">重播</span></div>
</div>
<div class="ctrl-group">
<div class="ctrl-scene">随时可用</div>
<div class="ctrl-row"><span class="ctrl-gesture">两指长按</span><span class="ctrl-action">暂停</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">三指点击</span><span class="ctrl-action">退出(暂停后)</span></div>
<div class="ctrl-row"><span class="ctrl-gesture">长按</span><span class="ctrl-action">播报未读数</span></div>
</div>
</div>
<div class="hint">· 轻触屏幕开始 ·</div>
<div class="tip">
建议关灯 · 戴上耳机<br>
按你的节奏来
</div>
<div class="tip" style="margin-top:20px;color:#333;">
本游戏涉及孤独、家庭关系等情感话题<br>
请在舒适的状态下体验
</div>
</div>
<div id="caption"></div>
<div id="hint"></div>
<div id="dbg"></div>
<script src="js/utils.js"></script>
<script src="js/haptics.js"></script>
<script src="js/audio.js"></script>
<script src="js/gestures.js"></script>
<script src="js/profile.js"></script>
<script src="js/story.js"></script>
<script src="js/engine.js"></script>
<script src="js/main.js"></script>
<!-- 选择器 + 入口 -->
<script src="js/selector.js"></script>
<script src="js/main.js"></script>
</body>
</html>