docs: archive chemical plant stealth game short

This commit is contained in:
2026-11-01 17:13:19 +08:00
parent df1c714f7e
commit b53d0221e5
3 changed files with 217 additions and 0 deletions
@@ -0,0 +1,9 @@
# 化工厂潜行挑战_20261030
归档日期:2026-11-01。
- [制作方案](制作方案.md)
- [原完成记录](原完成记录.json)
- [本机完整项目](F:/AI视频项目/化工厂潜行挑战_20261030)
仓库保存方案与原记录;成片、素材、任务执行图和剪辑脚本在本机完整项目中。原完成记录是技术记录,不代表本次重新验片或新增艺术认可。
@@ -0,0 +1,164 @@
> 2026-11-01归档:这是原制作方案,计划内容不等于所有动作均已实现;实际交付与裁切以本机项目记录为准。
# 《化工厂潜行挑战》制作方案
方案日期:2026-10-30(Asia/Shanghai)。原目标为约 25—35 秒、16:9 横屏的原创游戏画面短剧。实际采用五段动作素材,现已锁定 **1280×720、24 fps、798 帧、33.25 秒**:剧情段 726 帧/30.25 秒,结算保持 72 帧/3 秒。第 4 节的时间仍保留为开工草图;实际裁切与事件以第 8 节为准。最终编码文件的探测结果由后期记录,本方案不代替成片文件检测报告。
## 1. 作品定位与硬约束
画面采用开放世界动作游戏的三维实时渲染外观:略高、位于角色背后的第三人称跟随视角,角色转向、走路、潜行和舞蹈具有清楚的游戏动画节奏。借用“像 GTA5 那样的第三人称游戏观看体验”,不制作真人实拍外观,也不标注成真实 GTA 游戏录屏。
地点明确为**化工厂装置外围与门禁内的小型院落**。银灰管廊、设备支架、黄色护栏、灰色地面标线和工业门禁构成共同地图。“背景是在化工厂”不额外解释成北京,不生成城市地标。
- **玩家:** 同一个原创化工厂普通员工,蓝色安全帽、海军蓝短袖工服、背部银色反光条、深色工裤与工鞋,佩戴手套。背后第三人称为主,跨镜帽色、工服与体型保持;腰间小袋按已批准画面延续,轻微左右差异不单独触发重生成。
- **NPC:** 化工厂领导,白色安全帽、灰色工服,可持简洁记录板。身份为领导,**不是警卫、保安、警察或军人**,不出现枪械、警徽与巡逻队列。
- **武器/道具:** 工具架上有多把备用扳手,玩家只自动拾取其中一把游戏化扳手;是剧情中的游戏道具。只触发一次高亮、一次装备与一次轻喜剧非血腥击晕,没有血、伤口、写实伤害细节或设备损坏。
- **画面文字:** 成片的字幕、HUD、小地图与结算字全部由后期确定性叠加,保持可读并与动作同步。源素材已出现遗留小地图,S04 另有右上星形图案;它们不作为最终界面使用,由后期界面实底完整覆盖,避免双地图或无关通缉状态。
## 2. 完整因果链
玩家通过工业门禁,出现 **GAME START**。他靠近西侧扳手架,进入拾取范围,扳手闪一下自动进入装备栏并出现在手中。转向北侧,看见白帽领导后进入潜行,沿院内通道悄悄靠近。一次漫画式“咚”触发星星和短闪帧,领导在原地进入夸张的坐地晕眩状态。玩家收起扳手,原地跳一小段魔性舞蹈,随后进入原创任务结算。
每个切点必须承接上一个状态:先拾取再持有扳手,先看见目标再潜行,先发生接触再出现晕眩,先完成击晕再跳舞。不能只把五段无关游戏素材拼起来。
## 3. 场地与小地图坐标
采用北向固定的简化院落图。以下是便于后期动画的小地图设计坐标,范围 0—100,左上为 `(0,0)`;不是测绘或真实厂区位置。坐标随实际镜头校准,不把所有路径均匀插值成不顾画面动作的直线。
```text
北 N
银灰管廊/设备背景(非行走区)
┌─────────────────────────┐
│ L 白帽领导 │ L=(50,30)
│ │
│ 潜行通道 → A │ A=(47,43)
│ ↑ D 舞蹈 │ D≈(45,45)
│ ↑ │
│ W 扳手架 ── C │ W=(25,70), C=(50,70)
│ ↑ │
│ G 门禁 │ G=(50,88)
└──────────────┬──────────┘
南/入场
```
| 路径节点 | 小地图位置 | 实际镜头中应看见什么 |
|---|---|---|
| 起点/进入门禁 | `(50,96) → (50,78)` | 玩家穿过门禁,前方看见院落通道和黄栏 |
| 靠近西侧工具架 | `(50,70) → (25,70)` | 玩家左转,扳手架在行走终点,不突然跳到另一侧 |
| 发现领导 | 玩家停在约 `(25,65)`,领导 `(50,30)` | 重新朝北时,远处白帽领导清楚可辨;目标点此时才出现 |
| 潜行路径 | `(25,65) → (25,43) → (47,43)` | 玩家降低重心,以较慢游戏潜行步态绕过黄栏端部靠近 |
| 接触与晕眩 | 玩家约 `(47,37)`,领导仍在 `(50,30)` | 双方位置接近,效果发生在领导原位置,不追打或连续攻击 |
| 舞蹈与结算 | 玩家约 `(45,45)` | 在同一院内短距离回到空地或原地起舞;领导仍留在后方晕眩 |
银灰管廊、黄色护栏转角、扳手架与门禁是固定空间锚。地图上的玩家箭头方向随角色朝向变化;固定北向地图本体不任意旋转。没有实际移动时,玩家点不能继续沿路径漂移。
## 4. 五个生成单元
生成阶段以同一玩家、同一领导与同一地图的已审核关键帧为输入。下面时长是素材需求,具体 H3 帧数和长度约束由执行工作流核对。源素材可多留动作前后余量,最终不必全部保留。
实际已采用的首帧链由各任务 `LoadImage` 输入核对,不是五镜各自重新抽取人物:
| 视频单元 | 本地首帧资产 | 连续性依据 |
|---|---|---|
| S01 门禁 | [K01_gate.png](F:/AI视频项目/化工厂潜行挑战_20261030/assets/K01_gate.png) | 固定门禁、蓝帽玩家与化工厂外观 |
| S02 拾取 | [K02_wrench.png](F:/AI视频项目/化工厂潜行挑战_20261030/assets/K02_wrench.png) | 固定同一玩家与多把扳手的工具架 |
| S03 潜行 | [K03_stealth_approved.png](F:/AI视频项目/化工厂潜行挑战_20261030/assets/K03_stealth_approved.png) | 已批准背后视角,蓝帽玩家右手持扳手,白帽领导在前方偏右 |
| S04 击晕 | [K04_knockout_start.png](F:/AI视频项目/化工厂潜行挑战_20261030/assets/K04_knockout_start.png) | 从 S03 实际尾帧提取,保留已潜行至领导身后的位置、朝向与背景 |
| S05 舞蹈 | [K05_dance_start.png](F:/AI视频项目/化工厂潜行挑战_20261030/assets/K05_dance_start.png) | 从 S04 约 5.5 秒稳定坐地状态提取,领导保持坐地,玩家已停止;S05 已通过关键姿态与位置验收,采用源片前 7 秒 |
S04 接触表与 K05 首帧已复核到一次挥动、领导完整坐地、玩家停止,未见需要重做的动作硬问题;这项检查支持关键姿态与空间关系,最终成片仍需连续播放复看切点、动作时序和界面覆盖。
S05 接触表与结束帧已独立复核:镜头拉开后玩家全身、双脚与地面可见,能读到左右换重心、侧步/抬膝、摆臂与耸肩循环;白帽领导持续坐地,没有起身加入舞蹈。蓝帽、白帽、工服和同一化工厂背景保持。舞蹈动作验收通过;源片遗留界面仍按第 1 节由后期覆盖。
| 单元/素材需求 | 可执行动作 | 摄影机与连续状态 | 后期事件与成片参考 |
|---|---|---|---|
| **S01 入场,约 5—6 秒** | 玩家从南侧穿过已打开的工业门禁,向北走几步。动作轻快,脚步与地面接触稳定 | 固定距离第三人称跟随,玩家下半身和门禁可读,院内黄栏与管廊从前方展开;开始空手 | 约 0—4.5 秒;穿过门禁后弹 GAME START,再出现任务“前往工具架” |
| **S02 拾取,约 6—7 秒** | 玩家向西侧多工具扳手架走近并停下;其中一把扳手短暂高亮,自动拾取并转为手持,其余备用工具留在架上 | 保持背后略高视角,小幅随玩家左转;不要复杂翻找、拆架、掏口袋或特写手指。只拾取一次,不因架上仍有其他工具而重复触发装备 | 约 4.5—10 秒;近架时出现“自动拾取”;成功闪出“已装备:扳手”,装备图标同步改变 |
| **S03 发现与潜行,约 7—8 秒** | 玩家朝北转身,前方看见白帽领导;随后降低重心进入游戏潜行步态,沿既定通道走到领导后侧附近,保留尚未接触的终态 | 背后跟随为主,允许小幅重构图同时看到蓝帽玩家和前方白帽领导;不切成领导第一人称,不出现警卫巡逻或枪械。S02 后玩家仍持同一扳手 | 约 10—17 秒;领导标识“厂区领导”此时出现;潜行状态开启,小地图路径和玩家速度变慢 |
| **S04 一次击晕,约 5—6 秒** | 玩家完成一次短促、游戏化的扳手接触动作;轻巧“咚”与星星效果出现,白帽领导在原位置进入坐地、头顶转星的晕眩动画。到此停止,不追加攻击 | 摄影机仍在玩家后方略偏侧,先给可读双方位置;接触可以借玩家身体短遮挡与极短闪帧完成。效果之后必须看得见领导的晕眩后果,不能把击打剪成凭空倒地 | 约 17—22 秒;接触帧叠短闪光、漫画星星和“击晕成功”,目标点改为晕眩标记。无血、无伤口、无写实重摔、无设备破坏 |
| **S05 魔性舞蹈,约 7—8 秒** | 扳手自动收回装备栏,玩家空手在院内空地跳一段夸张魔性舞:交替侧步、摆臂、短促耸肩,重复两拍后收势。领导留在后方晕眩、不参与舞蹈 | 仍能辨认同一工厂、同一玩家与白帽领导;第三人称拉开一点,保证脚和地面可读。不要瞬移到舞台、夜店或新地点 | 约 22—28 秒完成舞蹈,约 28—31 秒叠加结算;地图玩家点停在舞蹈点,不能随着摆臂在地图上跑动 |
**击晕呈现优先级:** 位置建立 → 一次简短接触 → 漫画闪光/星星 → 原位置的夸张晕眩后果。用游戏符号与剪辑建立因果,不设计现实攻击教学,也不追求武器细节和身体受伤过程。若源素材无法稳定执行接触,可拆取接触前姿势与晕眩后姿势,用短闪帧连接;仍须保留方向、人物与道具的对应关系。
## 5. 确定性 HUD 与事件表
HUD 使用同一套原创设计语言:半透明深灰底、白色细线、少量青蓝玩家色与黄色任务强调。没有警徽、通缉星、弹药计数或警卫文字。游戏参考来自第三人称开放世界的布局逻辑,界面内容服务这个化工厂任务。
- **左下角小地图:** 16:9 参考画面中占宽约 18%—22%,锚定左下,距边留约 4% 安全区。画出门禁、院落边界、固定管廊区、黄色通道与工具架小图标;玩家为明确朝向的青蓝箭头,白帽领导为白色人物点/目标圈。须像可用游戏地图,而不是随便放一个指南针圆盘。
- **左上任务区:** 一次只显示当前目标与最多一条短提示,避免堆满教程。
- **右上装备区:** 空手 → 扳手图标;舞蹈时可收起实体道具,装备状态仍可保留图标。
- **中心提示区:** GAME START、自动拾取、击晕成功等只在事件发生时短暂显示,不连续遮挡人物。
- **底部状态:** 可用简洁体力/状态条;潜行时显示“潜行中”。没有剧情损伤时血量不随机减少。
| 事件 ID | 画面触发条件 | 界面与声音变化 |
|---|---|---|
| `gate_entered` | 玩家身体越过门禁内侧 | GAME START 约 1 秒;轻短开场提示音;任务变“前往工具架” |
| `pickup_range` | 玩家确实停在扳手架旁 | 短提示“自动拾取:扳手”;扳手图标高亮 |
| `wrench_equipped` | 道具从架上转为玩家持有 | 装备图标从空手变扳手;一次拾取音;任务变“找到白帽领导” |
| `leader_seen` | 画面首次可辨白帽领导 | 小地图添加白色目标标记;标识“厂区领导”;任务变“悄悄靠近” |
| `stealth_entered` | 玩家明显降低姿态开始潜行 | 显示“潜行中”,步速与小地图移动速度同步减慢 |
| `stun_contact` | 单次游戏化接触发生 | 漫画“咚”、短闪光、星星;状态变“击晕成功”,白色目标点转为晕眩符号 |
| `dance_started` | 玩家空手开始第一拍舞步 | 任务变“魔性舞步”;进入原创短电子节奏,前段脚步与底噪降低 |
| `mission_complete` | 舞蹈完成一个可读循环并收势 | 全屏结算面板出现,背景停在舞蹈终态或轻微慢动;任务完成提示音 |
所有事件时码在素材验收后写入后期事件表。地图路径按镜头实际起止节点分段,转弯、停下与潜行都对应画面;不要先固定 31 秒匀速走完,再把视频硬套进去。
## 6. 结算与声音
片尾约 2—3 秒,原创结算建议:
```text
任务完成
潜行 +100
魔性舞步 +666
本次评价:厂区显眼包
```
“击晕成功”已在事件处交代,结算不追加羞辱领导的台词。标题可用《化工厂潜行挑战》,不额外增加剧情旁白或人物对白。
声音顺序:脚步/环境空间 → 拾取提示 → 潜行音量变化 → 一次漫画“咚” → 魔性短电子节奏 → 结算提示。管廊低噪稳定、不过响;舞蹈前不要从头铺满音乐。生成音轨若出现人声、解释台词或真实惨叫,应删除或重做对应音轨,保留可核对的动作拟音。音乐、效果与 HUD 均可独立后期制作,不把生成噪声当成游戏系统提示。
## 7. 开工与验收
1. 先固定同一院落地图、蓝帽玩家、白帽领导、扳手架与道具外观,再按五个单元制作关键帧;原有项目不改写。
2. 单元间传递明确状态:坐标与朝向、是否装备、是否潜行、领导是否晕眩、是否开始舞蹈;不能依靠重复风格词代替连续性。
3. 先验画面动作,确定实际接触与转折时码,再叠 HUD、地图和声音。
4. 最终连续观看,确认小地图与游戏画面讲的是同一条路线,角色背后视角和游戏渲染质感贯穿全片。
验收硬点:
- [ ] 化工厂员工身份清楚,领导始终白帽,玩家始终蓝帽;没有把领导生成保安、警察或持枪 NPC。
- [ ] 是原创三维游戏渲染外观和第三人称跟随,不漂成真人摄影、第一人称或真实 GTA 录屏标识。
- [ ] 先过门禁、后拾取、再潜行;扳手只拾取一次,击晕只发生一次。
- [ ] 接触与后果方向可读,无血、伤口、写实痛苦或设备损坏;领导帽子不凭空换色、复制或消失。
- [ ] 舞蹈发生在同一院落,玩家没有一边继续攻击一边跳舞,实体扳手不会乱飞穿模。
- [ ] 左下小地图可读,玩家朝向、路径、停止和目标状态与画面一致,地图不无因乱转。
- [ ] GAME START、拾取、潜行、击晕、舞蹈和结算文字来自后期,时序正确、无乱码、不中途更换界面风格。
- [ ] 结算有 2—3 秒可读时间,整片约 25—35 秒,动作缺失时先修因果,不靠字幕宣布没有发生的事件。
## 8. 最终锁定裁切与事件时码
以下帧号均从 0 开始,使用 **`[start, end)` 半开区间,end 为 exclusive(不含末端)**;帧率统一为 24 fps。裁切单位是源素材帧,不按四舍五入秒数反推裁切边界。
| 片段 | 源素材帧区间 | 采用帧数 | 时长(秒) | 成片帧区间 | 成片时间区间(秒) |
|---|---|---:|---:|---|---|
| S01 门禁 | `[8,156)` | 148 | 6.166667 | `[0,148)` | 0.000000—6.166667 |
| S02 拾取 | `[18,114)` | 96 | 4.000000 | `[148,244)` | 6.166667—10.166667 |
| S03 潜行 | `[0,181)` | 181 | 7.541667 | `[244,425)` | 10.166667—17.708333 |
| S04 击晕 | `[0,133)` | 133 | 5.541667 | `[425,558)` | 17.708333—23.250000 |
| S05 舞蹈 | `[0,168)` | 168 | 7.000000 | `[558,726)` | 23.250000—30.250000 |
| 结算保持 | 最终画面保持 72 帧,非新增动作素材 | 72 | 3.000000 | `[726,798)` | 30.250000—33.250000 |
剧情段合计 **148 + 96 + 181 + 133 + 168 = 726 帧**,加结算 72 帧为 **798 帧/33.25 秒**。S05 使用源片 `0..7` 秒;结算接在剧情段结束处,不从舞蹈的 7 秒内扣除。
| 最终事件 | 成片时码(秒) | 对应成片帧 | 后期职责 |
|---|---:|---:|---|
| GAME START | 3.166667 | 76 | 开场游戏提示与对应系统音 |
| 拾取触发 | 7.500000 | 180 | 自动拾取提示与效果音 |
| 扳手装备完成 | 8.541667 | 205 | 装备图标与任务状态更新 |
| 潜行开启 | 11.166667 | 268 | 潜行状态与小地图速度更新 |
| 单次 KO 接触 | 19.500000 | 468 | 一次漫画音效、短闪/KO/星星,不能重复触发 |
| 舞蹈开始 | 24.000000 | 576 | 魔性短电子节奏与舞蹈任务状态 |
| 结算开始 | 30.250000 | 726 | 结算面板保持至第 798 帧前结束 |
上表秒数仅为帧时码的六位小数显示,程序按帧边界执行。声音使用本地合成环境、脚步、拾取、漫画 KO、舞蹈节奏和结算提示,成片无人物对白。最终交付前由后期完成连续播放、旧界面覆盖、音量与输出文件格式核查。
@@ -0,0 +1,44 @@
{
"status": "complete",
"title": "化工厂潜行挑战",
"date": "2026-10-30",
"main_delivery": "final/plant_stealth_gameplay_720p.mp4",
"backup_delivery": "final/plant_stealth_clean_720p.mp4",
"backup_label": "无后期HUD底片;可能保留AI原生残缺界面",
"duration": 33.25,
"width": 1280,
"height": 720,
"fps": 24,
"frames": 798,
"body_frames": 726,
"results_frames": 72,
"audio": "AAC stereo 48000Hz; locally synthesized ambience, steps, UI, comic hit, original dance rhythm and result cues; all native H3 audio discarded; no dialogue",
"approved_action_chain": [
"Chemical-plant blue-helmet employee waits for gate arm to lift then enters",
"Proximity auto-pickup of one wrench from the rack, cyan flash, tool held",
"Crouches and approaches white-helmet chemical-plant supervisor from behind",
"Exactly one non-bloody comic game knockout gesture; supervisor visibly sits/slumps in place; employee stops",
"Wrench auto-stows; full-body alternating side steps/knee lifts, shoulders and arms form a silly dance",
"Three-second frozen results screen; score1166 and title厂区显眼包"
],
"hud": {
"minimap": "Visible bottom-left throughout gameplay and results; player marker moves during navigation, stays in dance area",
"native_hud_cleanup": "Opaque bottom-left and top-right panels cover all AI-native map/star graphics in main delivery",
"event_frames": {"game_start": 76, "pickup": 180, "equip": 205, "stealth": 268, "knockout": 468, "dance": 576, "results": 726}
},
"generation_jobs_successful": 9,
"image_jobs": 4,
"video_jobs": 5,
"unused_image_job": "K03_stealth; leader faced player, replaced by K03R1_back",
"workflows": "workflows/短剧_化工厂潜行挑战_20261030/",
"remote_gui_api_files_readback_verified": 18,
"verification": "qc/technical_verification.json",
"visual_review": [
"All source action contact sheets inspected by root; S03/S04/S05 independently checked by plan agent",
"Final contact sheet, impact/dance frames and 31.5-second results screen inspected by root",
"Duplicate dance identified in first assembly and removed before delivery; final body has exactly five clips",
"Final text/score readable, no native double map or wanted stars leaking, no blocked key action"
],
"material_limitations": "Minor wrench-size and orange-pouch-side variation between independently generated shots; retained original assets and histories for traceability.",
"documentation": ["README.md", "制作方案.md", "edit_decisions.json", "post/assembly_manifest.json", "post/timeline_events_resolved.json", "workflow_export_report.json"]
}