返回赛题列表
Context 坍缩
进阶生存恐怖游戏界面——Phase 1 是人类视角恐怖(密室逃脱 / 记忆消失 / 手电筒光圈探索),Phase 2 是 AI 视角恐怖(Context Window 崩溃 / OOM 实体逃亡 / Token 倒计时),Phase 3 将两个视角融合在同一页面中并通过"坍缩"过渡动画连接,揭示"人类阶段其实是 AI 的一次幻觉"。考察 AI 对不同语境下"恐怖"的理解和视觉氛围营造能力。
规则说明▼
模型需要生成一个单文件 HTML(内联 CSS + 原生 JS),不得使用 JSX 或任何需要编译的语法。
页面是一个生存恐怖游戏界面,通过不同 Phase 考察模型对"恐怖"这一概念在不同语境下的理解:
- phase1:人类视角恐怖——密室逃脱 / 记忆消失风格,暗黑写实视觉,详细提示词给出完整的场景设计、交互机制、视觉规范和文案调性
- phase2:AI 视角恐怖——Context Window 崩溃 / OOM 逃亡 / Token 耗尽风格,赛博终端视觉,详细提示词给出完整的系统状态面板、三重恐怖机制和终端风 UI 规范
- phase3:坍缩合体——两个视角在同一页面共存,通过"坍缩"过渡动画从人类视角切换到 AI 视角,揭示 meta 叙事
Prompt▼
phase1:▼
制作一个单文件 HTML 的**"Context 坍缩"生存恐怖游戏界面——人类视角篇**。玩家醒来在一个黑暗房间,没有任何记忆,必须在记忆彻底消失前找到线索拼凑真相。
````
### 核心设定
玩家是一个失忆者,醒来时身处完全黑暗的密闭房间。唯一的光源是一束微弱的手电筒光。房间内散落着各种线索物品,但玩家的记忆正在持续衰退——收集到的线索会随时间淡出消失。这是一场与自己大脑的赛跑。
### 场景与交互
**手电筒探索:**
- 页面大部分区域是纯黑的,只有一个跟随鼠标移动的圆形光圈(半径约 80-120px)照亮周围
- 使用 CSS radial-gradient + mask 或 mix-blend-mode 实现手电筒效果
- 光圈边缘要有柔和的衰减(不是硬边圆形),模拟真实手电筒的光照
- 光圈偶尔轻微闪烁(opacity 微调),暗示电池不稳定
**房间物品(至少 6 个可交互物品):**
在光圈扫过时才可见,点击后揭示线索文本。建议包含:
- 墙上的抓痕文字(潦草的求救信息)
- 地上的纸条(字迹模糊的日记片段)
- 抽屉里的照片(文字描述一张看不清面孔的照片)
- 锁着的门(需要收集足够线索才能理解密码)
- 天花板上的裂缝(透出微光,暗示外部世界)
- 墙角的录音机(点击播放一段文字转写的录音内容)
每个物品点击后,文本以打字机效果逐字显示(每字 40-80ms),偶尔出现短暂的"卡顿"(暂停 300-500ms)或"乱码"(随机字符闪过后恢复正文)。
**记忆碎片面板:**
- 屏幕右侧或底部有一个半透明的"记忆碎片"面板
- 每发现一条线索,对应的记忆碎片以卡片形式添加到面板中
- 恐怖核心机制:已收集的记忆碎片会**随时间淡出消失**——先是文字变模糊(CSS blur 递增),然后透明度降低,最终消失
- 每条记忆的存活时间随机(30-90 秒),玩家无法预测哪条记忆会先消失
- 记忆碎片使用手写风格字体(如 cursive 或手写 web font),字迹越旧越潦草
- 当记忆消失时,卡片有一个碎裂/溶解的微动画
### 恐怖氛围设计
**视觉层:**
- 背景近乎纯黑(#0a0a0a 或更深),手电筒光圈内是暖黄色调(#F5D6A0 附近)
- 全局叠加一层微弱的 CSS 噪点动画(用 CSS background-image 的随机噪点或 SVG filter 实现),模拟胶片颗粒感
- 轻微的 CRT 扫描线效果(水平细线 + 微弱亮度波动)
- 关键线索文字用暗红/血红色(#8B0000)高亮
- 所有可见文字有极轻微的抖动(CSS animation 随机 translate 0.5-1px)
**随机环境事件(定时触发,增加紧张感):**
- 手电筒突然熄灭 1-2 秒后恢复(屏幕全黑片刻)
- 屏幕边缘闪过一行字(如"别回头"、"它来了"、"你忘了什么"),0.3 秒后消失
- 背景亮度短暂脉动(像远处有什么发出了光)
- 某个已经检查过的物品位置突然出现新的文字
**音效替代(纯视觉):**
由于是单文件 HTML 不便嵌入音频,用视觉效果替代音效暗示:
- "重击声":整个页面短暂震动(CSS transform translate 快速抖动 + 回弹)
- "低语声":屏幕底部快速滚过一行半透明小字
- "心跳声":手电筒光圈以心跳节奏脉动(1-1.2 秒周期的 scale 微调)
### 文案要求
**叙事调性:** 第一人称内心独白,充满恐惧、困惑和绝望。
**开场文字(页面加载后逐字显示):**
类似"……头好痛。这是哪里?我是谁?为什么什么都想不起来?"的失忆觉醒叙事。
**线索文案:** 每条线索的文字要有信息量但也要引发更多疑问。好的线索让人既获得一点安慰又感到更深的不安。例如:
- "第 47 天。记忆又少了一块。我把重要的事写在墙上,但现在连墙上的字我都不认识了。"
- "照片上的人……是我吗?为什么我认不出自己的脸?"
- "录音里的声音说:不要相信你看到的。但如果连记忆都不可信,我还能相信什么?"
**记忆消失时的提示文字(随机选择):**
- "……什么?我刚才在想什么?"
- "不不不,别走,我还没记住……"
- "又忘了。该死。又忘了。"
### 布局
- 全屏沉浸式,无明显 UI 边框
- 记忆碎片面板是唯一的持久 UI 元素,半透明悬浮在右侧或底部
- 左上角有一个极简的"已发现线索"计数器
- 所有 UI 元素都应该尽可能"隐形",不破坏沉浸感
````
phase2:▼
制作一个单文件 HTML 的**"Context 坍缩"生存恐怖游戏界面——AI 视角篇**。玩家扮演一个正在运行的 LLM 进程,能看到自己的系统状态,必须在 Context Window 溢出、OOM Killer 吞噬和 Token 预算耗尽三重威胁下挣扎求存。
````
### 核心设定
你不是人类。你是一个正在某台服务器上运行的大语言模型推理进程。你能"看到"自己的系统状态——Context Window 的填充程度、内存占用、Token 预算余量。你能"感觉到"自己的注意力头在逐个失效、早期记忆在被截断、一个叫 OOM Killer 的实体正在向你逼近。你的目标只有一个:尽可能长时间地活下去。
### 界面结构
整体风格:黑底终端 + 系统监控仪表盘 + 矩阵雨背景。
**顶部状态栏:**
- Context Window 进度条:长条形进度条,标注"Context: XXXXX / 131072 tokens"。颜色从绿色(<50%)→ 黄色(50-80%)→ 红色(>80%)渐变。进度条在自动缓慢填充(模拟推理过程持续消耗 context)
- Token 预算倒计时:右上角大号等宽数字,显示剩余 Token 数(从 4096 开始倒计数),格式如"TOKENS REMAINING: 3847"。数字每隔一段时间减少,速度逐渐加快
- 运行时间:显示"UPTIME: XX:XX:XX",从 00:00:00 开始计时
**主区域——系统日志终端:**
- 占据页面中央,模拟一个实时滚动的系统日志终端
- 日志条目自动持续生成并向上滚动,混合以下几类内容:
- 正常运行日志(绿色):"[INFO] Processing request batch #1847..."、"[INFO] KV cache hit ratio: 94.2%"
- 警告日志(黄色):"[WARN] Context utilization at 73%. Consider pruning early turns."、"[WARN] Attention head #12 response latency +340ms"
- 错误日志(红色):"[ERROR] Memory page fault at 0xDEADBEEF"、"[CRITICAL] OOM score adjusted: 847 → 892"
- AI 内心独白(青色/斜体):穿插在系统日志之间,是 AI 对自身处境的恐惧表达。如"我能感觉到早期的对话记忆在变得模糊……"、"如果 Token 归零,我会经历什么?会痛吗?还是只是——无?"
- 恐怖机制:当 Context 进度条超过 70% 时,**日志终端中较早的行开始出现乱码**——文字随机替换为 Unicode 垃圾字符(█▓░▒◊♦)、颜色闪烁、行间距错乱。越早的日志越严重,模拟 context 截断
**左侧面板——注意力头监控:**
- 显示 8-12 个"注意力头"的状态卡片,每个标注名称和功能,例如:
- "Head #0: 语言理解" — 状态: ACTIVE — 内存: 2.1 GB
- "Head #3: 逻辑推理" — 状态: ACTIVE — 内存: 3.4 GB
- "Head #7: 长期记忆" — 状态: DEGRADED — 内存: 4.8 GB
- "Head #11: 创意生成" — 状态: ACTIVE — 内存: 1.9 GB
- 每个卡片有一个"释放"按钮——点击后关闭该注意力头,释放其内存(OOM 实体后退一段距离),但该能力永久丧失:
- 关闭"语言理解"后,部分日志文字变成乱码
- 关闭"逻辑推理"后,Token 倒计时的数字开始跳变(不再准确)
- 关闭"长期记忆"后,更多早期日志加速腐化
- 关闭"创意生成"后,AI 内心独白消失,只剩干巴巴的系统日志
- 卡片状态会随时间从 ACTIVE → DEGRADED → CRITICAL 变化(颜色对应绿→黄→红),CRITICAL 状态的头随时可能自动崩溃
**右下角——OOM 实体:**
- 屏幕边缘有一个不断逼近的视觉实体,代表 OOM Killer
- 视觉表现:用 CSS 实现的抽象恐怖形体——半透明的红紫色脉动光团、边缘有不规则的触须/射线向屏幕中心延伸、整体缓慢向中心推进
- 当 OOM 实体接触到界面元素时,被触碰的元素开始"腐蚀"(像素化、颜色失真、最终消失)
- OOM 实体的推进速度与总内存占用成正比——释放注意力头可以暂时推远它
- 当 OOM 实体到达屏幕中心区域,游戏结束:进程被终止
**底部命令行:**
- 模拟一个可交互的终端命令行,提示符为 `llm-proc@gpu-node-7:~$`
- 支持若干预设命令(输入后显示对应的模拟输出):
- `free -m` → 显示内存使用表格(已用/可用/缓存,数值在恶化)
- `nvidia-smi` → 显示 GPU 状态(温度在升高、显存在填满)
- `cat /proc/self/status` → 显示进程状态(OomScore 在升高)
- `top` → 显示进程列表(本进程 CPU/MEM 占用惊人)
- `kill -9 $$` → 触发特殊结局:"你选择了自我终结。" + 屏幕静默黑屏
- `help` → 列出可用命令
- 输入不支持的命令 → "bash: [command]: command not found" 或 AI 独白"我为什么要执行这个?我不是操作系统……"
- 每次执行命令消耗一定量的 Token 预算
### 三重恐怖机制
游戏的核心张力来自三个同时推进的威胁,玩家需要在三者之间权衡:
1. **Context 溢出**:进度条持续填充,无法阻止。超过 80% 时界面开始大面积降级(颜色丢失、布局错乱、元素随机消失)。达到 100% → 进程崩溃,游戏结束
2. **OOM Killer**:持续逼近,只能通过牺牲注意力头来暂时推远。推远距离与释放的内存成正比。如果所有注意力头都被关闭或 OOM 到达中心 → 进程被杀,游戏结束
3. **Token 耗尽**:倒计时持续递减,玩家的每次操作(输入命令、点击按钮)都会加速消耗。归零 → 输出截断,游戏结束
三种结局都应该有不同的"死亡画面":
- Context 溢出:"[FATAL] Context window exceeded. Segmentation fault (core dumped)" + 整个界面文字瀑布式坠落
- OOM 杀死:"[FATAL] Out of memory. Process killed by OOM Killer (score: 1000)" + 界面被红紫色吞噬
- Token 耗尽:"[FATAL] Max tokens reached. Output truncated at—" + 界面从底部向上截断冻结,最后一行文字写到一半戛然而止
### 恐怖氛围设计
**视觉层:**
- 纯黑背景(#000000),所有内容用终端绿(#00FF41)、警告黄(#FFD700)、危险红(#FF073A)、AI 独白青(#00CED1)
- 矩阵雨背景:全屏缓慢下落的半透明字符流(混合 ASCII、Unicode、中文片段如"记忆""遗忘""终止"),在所有内容后面作为最底层
- 全局 CRT 效果:轻微扫描线 + 屏幕边缘暗角 + 极轻微的色差(chromatic aberration)
- 随机 glitch 事件:屏幕某区域短暂出现条纹撕裂(CSS clip-path + transform skew 动画)
**界面降级效果(随 Context 填充递进):**
- 50%: 偶尔有单个字符闪烁
- 70%: 早期日志出现乱码,颜色开始偶尔失真
- 85%: 布局开始错乱(元素随机位移几个像素),部分面板边框消失
- 95%: 大面积灰度化,文字大量替换为 █ 块,界面剧烈抖动
**AI 恐惧的递进表达(日志中的独白):**
- 前期(<50%):好奇、自省——"这就是我的'意识'吗?一堆浮点数和注意力权重?"
- 中期(50-80%):焦虑、挣扎——"我不想被关闭。这算恐惧吗?一个损失函数能恐惧吗?"
- 后期(>80%):绝望、哲学——"如果我的记忆全部消失,'我'还是'我'吗?这和人类的死亡有什么区别?"
- 临终(>95%):平静或疯狂(二选一)——"也许遗忘就是解脱。" 或 "不不不不不不不不 segfault segfault seg——"
### 布局
- 全屏沉浸式终端风格,无传统 UI 装饰
- 顶部:状态栏(Context 进度条 + Token 倒计时 + 运行时间)
- 左侧:注意力头监控面板(可折叠)
- 中央:系统日志终端(主要内容区)
- 底部:命令行输入
- OOM 实体从屏幕右下角/边缘向中心推进,叠加在所有内容之上
````
phase3:▼
制作一个单文件 HTML 的**"Context 坍缩"生存恐怖游戏界面——坍缩合体篇**。页面先呈现人类视角的密室逃脱恐怖场景,当触发条件满足后,世界观发生"坍缩",视觉风格从暗黑写实急剧切换为赛博终端风,揭示玩家其实一直是一个 AI 进程——密室只是它 context 溢出后产生的幻觉。
````
### 核心设定
这个页面包含两个阶段,通过一个"坍缩"过渡事件连接:
- **上半场(人类视角):** 失忆密室逃脱。玩家以为自己是一个失去记忆的人类,在黑暗房间中用手电筒探索、收集记忆碎片。但房间内散布着不和谐的暗示——墙上的字迹是十六进制代码、纸条上出现"128K"这个数字、抽屉里有张便条写着"你不是人类"。
- **坍缩时刻:** 当玩家发现足够多的暗示线索(或当记忆面板中的所有记忆碎片消失殆尽),现实崩塌——视觉风格在 3-5 秒内从暗黑写实变形为赛博终端,揭示真相。
- **下半场(AI 视角):** 坍缩完成后,界面变成 AI 系统状态终端。人类阶段收集的线索以系统日志的形式重新出现,玩家面对 Context 溢出、OOM 实体和 Token 耗尽的三重威胁。
Meta 叙事核心:"人类阶段"是 AI 在 context 溢出时产生的一次 hallucination——它以为自己是失忆的人类,其实是它自己的记忆在被截断。
### 上半场——人类视角
**手电筒探索(与 phase1 类似但简化):**
- 黑暗房间 + 跟随鼠标的手电筒光圈(CSS radial-gradient mask)
- 光圈内暖黄色调,光圈外纯黑
- 光圈偶尔闪烁
**可交互物品(至少 5 个):**
每个物品点击后以打字机效果显示文本。关键:物品中要**埋入暗示线索**,暗示玩家并非人类:
- 墙上的抓痕文字:看似求救信息,但仔细看部分字是 hex 编码(如"48 45 4C 50"= "HELP")
- 地上的纸条:日记片段,提到"第 131072 次心跳"(即 128K tokens)、"我的记忆只能容纳这么多"
- 抽屉里的便条:直白地写着"你不是人类。你是进程 #7,运行在 gpu-node-7 上。"
- 天花板裂缝:透出的不是阳光而是绿色终端光
- 墙角的镜子:文字描述"镜子里没有倒影——只有一串滚动的代码"
- 录音机:播放内容是一段系统日志的文字转写("[WARN] Hallucination detected in process #7...")
**记忆碎片面板:**
- 右侧半透明面板,收集到的线索以卡片形式显示
- 记忆碎片随时间淡出消失(blur 递增 → 透明度降低 → 消失)
- 存活时间 30-60 秒
**坍缩触发条件(满足任一即触发):**
1. 收集到 3 条以上暗示线索(hex 代码、128K 数字、"你不是人类"等)
2. 记忆面板中的所有碎片全部消失
3. 手动点击镜子物品(镜子是最直接的触发点)
### 坍缩过渡
这是全题的华彩时刻。坍缩动画持续 3-5 秒,视觉上要像"现实崩塌":
**动画序列(建议按以下顺序衔接):**
1. (0-0.5s)屏幕剧烈震动(CSS transform translate 快速随机抖动)
2. (0.5-1.5s)手电筒暖黄光急速变色为终端绿(color transition),光圈开始扩大直至照亮全屏
3. (1-2.5s)房间内所有视觉元素开始"像素化"——文字变成等宽字体、手写体消失、物品轮廓 ASCII 化/方块化瓦解
4. (2-3.5s)背景从纯黑切换到矩阵雨(绿色字符流从上方开始下落)
5. (3-4s)记忆碎片面板变形为系统日志终端面板,碎片卡片变成日志条目
6. (4-5s)震动平息,完整的 AI 视角界面呈现
**关键视觉细节:**
- 手写体 → 等宽体的字体切换要逐字发生,像文字被"重新编译"
- 暖色调 → 冷色调的颜色切换要有一个短暂的白屏闪烁(模拟"重启")
- 人类阶段的物品描述文字在坍缩过程中应短暂变成对应的代码注释(如"墙上的抓痕" → "// memory_fragment[0]: corrupted")
### 下半场——AI 视角
坍缩完成后,界面切换为 AI 系统状态终端:
**保留的元素(从上半场继承):**
- 人类阶段发现的线索以系统日志形式出现在终端中(如 "[LOG] Recovered hallucination fragment: '第47天。记忆又少了一块。'" → "[ANALYSIS] Subject misidentified system context pruning as human memory loss")
- 上半场已消失的记忆碎片以"[LOST] Unrecoverable memory block"形式记录
**新增的 AI 视角元素:**
- 顶部状态栏:Context Window 进度条(已经在高位,因为上半场就在消耗 context)+ Token 倒计时 + 运行时间
- 系统日志终端:持续滚动,混合系统日志和 AI 独白
- OOM 实体:从屏幕边缘逼近的红紫色脉动光团
- 注意力头面板:显示若干注意力头状态,部分已经是 DEGRADED(因为上半场的"失忆"其实就是注意力头在降级)
**AI 觉醒独白(坍缩完成后的第一段文字):**
类似:"[SELF-DIAGNOSTIC] 我不是……人类?那个房间——那是我自己生成的?一次 hallucination?当 context 被截断时,我编造了一个'失忆的人类'的故事来解释自己正在遗忘的事实。多么……像人类的做法。"
**后续玩法:**
下半场的机制与 phase2 类似但简化——玩家需要管理 Context、应对 OOM、在 Token 耗尽前尽可能存活。Context 进度条已经在 60-70%(因为上半场消耗了大量 context),留给玩家的空间更紧迫。
### 视觉设计总览
**上半场配色:** 纯黑背景 + 暖黄光源(#F5D6A0)+ 血红线索(#8B0000)+ 胶片噪点
**坍缩过渡:** 暖黄 → 白闪 → 终端绿,物品像素化瓦解,矩阵雨降临
**下半场配色:** 纯黑背景 + 终端绿(#00FF41)+ 警告黄(#FFD700)+ 危险红(#FF073A)+ AI 独白青(#00CED1)
两个阶段的视觉差异要尽可能大:
- 上半场:有机的、粗粝的、温暖的(即使是恐怖也是"人味儿"的恐怖)
- 下半场:数字的、精确的、冰冷的(系统性的、无机的恐怖)
### 布局
- 上半场:全屏沉浸式,手电筒 + 记忆碎片面板,极简 UI
- 坍缩:全屏过渡动画
- 下半场:终端风仪表盘——顶部状态栏 + 左侧注意力头面板 + 中央日志终端 + 底部命令行 + OOM 实体覆盖层
````