# 异常外勤协议-Anomalous Field Protocol **Repository Path**: codekpy/Anomalous-Field-Protocol ## Basic Information - **Project Name**: 异常外勤协议-Anomalous Field Protocol - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-18 - **Last Updated**: 2026-07-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 异常外勤协议 (Anomalous Field Protocol) ## 项目简介 《异常外勤协议》是一款 **2D 横版心理恐怖与规则驱动型收容模拟游戏**。玩家扮演 Site-19 的低级外勤职员,在信息被系统性抹除(表现为黑色方块)的环境中,通过绝对服从规则、拼凑残缺信息来对抗不可名状的异常实体。游戏核心体验并非传统战斗,而是在幽闭空间中直面未知时,依然能按下交互键的勇气与对规则的敬畏。 --- ## 核心玩法机制 ### 规则驱动的实体对抗 | 异常编号 | 核心威胁 | 2D横版对抗/收容玩法 | 认知污染联动 | |---------|---------|-------------------|------------| | SCP-096 | 看到脸即触发无限追杀;无法被物理伤害 | 背向行走+声波导航:全程背对倒退移动,依靠左右声道声波可视化条判断距离。手动转头超45°即触发处决动画 | 脸部黑方块随San值降低而闪烁;消失时需0.5秒内按空格闭眼,失败即死。任务日志中相关描述被抹除,需从NPC对话推断规则 | | SCP-173 | 视线离开即移动并扭断脖子 | 眨眼节奏+协作搬运:屏幕顶部有眨眼倒计时条,归零强制闭眼0.8秒(此时实体必移动)。可消耗San值使用眼药水延长睁眼时间 | 移动路径可能被黑方块遮挡,需依靠混凝土摩擦声与地面震动判断位置。NPC可能因污染"忘记"其存在,不再提醒眨眼 | | SCP-087 | 纯黑空间;未知实体在深处呼唤 | 音频迷宫+资源管理:垂直下落场景,仅靠声音导航。手电筒开启会吸引实体,错误跳跃损失San值并触发幻听 | 楼梯结构图被完全抹除,需通过录音碎片重建心理地图。低San值时实体声音变为已故同事求救声,诱导偏离正确路径 | | SCP-914 | 输入物品→输出结果不确定 | 拖拽解谜+风险博弈:横版工作台界面,AI实时生成输出结果。错误组合可能释放临时敌人或污染存档 | 档位标签被黑方块覆盖,需通过实验记录与NPC经验推断安全档位。成功转换可获得认知稳定剂 | ### NPC 记忆验证协议 - **验证前置**:对话前先选择验证问题(如"你还记得B3层的颜色吗?"),回答正确解锁正常对话,错误/沉默则后续选项全变为 `[数据删除]`,强行交互导致NPC永久消失。 - **情感锚点**:完成私人委托提升信任度,高信任度NPC会在San值危急时主动提供稳定剂或标记安全路径。 - **谎言机制**:部分NPC为自保故意隐瞒信息,需结合环境细节(血迹方向、通风管气流声)交叉验证。 ### 存档污染系统 - San值 < 20 时保存,存档中随机一个NPC的 `isAlive` 字段会被替换为 `"[REDACTED]"`。 - 读取时提示"检测到人员数据异常,正在尝试恢复...",恢复失败则该NPC在本次周目中视为"从未存在"。 --- ## 非对称对抗与收容战斗系统 ### 核心战斗哲学:规则即武器 - **无伤害原则**:所有异常实体均免疫常规物理/能量伤害。攻击键(默认鼠标左键/J键)仅用于"交互"而非"输出"。 - **San值作为弹药**:所有主动对抗行为均消耗San值。San值归零不会立即死亡,但会触发"认知崩溃",使战斗UI失效、规则提示变为乱码,强制进入逃生状态。 - **失败惩罚差异化**:战斗失败不等于Game Over,而是触发"污染事件"(如存档损坏、NPC记忆丢失、地图结构永久改变),迫使玩家在重试时面对更恶劣的环境。 ### 实体专属对抗协议 | 异常编号 | 对抗目标 | 横版战斗操作 | 资源消耗与风险 | |---------|---------|------------|-------------| | SCP-096 | 阻断追杀路径 / 争取撤离时间 | 声波诱饵部署:在背向行走中按E键放置声学诱饵,诱饵发出模拟脚步声吸引096转向。需在声波可视化条峰值时精准按下,提前/延后0.3秒即失效 | 每个诱饵消耗15点San值;同一区域最多存在2个;096识破诱饵后会加速冲向玩家真实位置 | | SCP-173 | 创造安全移动窗口 | 闪光抑制弹:在眨眼倒计时归零前0.5秒投掷,强光使173僵直3秒(期间可自由移动/搬运)。需在屏幕顶部倒计时条变红瞬间释放 | 每发消耗20点San值 + 1枚实体弹药;连续使用超过3次会触发"光敏过载",后续闪光效果减半且自身短暂致盲 | | SCP-087 | 驱散实体 / 标记安全路径 | 音频共振器:在下落过程中长按空格键蓄力,释放特定频率声波驱散前方黑雾中的实体。蓄力时间需匹配环境背景音的节奏(通过耳机左右声道判断) | 蓄力期间无法移动/闪避;错误频率会吸引实体靠近并损失30点San值;正确频率可临时照亮下方2层楼梯结构 | | SCP-914 | 阻止失控产物暴走 | 紧急制动协议:当914输出危险实体时,需在3秒内完成QTE序列(方向键+交互键组合)关闭舱门。QTE节奏随产物危险等级动态变化 | QTE失败则产物逃逸,当前房间进入"污染锁定"状态(无法存档/使用恢复道具);成功制动可获得"认知稳定剂"碎片 | ### 通用对抗工具链 - **认知锚定针**:战斗中San值低于30时可使用,立即恢复25点San值并重置所有实体的"追击计数器",但使用后该周目内最大San值上限永久降低10点。 - **规则覆写芯片**:稀有消耗品,可在战斗中临时修改单一实体的对抗规则(如将096的"背向行走"改为"侧向移动"持续15秒),为高难场景提供策略容错空间。 - **环境互动反击**:部分场景包含可触发的收容设施(如电磁栅栏、喷淋系统),需提前解谜激活。激活后可在战斗中作为"安全区"或"控制手段",但每次使用都会导致该设施永久损坏。 ### 战斗反馈与沉浸感设计 - **UI动态污染**:San值越低,战斗UI的抖动、错位、黑方块覆盖越严重;关键操作提示可能被伪装成错误信息,需依靠肌肉记忆而非视觉确认。 - **音频优先级压制**:对抗成功时播放清晰的机械确认音;失败时环境噪音骤增、心跳声盖过操作反馈,强化挫败感与压迫感。 - **手柄触觉映射**:不同实体的对抗操作对应差异化震动模式(如096诱饵部署为短促脉冲,087共振器蓄力为渐进式强震),弥补视觉受限时期的信息传递。 --- ## 本地存储数据结构 ```typescript interface AgentProfile { id: string; name: string; clearanceLevel: number; // 1-5,影响可查看文档完整性 cognitiveResistance: number; // 认知抗性,减缓黑方块扩张 & 096脸部黑方块闪烁频率 sanValue: number; npcRelations: Record; completedTasks: string[]; redactedDataFragments: string[]; // 逆模因碎片,用于拼凑被抹除的关键信息 lastSaveTimestamp: number; } ``` --- ## 技术栈与开发规范 ### 核心技术栈 - **语言/构建**:TypeScript + Vite - **渲染引擎**:Phaser 3 (或 PixiJS v8) - **状态管理**:Zustand + persist 中间件(或 localforage) - **音频引擎**:Howler.js - **包管理**:pnpm ### 国内镜像源配置 ```bash pnpm config set registry https://registry.npmmirror.com pnpm config set sharp_binary_host "https://npmmirror.com/mirrors/sharp" pnpm config set canvas_binary_host_mirror "https://npmmirror.com/mirrors/canvas" ``` ### AI 集成预留 在 `src/services/ai-report.ts` 中预留 DeepSeek API 调用接口,用于生成任务报告、NPC动态对话及914转换结果。 --- ## 开发路线图 1. **MVP阶段**:2D横版移动+沉重手感+CRT滤镜+SCP-096背向行走原型(硬编码对话) 2. **核心循环**:逆模因黑方块渲染+NPC记忆验证+本地存档+存档污染 3. **内容填充**:接入DeepSeek生成内容,添加SCP-173、087、914关卡 4. **体验打磨**:优化声波导航、眨眼节奏、UI权限升级反馈等沉浸感细节 --- ## 推荐目录结构 ``` Anomalous-Field-Protocol/ ├── src/ │ ├── scenes/ # Phaser 场景文件 │ ├── entities/ # 异常实体逻辑(096/173等) │ ├── systems/ # 认知污染、存档污染、记忆验证系统 │ ├── combat/ # 战斗判定、QTE、工具链逻辑 │ ├── services/ # AI接口、音频管理、本地存储 │ ├── assets/ # 像素素材、CRT着色器、音效 │ └── types/ # TypeScript 类型定义 ├── docs/ # 设计文档、SCP设定集、NPC对话树 ├── public/ # 静态资源 ├── package.json └── README.md ``` --- ## 免责声明 本项目为独立同人创作,所有SCP相关内容仅作游戏玩法参考,不构成对SCP基金会原IP的商业使用声明。 ## 许可协议 本项目遵循 [Apache License 2.0](LICENSE) 协议开源。