# 游玩呈现壳 · 可微调前端模板 > **阶段**:P1 = 定类与契约;**P2** = 程序/样式适配与灌数。 > 上游:游玩管线 `auditor → gm → narrator`。 > 创作挂钩:`设计.正文组成` / `设计.监控栏`;终稿 tag 通常 `输出.用户展示`。 > **创作定位:基于固定壳做适配微调,不是从零设计前端。** > 预览:`/shells.html` ## 1. 创作怎么做(权威口径) ```text 固定壳(本仓库预置,七种) → 创作期:选一个 shell_id → 只改允许的微调轴(字段、显示名、开关、tone_chrome…) → 禁止改分区骨架、禁止发明第八种布局 游玩期:往壳的区域里灌数(present.v1 / 投影 / settlement) ``` 「正文组成」= **壳适配单**,不是 UI 创意稿。 用户看见的差异应来自**同壳不同绑定**,而不是每局一套新布局。 ## 2. 信息层级与长文容量 所有壳共用同一优先级——**改壳只是改谁占主面积**: | 优先级 | 区域 | 视觉待遇 | |--------|------|----------| | **P0** | `body` | 阅读主轴;**随字数撑高**(单轮按 600~3000 字设计),由页面/消息区滚动 | | **P1** | 建议行动 | 要决策时醒目;`choice_dock` 坞 **sticky 贴底** | | **P2** | `monitor` | 芯片密排,高度固定矮 | | **P3** | `header` / `footer` / `aside` | 辅助;双栏 **aside sticky**,长文仍可对照 | **不要**把正文塞进固定高度小框再内部硬滚(除非外层消息流另有约束)。 选壳时问:用户 80% 时间是在「读长场面」还是「做选择」还是「对线索」? ## 3. 七种常用壳 | id | 中文 | 主面积给谁 | 主场景 | |----|------|------------|--------| | `prose` | 纯散文 | 正文 ≈ 全屏 | 只要沉浸、不要 HUD | | `chat_monitor` | 对话 + 监控 | 正文(聊天气泡区) | 网恋 / 日常 / 轻 AIRP | | `spotlight` | 场面主视 | 正文极大(追光) | 电影感一幕、少机制 | | `turn_panel` | 回合面板 | 中栏场面 + 侧栏交互 | 资源/检定/跑团 | | `split_board` | 双栏看板 | 左正文 · 右线索 | 调查、推理 | | `choice_dock` | 选择坞 | 正文 + **底部大行动坞** | 选项驱动 / AVG 关口 | | `chapter_reader` | 章节阅读 | 阅读柱 + 窄进度侧栏 | 长文 / 爽文 | 旧规格未写 `shell_id` → 运行时视为 `prose`。 ### 3.1 各壳固定槽位 | 区域 id | prose | chat_monitor | spotlight | turn_panel | split_board | choice_dock | chapter_reader | |---------|-------|--------------|-----------|------------|-------------|-------------|----------------| | `monitor` | — | 顶栏芯片 | 顶栏芯片 | 顶栏 | — | 可选顶栏 | — | | `header` | — | — | — | 回合号 | 场景抬头 | — | **章题** | | `body` | **主** | **主聊** | **主舞台** | **场面** | **主读** | **局面** | **章正文** | | `footer` | 可选弱 | 可选 | 可选 | 检定摘要 | 可选 | 可选 | 作者注 | | `aside` | — | — | — | 交互物 | **线索栏** | — | **进度** | | `hidden` | 变量段 | 变量段 | 变量段 | 变量段 | 变量段 | 变量段 | 变量段 | ### 3.2 微调轴 | 轴 | 说明 | |----|------| | `monitor_fields` | 监控栏字段子集 | | `block_labels` | 可见块显示名(如 body→「短信」) | | `show_suggested_actions` | 是否渲染建议行动;`turn_panel` / `choice_dock` 默认开 | | `tone_chrome` | `default` / `messenger` / `book` / `terminal` | | `empty_states` | 空态文案 | **禁止**创作期输出完整 CSS;**禁止**自造 `shell_id`(要新壳改仓库模板)。 ## 4. 与创作产物的映射 ```text 设计.正文组成 正文.呈现壳.shell_id → 七选一 正文.呈现壳.微调 → 只填允许轴 正文.可见块[] → 挂到壳已有区域 设计.监控栏 → monitor 字段表 运行.本轮.裁决 → body 事实;suggested_actions → 行动区 输出.用户展示 → present.v1 或纯 Markdown(→ body) ``` ## 5. 游玩灌数契约 ```json { "schema": "present.v1", "shell": "spotlight", "blocks": { "monitor": { "地点": "天桥下", "张力": "紧" }, "body": "……用户可读正文……" }, "meta": { "suggested_actions": ["先开口", "递伞"] } } ``` - `monitor` 宜为 **短键值对象**(程序渲染成芯片),不要长文。 - `prose`:只需 `body` 字符串或 Markdown。 ## 6. 创作期只做适配 1. **选壳**:按「主面积给谁」(§2)七选一。 2. **微调**:字段、显示名、行动开关、tone、空态。 3. **不要**:重画分区、发明区域 id、写 CSS。 ## 7. P2 适配清单 | 序 | 项 | 状态 | |----|----|------| | 1 | `web/` 壳渲染器 + 层级样式 | **已接** `present-shells.js` + `styles.css` | | 1b | 壳预览页 | **已接** `/shells.html` | | 2 | 正文组成微调进 SessionView | **已接** | | 3 | present.v1 解析 | **已接** `present-packet.ts` | | 4 | narrator 按壳输出 | **已接** | | 5 | 正文组成产出壳适配单 | **已接** | --- 修订:2026-08-13 · 七壳;明确信息层级与主面积。