# FPS-Infected-Mode **Repository Path**: kingharemiii/fps-infected-mode ## Basic Information - **Project Name**: FPS-Infected-Mode - **Description**: Codex基于Godot4.5实现的像素风FPS生化感染模式。 - **Primary Language**: Unknown - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-09-27 - **Last Updated**: 2026-10-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 大灾变模式已移除 当前可选模式为生化感染、生化爆破、测试沙盒、生化感染2和创造者模式。原大灾变编号 1 已停用,其余模式编号不变;读取旧预设时编号 1 回退为生化感染,撤离地图不再进入选图界面,检查点及撤离刷怪参数从当前配置移除。同步前的根配置仍自动备份。以下旧章节中的大灾变操作与测试记录仅供历史参考,不再适用于当前版本。 ## 大厅、背包与战斗修正(2026-10-07) 启动先进入大厅:选择模式、地图、开局身份、主武器与额外携枪,并预览头盔、肩甲、披风和配色。Esc 暂停对局后可返回大厅。大厅与 F2 的配置都在下一局生效;保存写入运行目录的 recommanded.cfg。 大厅「导入 CFG 配置」可选择任意游戏配置文件,支持当前分节格式及旧版 `[preset]` 字典;混合格式中当前分节优先。导入会同步刷新大厅的模式、地图、身份、配装、装饰以及 F2 全部参数和按键。缺失字段使用独立系统默认,未知或已删除字段忽略,字段类型错误则整份拒绝并保留当前设置。导入仅作用于下次开局,需点击「保存大厅配置」才写入当前运行目录的 `recommanded.cfg`。 英雄专精与母体转职选择页均为局部面板,打开时不暂停游戏,战斗、移动、电脑AI和对局计时继续。英雄未选择且满足原有等级条件时,默认 H 可打开或关闭,数字键1—2选择;确认专精后 H 无效。母体仅10级可转职:首次达到条件或10级母体复活时,自动弹出类似普通僵尸选类型的10秒局部面板,数字键1—6选择。倒计时内可选裂空利爪、幽影疾行、震撼重击、定点转移、全域酸蚀,或保留原护盾;超时继续使用护盾,本次生命不能再选择,H或额外经验均不能重开或重置时间,下次正常复活重新计时。低于10级的母体继续使用护盾,不弹出转职选择;近战永久终结仍不复活。选择借用技能后取消并禁用原护盾,F 发动、再按取消,保留母体生命、移动、近战、等级和外观;技能沿用对应类型10级参数及完整冷却,仍受已有僵尸增益影响。传送保留选点期限、无遮挡与面前快捷传送,幽影保留第一人称手臂并不显示光柱。母体幽影技能持续期间的抓击与重击另乘独立伤害倍率,默认0.5,F2「僵尸 → 母体」可调整 `mother_phantom_damage_multiplier`;普通人类、英雄和终极英雄均适用,结束或取消后恢复,普通疾跑者不受此母体专用参数影响。电脑母体也受10级和选择期限约束。HUD显示等级要求、剩余时间、转职结果或超时提示。 验证:`tests/lobby_cfg_import.gd` 检查文件选择、当前/旧格式、参数与预览刷新、独立缺省值、无效输入原子拒绝和不覆盖来源文件;`tests/mother_specialization.gd` 检查五种技能、冷却与取消、属性隔离、真实死亡复活、护盾选项、永久终结、晋升、电脑选择和活动 AI/物理/计时。二者均可无头运行,图形入口保持鼠标自由移动。 - 感染模式增加倒计时尸潮,默认剩余 90 秒触发,F2 可设置阈值(0 关闭)。它与最后三人未全部变身的超时尸潮共用一次触发状态;触发后不会重复发放加特林,结束后不会重新启动。母体复仇潮保留为独立机制。 - 普通人类以前一次抓中立即感染;现在先扣生命,耗尽才感染。英雄原有抓击耐受机制保留。疾跑者和跃袭者的进化会缩短攻击间隔,新增抓击最短间隔,系统默认 0.4 秒;实际攻击伤害仍在挥爪动画中点结算,每次只结算一次。普通人类抓击伤害倍率可在 F2 调整。 - 重叠硫酸池每个目标每 0.5 秒只结算一份伤害,取可见、仍存活来源的最高伤害;不同僵尸、不同生成时间的酸池同样不会加倍。喷吐的直接命中与溅射仍独立结算。 - 默认主武器、手枪、加特林、榴弹炮和空背包计入基础重量,默认装备组合保持原有基础移速。额外主武器默认最多两把,每增加 1 kg 减少 2.5% 移速,下限 55%;丢弃默认装备可以提速,上限 125%。持枪倍率、冲刺和增益仍各自生效。重量使用武器配置字段,可在 F2 调整。重武器弹药仍来自现有补给与奖励。 - G:面向 2.5 米内无遮挡的掉落武器捡枪,没有目标则丢当前枪。主武器容量包含开局主武器,手枪与重武器用独立槽位。丢捡和切枪保存弹药,双持左右弹匣各自保存。掉落枪 90 秒后清理。 - 默认 Q 加特林、E 快速近战(挥击一次后返回原装备)、T 榴弹炮、F 技能 / 再按取消、V 终极变身、B 爆破交互;1 为首把主武器,额外主武器按获得顺序依次分配到4、5、6、7、8、9、0,2手枪、3手雷、R换弹、G丢捡。滚轮切换可在F2「武器 / 瞄准与切换」关闭。终极英雄1切双刃、2切手枪。F2「按键设置」点击动作后按新键,重复键与原动作交换,Esc 取消;F1/F2/F3/F5/F6 保留给界面。 - 双持 UZI 使用新增稳定武器编号 8,不能瞄准。左右鼠标键分别控制两把枪,各有弹匣、备用弹药、射击冷却和换弹计时,R 为需要补弹的枪分别换弹;电脑也可抽到该武器。 追加生化手雷:默认数字键 3 切换,也能由滚轮切换;左键投掷,接触墙地后弹跳,默认 2.2 秒引信后爆炸,仅伤害感染者并产生击退。独立于 T 榴弹炮,默认开局 2 颗、上限 3 颗,每颗 0.8 kg,爆心 180 伤害、5 米半径。榴弹补给默认附带 1 颗手雷。G 可丢下或捡回整组手雷,数量与重量守恒;使用手雷同样减轻背包。F2「生化手雷」可修改所有上述参数,已有榴弹炮数值保持来自根目录配置。 验证入口:tests/lobby_backpack_combat.gd(双触发互斥、酸池不叠加、抓击一次结算、背包、丢捡弹药守恒、双持及按键草稿);tools/capture_lobby_backpack.gd(非 headless 实机界面截图)。已存在配置以根目录 recommanded.cfg 为准,新增缺失字段来自独立系统默认;用 tools/sync_recommanded.ps1 同步并自动打包。 # 生化 FPS 单机原型 ## 测试沙盒与创造者模式 创造者俯视图支持「选点传送并精修」:启用后左键点击地图,即可传送到地面或组件顶部并进入第一人称编辑,F6 返回俯视图。右键取消选点;边界外或站立空间不足时提示重新选择,不改变地图组件。 第一人称精修瞄准墙缝内地面或墙面时,模块会按空隙自动缩小宽、长和高度(最小 0.1 米),保留承托和不重叠检查。小地图按当前画布尺寸显示自身位置与朝向。F6 面板的「行走速度 m/s」可直接输入任意正数,即时改变当前创造者第一人称速度,不受负重、武器、瞄准或冲刺影响;默认值由根配置 `[extra] creator_move_speed` 提供,也可在 F2「人类 / 基础与移动」设置下一局的默认速度。 模式 3 正式名为「测试沙盒」,保留现有身份、标靶、武器补给与增益实验,不保存战场布局。模式 5「创造者模式 · 地图搭建」独立启动可编辑底图,不生成电脑对手或回合胜负。F6 打开/关闭搭建面板;俯视图按住左键拖动连续铺设、右键拖动擦除,滚轮缩放、中键平移,提供双路和十字快捷布局。地图宽与长可分别设置为 64—1024 米,局部缩放后可编辑全图;组件宽、高、长可自定到 0.1 米精度,单图最多 1024 个实体盒体。第一人称精修使用准星左键贴合地面或现有模块的上/侧面,较窄的侧向间隙自动缩短组件;重叠、悬空和超出地图边界的放置会被拒绝。地面不可删除。 填写地图名称后点击「保存地图与缩略图」,会把带稳定编号的 `map.json` 和 640×360 实机 `thumbnail.png` 写入游戏同目录 `components/player_maps/地图ID/`(编辑器运行时在项目 `components/`)。再次进入创造者模式,可在「继续编辑已保存地图」中载入并更新原文件。重启后,地图组件进入生化感染与测试沙盒的大厅和 F2 选图页;其他玩法需要相应的出生点、检查点或防守点规则,当前导出不将其标为兼容。分享整个地图文件夹,接收者放入自己的 `components/` 即可加载;如有编号冲突,组件诊断会拒绝后加载者。现有地图和武器一样是插件式数据组件,无需重新编译;自制地图的组件格式、限制和校验见 `components/README.md`。 ## 范围酸液、抛物线跃袭与高台防守(2026-10-02) - 酸液喷吐者默认 220 生命、3 秒技能冷却,按技能键向准星直接发射,无射程限制。酸液命中后在 3.6 米范围内溅射,中心伤害 32,边缘保留 40%,并减速 1.5 秒;直接命中的目标承受中心伤害。墙体阻挡溅射,同阵营不受伤害,命中只结算一次。F2 可调整半径、伤害衰减和减速时间。 - 跃袭者默认 240 生命、18 米技能距离、16 米/秒水平速度上限、6.5 米最大抬升高度。**点按技能键(默认 F)** 显示绿色/红色轨迹和落点,**左键** 确认弹射,**再按 F** 取消预瞄;预瞄和无效落点不消耗冷却。确认后松开 F 不会中断已经开始的弹射。实际飞行经过角色碰撞,低顶棚、墙体和落点支撑都会检查;受击击退或途中碰撞可中断飞行。电脑使用同一轨迹验证,能够弹射到高台。 - 普通感染模式每局从最多四处集合点中安排防守。高度、坡道入口和露天程度增加守点权重,拥挤人数降低分配吸引力;房屋仍保留被选择的机会。地面守卫会择机到门口观察,高台守卫保留邻近位置活动。爆破和大灾变仍以各自目标为优先。 - 僵尸可概率协作搭肩人梯:底层站稳托举,上层先登肩再跳上约 2~3.15 米的裸露平台。使用实际角色碰撞,不传送、不增加地图台阶;受击、支撑死亡、近身危险或超时会解散。更高屋顶与有障碍的落点仍走坡道或使用跃袭。成功登高的尸潮僵尸保留这条合法上层路线。 验证:`tests/zombie_skill_upgrade.gd` 覆盖范围伤害、遮挡、落点预测及实际高台弹射;图形运行的 `tests/leap_input.gd` 覆盖真实 E/鼠标操作并保存 `artifacts/leap-preview.png`;`tests/defense_quality.gd` 验证 400 次固定种子抽选保留随机性;`tests/zombie_ladder.gd` 验证五种僵尸共 15 次在原地图装卸平台上的实际搭肩攀爬与受击/死亡解散。`tools/capture_zombie_ladder.gd` 保存实际登肩帧。本次未修改地图布局。 ## SR-25 连狙与电脑补给(2026-10-02) F2「对局与玩家」可选择 **SR-25 连狙**,下一局生效。按住右键开启带十字分划的狙击镜,松开恢复腰射;左键每次点击射击一发,默认间隔 0.42 秒,无需拉栓,可持续开镜连续点射。默认 10 发弹匣、3 秒换弹、5 倍基础枪伤、160 米射线射程;镜内视野默认 26 度,并按放大倍率降低鼠标灵敏度。每发产生短暂角度震动,约 0.28 秒恢复,另有可用鼠标抵消的枪口上扬。F2 逐把枪械页可修改射速、伤害、开镜视野和震动幅度。普通开局武器池现有六把,电脑也可能抽到连狙;加特林、手枪、榴弹和刀的编号与槽位保持兼容。 电脑默认在备用弹药不足两个弹匣时主动取子弹箱,缺榴弹时会主动补充,也会顺路获取短时增益;选择可到达的补给后会保持路线。完全缺弹者优先,队友避免争同一箱,遇到近身敌人或补给路线进入敌人的安全距离则放弃。大灾变和爆破限制绕路距离,正在安放/拆除或引爆前最后八秒优先任务。F2「电脑补给意愿」可调整弹药阈值、搜索半径和路线坚持时间。现有补给包含弹药、榴弹、加特林、医疗箱和增益晶体;受伤电脑优先考虑医疗箱,缺少增益时也会主动获取晶体。 `tests/sniper.gd` **须图形运行(不加 `--headless`)**,验证真实鼠标输入、持续开镜连续点射、110 米命中、镜头抖动恢复、换弹和预设保存;`tests/bot_supplies.gd` 验证实际走到补给并拾取、队友优先权、榴弹意愿和母体威胁下后撤。`tools/capture_sniper.gd` 生成第一人称持枪、开镜与 F2 枪械截图。 ## 极光研究所栏杆翻越修复(2026-10-02) 服务隧道屋顶高 3.8 米,与 4 米检修桥仅相差 20 厘米。南北两侧的一米栏杆保留实体碰撞,每侧新增三条双向导航跳跃连接,人类、五类僵尸、母体和尸潮增援均能翻越。根据移动速度调整起跳距离,并在接近、腾空与落地期间保持落点,避免频繁更新战斗目标把电脑拉回起点。极光研究所的增援可通过正规坡道和这些跳跃连接追击上层目标;其余地图的增援规则保持原样。 `tests/aurora_vault.gd` 验证 109 组实际移动与碰撞中的翻越(双向、南北两侧、三个横向位置、不同移动速度),每次只起跳一次,并检查地面增援经坡道追到屋顶、实际战斗策略追击可见屋顶玩家。坡道回归与普通低障碍越跳另行检查。`tools/capture_aurora_vault.gd` 输出真实翻越帧 `artifacts/aurora-lab-vault.png`。 ## 新感染地图与坡道修复(2026-10-02) 按 **F2 → 地图 → 选择地图 → 应用并开始下一局**,新增三张原创感染地图,感染编号继续使用 4、5、6,不改变已有地图编号。现在共有七张感染地图和一张大灾变地图,全部附带 640×360 实机缩略图。 - **灯市古镇(4)**:茶馆、绸院与祠堂形成四门穿行空间,错位巷墙切断长视线,巷道两端与侧向连接口提供包抄。钟楼露台和戏台都有两条坡道,五处守点覆盖地面庭院与高台。参考 [Inferno 官方改版说明](https://www.counter-strike.net/inferno/) 中的入口宽度与视野辨识,以及 [Lotus 开发说明](https://playvalorant.com/en-gb/news/dev/lotus-unearthing-valorant-s-lost-city/) 中的守点间转移思路;这里使用固定开放通道。 - **极光研究所(5)**:蓝橙分区的两端检修台由 4 米高架桥相连;桥下服务隧道设四个出口,南北实验室和外围冷却设备构成室内外替代路线。参考 [Sub Base 官方指南](https://www.callofduty.com/guides/multiplayer-maps/call-of-duty-modern-warfare-iii-play-maps-core-multiplayer-map-guide-sub-base) 的室内通路、上层通道和外侧长路线之间的取舍,增加适合近战感染者接近的遮挡。 - **云轨总站(6)**:两辆车厢均可从前后及侧门穿行,两侧 1.5 米站台可经宽坡道到达,5 米换乘厅连接两侧上层。五处守点分布在站台、车厢、换乘厅与售票厅。参考 [Terminal 官方指南](https://www.callofduty.com/guides/multiplayer-maps/call-of-duty-modern-warfare-iii-play-maps-core-multiplayer-map-guide-terminal) 的多出口狭长空间、上下层转移和室内外路径风险;改成轨道站场布局。 三张地图均使用原创程序像素材质和几何,具有 16 个出生点、五处守点及各自的巡逻/增援位置。参考用于路线与空间设计,地图尺寸和构造按本游戏角色通行需求重新安排。`tests/fps_inspired_maps.gd` 检查预设往返、选图草稿隔离、导航点连通和净空、116 组人类/感染者双向物理通行及补给;`tools/capture_fps_maps.gd` 保存第一人称、守点和选图截图。 人类与僵尸共用的坡道寻路已修复:普通导航坡道不再触发跳跃捷径逻辑,接近坡道侧壁时绕回入口,尸潮增援在坡面上沿坡道下行。保留旧城区指定的跳跃捷径和普通低障碍越跳。`tests/ramp_navigation.gd` 验证五类僵尸、两种人类持枪速度、坡道侧向接近、尸潮下坡、跨站台绕行和旧城区捷径。 ## 新感染地图:暮光商场、赤岩水坝(2026-10-01) 按 **F2 → 地图 → 选择地图 → 应用并开始下一局**。现在有四张感染地图:旧城区(编号 0)、雾港检疫站(1)、暮光商场(2)和赤岩水坝(3);长途撤离道路仍供大灾变使用,旧城区仍支持生化爆破。所有地图卡片均带有随发布包分发的 640×360 实机缩略图;选择卡片只修改下一局草稿。 - **暮光商场**:96×80 米废弃商场,以中庭喷泉和售货亭遮挡视线。四条坡道通往 3.5 米高的连续环形回廊,回廊下方保留地面通道,内侧缺口允许玩家落入中庭转移。四间带屋顶的店铺均有四个门,五处守点分别为美食区、影院、书店、药房与西侧回廊。粉红与青色标识帮助辨认上下层及商铺。 - **赤岩水坝**:96×80 米干渠,两岸分别为 3 米、5 米高的平台。南北双桥通过短坡连接两岸,桥下渠底仍可穿行;两岸各有南北坡道。北侧发电站和南侧四门维修站提供不同高度的转移目的地,五处守点包含两岸、发电站、维修站与桥面。红岩、蓝色机组和黄色桥面标识形成独立的室外风格。 两张地图均为原创布局,采用程序生成的低分辨率纹理,配置 16 个出生点和独立的巡逻、守点及刷怪位置。`scripts/infection_layout.gd` 提供共用的坡道、四门房间、像素材质与导航生成。守点均有多条可通行路线,避免仅靠一个入口决定防守;实际强弱仍需根据试玩调整。 `tests/additional_infection_maps.gd` 已验证两张地图加载与预设往返、选图草稿隔离、全部地图缩略图、导航点连通和身体净空、88 组人类/感染者双向物理通行、商场回廊落地和补给生成。`tools/capture_additional_maps.gd` 输出两张地图的第一人称、守点视角与 F2 选图截图到 `artifacts/`。 ## 新感染地图:雾港检疫站(2026-10-01) 按 **F2 → 对局与玩家 → 感染地图 → 雾港检疫站 → 应用并开始下一局**,游戏模式选择「生化感染」。新地图有独立布局,旧城区仍可选择;生化爆破继续使用旧城区,大灾变继续使用撤离道路。地图选择随预设保存,已有预设缺少此项时沿用旧城区。 也可打开 **F2 → 地图**,通过实机缩略图选择目录中的所有地图。选择卡片只修改下一局草稿;开始下一局后生效。后续新地图统一注册到地图目录,使用同一工具生成缩略图并自动进入此页面。 96×80 米港区内,中央错列货箱连接五处守点:西侧货运仓库、东侧检疫楼、北侧信号台、南侧泵站和海关平台。每处均有两条实体坡道,人类与感染者都能通行。仓库和检疫楼的二层侧阳台可以落地转移;东侧有遮挡视线的带顶维修通道,东南货箱提供可选的连续跳跃路线。16 个分散出生点与独立的地面尸潮点避开实体障碍。地图使用原创低分辨率重复纹理、港机剪影、导向标记和分区色彩。 已从 B 站的 CF 金字塔、逆战西部小镇、战地之王生化实况抽取 320×180 左右的参考画面,用于观察高低差、转移和遮挡;视频及画面保存在忽略目录 `.tools/map-references/`,未作为游戏素材导入。详细布局、参考链接、观察时间点和验证范围见 [地图设计说明](docs/quarantine-port-design.md)。 `tests/quarantine_port.gd` 验证预设、地图切换、出生/巡逻/守点/尸潮点的连通和身体净空,及十条坡道人类、感染者上下坡共 40 组物理通行。预览:`artifacts/quarantine-port-overview.png`、`artifacts/quarantine-port-player.png`、`artifacts/quarantine-port-gallery.png`。 ## 分类设置、僵尸类型与切枪(最新更新) **F2** 打开独立全屏设置页面:对局与玩家、枪械、榴弹枪、僵尸、大灾变五个分类。枪械和僵尸分类下还有各自的独立子页面。每项修改仅在「应用并开始下一局」后生效;返回放弃未保存修改,恢复默认也只是编辑草稿。支持「保存预设」「读取预设」,预设以可读分节格式存放于 `recommanded.cfg`:编辑器运行时在项目根目录,打包版则和 `BioFPS.exe` 同目录。该文件已加入 `.gitignore`,由玩家自行管理,不随 Git 提交。保存预设不改变本局;若预设尚不存在,仍会尝试读取旧版本地预设。 - 六把主武器分别设置:弹匣、射击间隔、换弹时间、单颗弹丸伤害倍率、弹丸数量、散布、衰减起点/终点、最低伤害比例、击退、后坐力。 - 五类普通僵尸分别设置:生命、移速、近战伤害(大灾变)、攻击间隔、攻击距离、身体装甲、受击退倍率、出现权重。权重0禁用,至少保留一种;母体另有生命、移速、装甲、抗击退、攻击距离/间隔、护盾和脱战回血参数。生化感染保留接触感染规则。 - 榴弹枪独立设置爆心/边缘伤害、半径、击退、腾空、射速、弹速、重力和引信;可调掉落概率、每份弹药量及补给上限。 - 大灾变可调初始血量/时间、集合范围/时长、检查点回血/加时、波次数量/间隔/成长、僵尸数量上限与生命成长。对局页可调移动、奔跑、跳跃、切枪时间和电脑连射节奏。 - 设置检查衰减距离前后关系、爆心与边缘数值、刷怪间隔和僵尸权重,避免保存互相冲突的规则。 - **每名电脑每局独立随机抽取六把主武器之一**,适用于两种模式;可能重复,不强行保证每把枪都有。 | 类型 | 默认生命 | 默认速度 | 特点 | | --- | ---: | ---: | --- | | 普通感染者 | 250 | 5.6 | 基础近战 | | 疾跑者 | 140 | 8.0 | 橙色,追击快、攻击快 | | 重甲巨尸 | 750 | 3.8 | 灰色厚重身体,身体减伤40%,受击退25%;爆头绕过装甲 | | 跃袭者 | 200 | 5.8 | 紫色,视线内向目标跳跃突进,默认冷却5秒 | | 酸液喷吐者 | 190 | 4.4 | 绿色,发射实体酸液弹,默认20伤害与1秒减速;普通人类血量耗尽时感染,终极英雄血量耗尽时死亡,墙壁可挡 | 新类型为原创通用玩法分类,使用不同颜色、名称与行为辨识,没有导入商业游戏角色素材。大灾变按权重生成,生化模式感染转换时按权重选型,母体单独保留。玩家控制跃袭者时点按技能键 **F** 预瞄、左键确认;喷吐者按 **F** 向准星直接发射,无需锁定目标,酸球飞行不限距离,命中实体后溅射。母体按 **F** 开盾,技能键可自定义。 **榴弹操作已更改:2 切换榴弹枪 → 等待切换完成 → 鼠标左键发射;1 返回主武器。G不再发射。** 切枪期间不能射击,榴弹耗尽后不能再射击;主武器型号、弹匣和未完成的换弹进度保留,持榴弹枪时暂停主武器换弹,切回后继续。电脑同样先切枪再射击,射后择机切回。 `tests/custom_rules.gd` 验证设置字段绑定、参数隔离、输入关系验证、当前回合配置快照、预设往返、电脑随机配枪、强制切枪、重甲、权重、酸液命中/遮挡与实际跃袭。页面截图位于 `artifacts/settings-general.png`、`settings-weapons.png`、`settings-zombies.png`;榴弹枪及五类僵尸截图为 `artifacts/launcher-zombie-types.png`。 ## 独立长距离地图、爆炸与枪械外观(2026-09-09 更新) 大灾变现使用全新 `escape_arena.gd` 地图:36米宽、720米长的单向撤离道路,九站分别经过海岸公路、服务隧道、货运场、炼油厂、高架路、排水工程、电站、风暴桥和撤离终点。生化感染仍使用旧城区地图。 - 每局随机初始通行侧;进入各段后先显示3秒货物坠落预警和地面危险标记,再播放坠落,改变道路可通行侧。附近有角色时延迟触发,变化后重新生成导航并清除电脑旧路线。 - **Shift** 奔跑,人类大灾变奔跑速度6.5米/秒,视野平滑扩大;电脑能按相同速度跟随。路灯、隧道结构、桥梁和路面标记形成远近运动感,HUD显示已跑距离,小地图随玩家滚动。尸群在队伍约18~45米处出现,不会留在几百米外的起点。 - 榴弹增加火球、扩散冲击环、火星、上升烟尘、动态闪光、合成爆炸声和近距离镜头震动;击退以**爆心**为方向原点,随距离从18降至7米/秒,并有短暂腾空。保留墙体遮挡、友军免伤及母体护盾规则。 - 六种枪械均换为独立512×512贴图和不同模型轮廓,包括步枪导轨、连喷弹鼓、M249弹链盒、加特林旋转枪管、波波沙散热孔和汤姆逊木质握把/枪托。新增袖子、手套,缩小第一人称枪身对视野的遮挡。 - 贴图由内置 imagegen 生成;资源文件和完整提示词见 `assets/textures/README.md`。第一、第三人称使用同一套武器模型与贴图。 `tests/long_escape.gd` 验证独立720米地图、九次道路变化及更新后的实体避障路线、远端就近刷怪、爆心击退/腾空、重复引爆保护和六种独立贴图。截图:`artifacts/weapon-0.png` 至 `weapon-5.png`、`escape-tunnel.png`、`escape-bridge.png`、`grenade-blast.png`。 ## 生化爆破 在 F2「游戏模式」中选择「生化爆破」并开始下一局。爆破点依次位于旧城区的**仓库 A、装卸平台 B、北侧露台 C**,均有现成的防守位置。人类在当前橙色标记范围内按住 **F** 3 秒安放炸弹;电脑人类会主动前往,僵尸逼近时则边后撤边射击,安全后返回目标。每枚炸弹安放后 35 秒爆炸,随后开放下一点并重置安放时限;三个点位全部爆破后人类获胜。僵尸进入爆破点按住 **F** 4 秒可拆除炸弹,电脑僵尸也会主动拆除。僵尸在安放前感染全部人类、拖到任一安放阶段超时,或成功拆除炸弹时获胜。安放后即使全部人类被感染,当前炸弹仍会继续倒计时。安放、拆除与引爆时间可在 F2「生化爆破」页面调整。 ## 大灾变与新增武器(基础规则) 按 **F2** 选择「大灾变(1玩家+3电脑)」及主武器,然后点击「开始下一局」。原生化感染模式仍可选择;当前没有网络联机,四人小队为一名本地玩家与三名电脑队友。 - 大灾变:四人各 200 血,沿独立长地图的九个检查点撤离。绿色地图点和场景标记指引当前目标;所有存活队员进入 5 米范围并停留 3 秒后推进。每站为存活队员回复 50 血并增加 35 秒;初始时间至少 300 秒。最后一站撤离成功,全队死亡或超时失败。 - 电脑队友边移动边掩护,落后玩家超过 9 米时回接玩家。尸群约每 10~5 秒生成一次,随检查点增加数量和生命,最多同时 28 名僵尸。僵尸死亡永久移除;人类遭近战每次扣 25 血,死亡不会变异或复活。 - F2 可选 AR-15、AA-12 连喷、M249、PPSh-41 波波沙、汤姆逊 M1928,并逐把配置参数;电脑从这五把普通主武器中独立随机。加特林不在开局武器池内。 - 默认击杀僵尸有22%概率掉落黄色榴弹补给,靠近自动拾取,每份4发,地图同时最多12份;这些数值均可配置。按 **2** 切榴弹枪、左键发射,默认射击间隔1秒;按 **1** 切回主武器。电脑也能拾取并切枪使用。 - 榴弹有抛物线弹道,碰撞或 3 秒引信到期爆炸,半径 6 米,伤害随半径从 320 降至 60,墙壁遮挡爆炸且队友免伤。 - 电脑人类与僵尸均会检测前方低障碍、头顶空间和落脚地面后自主跳跃;高墙继续依靠导航绕行。这是局部越障,尚非任意高度的跳跃寻路。 | 枪械 | 弹匣 | 射击间隔 | 换弹 | 满伤距离/衰减终点 | 最低伤害比例 | 近距离击退速度 | 持枪移速倍率 | | --- | ---: | ---: | ---: | --- | ---: | ---: | ---: | | AR-15 | 30 | 0.10秒 | 2.2秒 | 18/60米 | 55% | 5米/秒 | 0.95 | | AA-12 | 20 | 0.25秒 | 3秒 | 6/28米 | 12% | 11米/秒 | 0.90 | | M249 | 100 | 0.085秒 | 4.8秒 | 28/70米 | 72% | 6.5米/秒 | 0.78 | | 加特林 | 200 | 0.045秒 | 6秒 | 22/65米 | 65% | 4米/秒 | 0.68 | | 波波沙 | 71 | 0.067秒 | 2.8秒 | 10/45米 | 28% | 3米/秒 | 1.08 | | 汤姆逊 | 50 | 0.09秒 | 2.6秒 | 12/45米 | 35% | 4.5米/秒 | 1.00 | AA-12 每发射出 8 颗弹丸,每颗基础伤害为普通步枪的 48%;M249、加特林、波波沙、汤姆逊单发伤害分别为步枪的 112%、72%、72%、92%。击退随距离衰减,同次/连续命中刷新而不无限叠加;母体未开盾按母体受击退倍率计算,开盾期间有独立的击退与减速设置,默认免疫。 新增 `tests/catastrophe.gd` 检查开局、九站导航、持续刷怪、霰弹多弹丸、枪械击退、拾取、榴弹独立有限弹药、爆炸隔墙、永久死亡、电脑实际越障和逐站撤离;`tests/catastrophe_simulation.gd` 运行 1800 物理帧检查尸群生成和数量上限。画面位于 `artifacts/catastrophe.png` 与 `artifacts/catastrophe-settings.png`。数值是原型初始平衡,仍需实际试玩调整。 Godot 4.5.1 / GDScript / Windows 优先 / Compatibility 渲染。 ## 许可证 本项目的原创源代码以 [GNU Affero General Public License v3.0](LICENSE)(AGPL-3.0)发布。发布修改后的程序,或将修改版作为网络服务向用户提供时,须遵守 AGPL-3.0 的对应源码提供义务。第三方音频、模型和其他素材仍按 [`THIRD_PARTY_NOTICES.md`](THIRD_PARTY_NOTICES.md) 中列出的各自许可证授权。 ## 运行 使用 Godot 4.5.1 或兼容的 Godot 4 标准版导入 `project.godot`,按 F6/F5 运行主场景。编辑器启动时会自动检查项目根目录的 `recommanded.cfg`;打包版检查 `BioFPS.exe` 同目录的文件。文件存在且可读时加载其中的设置;不存在或读取失败时使用内置默认设置。 如果项目内已有 `.tools/Godot_v4.5.1-stable_win64.exe`,也可以双击 `启动游戏.cmd`。启动器会在首次运行或检测到枪声音频导入缓存缺失时,先以项目内 Godot 生成缓存,再启动游戏;正常情况下不会重复导入。开发脚本、可再生资源与本机工具的存放规则见 [`tools/README.md`](tools/README.md):大型下载包不应放在项目根目录或提交到普通 Git。 - WASD 移动,鼠标转向,空格跳跃;人类按 Shift 奔跑。奔跑时不能使用主武器、加特林或榴弹枪,但可以使用手枪和近战武器。 - 鼠标左键:人类射击,感染者近战感染。 - Esc 释放鼠标,点击窗口重新捕获,R 换弹,F5 按当前参数重开;成为母体后按 E 使用护盾;F2 打开下一局设置,F3 显示/隐藏机器人当前意图。 - 蓝色为人类,红色为普通感染者;母体为金色,头顶有皇冠与 MOTHER 标记。 - 默认 16 人:玩家和 15 名人类机器人,全员自由活动;倒计时 10 秒后,从全体角色中等概率随机选出一名母体,原地转换,随后开始 120 秒回合。 - F2 面板可把下一局玩家身份设为随机、母体或英雄,并调整人数、倒计时、回合时长、母体生命/移速、护盾、弹匣、射速、换弹、僵尸生命/移速/复活和英雄属性。点击“开始下一局”后应用;“恢复默认”可还原平衡基准。 - 准备期间机器人寻找可见同伴并保持距离,玩家可以主动贴近别人或留出退路,所有攻击和伤害禁用,不判定胜负;导航初始化完成后开始倒计时。 - 默认母体 1800 血、移速 6.8 米/秒;普通感染者 250 血、移速 5.6 米/秒;人类移速 4.5 米/秒。射击间隔 0.10 秒(600 发/分钟),机器人三连发后停顿 0.45~0.7 秒;这些核心数值可在 F2 面板覆盖。 - 母体专属护盾按本局配置持续与冷却,提供减伤,开启瞬间清除已有击退与减速。开盾期间的受击退、减速可在F2独立设置,默认免疫;仍可正常移动及近战感染,不是无敌。 - 选中母体时自动启动一次护盾;之后玩家按技能键(默认 F)开盾,机器人母体在受击后有技能可用时自动开盾。护盾表现为蓝色光罩;玩家母体在 HUD 查看持续时间、冷却和就绪提示。 - 母体未开盾时中弹仍保留 65% 移速,击退速度仅 1.5 米/秒;连续 7 秒未受伤后每秒回复 25 血,上限为变身时的最大生命。母体近战感染范围为 2.4 米,使用前方扇形与视线检测,不能隔墙感染。 - 所有人类被感染则感染者胜;感染者全部永久出局(没有等待复活者)或倒计时结束则人类胜。 - 玩家开局被选为普通初始感染者、被抓感染或作为僵尸复活时,都会显示 10 秒僵尸类型选择;各类型拥有不同的第一人称手爪与状态面板。枪械、爆头和榴弹击杀后等待复活(默认 6 秒);只有人类近战终结才永久出局。 ## 框架边界 `scripts/game.gd`:管理角色与回合、HUD、三维导航查询、枪声遮挡检测。 `scripts/arena.gd`:生成 96 × 80 米的“夜街隔离区”,面积为旧版 56 × 48 米的约 2.86 倍,烘焙 NavigationRegion3D 导航网格。 中央机械房遮断长视线,西侧仓库有南北和中央入口,东侧带顶通道有错位挡板,北侧 3 米高装卸平台有两条坡道。 货箱、高低掩体和橙蓝标识提供分区识别。所有出生区及巡逻点连通,机器人可沿坡道上下高台。 外围新增原创旧城店铺立面、酒吧招牌、东西环路、南侧广场与遮雨廊道、车辆掩体、北侧双坡道露台。 八栋店铺底层均可进入和穿行,设前后门、侧门和室内掩体;较大的六栋楼设双坡道夹层,夹层下面也可以通行。不是《逆战》“魔都惊魂”原版地图或素材导入。 `scripts/gun_audio.gd`:两段近距离 AR-15 实录的四个尾音变体随机播放,避免连续重复同一样本。 音效来源与授权见 `THIRD_PARTY_NOTICES.md`;素材随项目提供,无需联网播放。 `scripts/actor.gd`:玩家和机器人共用的角色身体、移动、碰撞、射击、生命与阵营转换。 控制来源只提交移动、瞄准、攻击意图,实际规则由角色执行。 `scripts/bot_brain.gd`:AI 感知与状态决策,不直接修改对手生命。 每 0.2 秒决策一次,物理帧执行路径跟随;人类反应延迟 0.35 秒,感染者 0.2 秒。 战斗感知范围 30 米,远处有视角限制,5 米内可全方向感知;射线检测遮挡。 感染者丢失自身视野后保留最后位置 3 秒。任一僵尸确认人类后,会把当时位置共享给全体僵尸 2.5 秒:僵尸小地图显示红点,AI 也会前往共享位置;目标离开视野后只保留最后位置,不隔墙实时跟踪。 开局博弈:每个机器人有不同的冒险倾向,寻找 22 米内能看见的同伴,早期保持约 1.8~3.8 米距离。最后 3 秒谨慎型会拉开至约 5.5 米,冒险型仍保持约 2 米;周围过密会扩大间距。没有机器人预知母体抽签结果,玩家也在可跟随的候选中。 人类战术:母体出现后,15 名人类分为三个 5 人小队(含玩家的分配名额),分别向仓库、酒吧夹层、北露台集合。每人有独立站位,接敌时边移动边掩护,敌人逼近则撤退;小队少于 3 人且遭遇近敌时,尝试加入有空位的其他存活小队。HUD 显示玩家的小队集合点,但不强制玩家前往。 感染者战术:追击可见人类、利用护盾突破;遭遇至少三名可见射手且没有护盾时,尝试改走据点其他入口。丢失视野只沿短时记忆搜索,不读取隐蔽敌人的实时位置。 ## 原型范围与后续 - 已使用三维导航网格处理建筑、坡道和高台,有简单角色间距分离、停滞重规划和低障碍自主跳跃;尚未实现完整动态避让和任意高度跳跃寻路。 - 守点使用地图预设的战术站位,队伍根据距离与容量分配;不是学习型 AI,尚未实现任意建筑的自动掩体评价或玩家指挥系统。 - 电脑使用行为树驱动:准备阶段与实战策略由优先选择器分支;实战策略会逐步拆分为战斗、补给、协防与巡逻等节点。任意未来上层策略模型只能提出受约束的战术建议;安全规则、行为执行、寻路和战斗逻辑始终由游戏侧负责。 - 对局记录默认开启:关键事件与 5 秒全员快照写入 `matches.jsonl`;电脑的结构化观察、可用战术、实际决策和回合结局写入 `bot_decisions.jsonl`。F2“对局记录”可关闭记录、调整相同战术的采样间隔,并修改两个文件共用的保存目录;目录支持 Windows 绝对路径、`user://` 路径和位于用户数据目录下的相对路径,不可用时自动退回 `user://`。两份文件均为中立的分析日志,不绑定特定训练格式或模型。 - 玩家被击杀后自动进入第一人称观战;鼠标左/右键或 Q/E(也可用左右方向键)切换存活参赛者。感染者复活时自动回到本人镜头;永久淘汰后可观战到回合结束。 - 射击含简单随机散布,以及 CC0 实录枪声。四个样本已裁剪、统一峰值、淡化尾音,带轻微音高/音量变化;玩家本地播放,机器人有方向、距离和墙体遮挡衰减,总线设有限幅。为兼容 Win10 上部分声卡驱动会进一步压低短促枪声的问题,自己的枪声默认由 -5 dB 提升到 +2 dB,其他角色由 -9 dB 提升到 -5 dB;可在 F2「音效音量」中分别调整,不影响近战、命中和播报。 - 普通感染者中弹会沿远离射手的水平方向击退,初始击退速度 5 米/秒,逐渐衰减并受墙体碰撞约束。 - 普通感染者命中后减速 0.35 秒,移速降至 45%;连续命中刷新效果,不累加力度。玩家被感染后使用相同规则,HUD 显示 SLOWED。 - 30 发弹匣,R 换弹需 2.2 秒,备弹无限;空弹匣再次射击自动换弹,换弹中不能开枪。具有上扬后坐力、缓慢回正、横向抖动与移动散布。人类第一人称可见双手、步枪和开火后坐动作,其他人也可见持枪动作;僵尸第一人称显示双爪并在近战时挥爪。 - 北露台使用首段爬升→横向转折平台→错位二段爬升;六栋夹层使用两段坡道与中间挡板;仓库入口新增错位内挡墙。中央装卸平台仍保留简单坡道作为普通过渡地形。 - 当前是纯单机,未实现网络同步或宣称可直接联机。 导航参考:https://docs.godotengine.org/en/stable/tutorials/navigation/navigation_using_navigationagents.html ## 验证记录 已使用 Godot 4.5.1 执行无窗口启动与 `tests/smoke.gd`:角色生成、墙体遮挡、绕障碍路径、友军免伤、感染转换、感染者死亡、回合超时及 900 物理帧 AI 模拟。 测试还检查感染者确实自主移动,以及全部人类感染后结束回合。已检查实际 OpenGL 渲染的俯视与第一人称截图,位于 `artifacts/`;操作手感和扬声器听感仍需试玩。 `tests/opening.gd` 检查 10 秒准备期间玩家与机器人自由活动、全员人类、正式回合时间不减少;通过固定随机种子覆盖 16 位参与者被选中的情况,检查原地转换、恰好一名母体、只选择一次及选择当帧不会误判胜负。 `tests/mother_shield.gd` 检查护盾减伤、免疫击退减速、持续与冷却、AI 受击开盾、玩家技能键开盾和普通感染者不能使用母体技能。输入测试需使用桌面显示驱动,不能使用无输入的 headless 驱动。 F2「僵尸 → 母体」新增开盾压制控制:`mother_shield_push` 是相对原始命中力度的独立击退倍率(0免疫、0.6承受60%,不再乘未开盾的 `mother_push`),同时影响爆炸抬升;`mother_shield_hit_slow` 是命中后的减速比例(0免疫、0.35降低35%移速);`mother_shield_hit_slow_duration` 是减速持续秒数,0关闭减速。子弹与爆炸共用这三项,默认依次为0、0、0.35,保留原有免压制行为。开盾瞬间仍清除旧压制,命中刷新效果而不无限叠加;未开盾母体与其他僵尸硬化、疾跑、幽影规则保留。设置只影响下一局。`tests/mother_shield_control.gd` 检查真实命中位移、榴弹爆炸/抬升、独立开关、持续时间、旧规则隔离和F2草稿。 `tests/combat_feedback.gd` 检查枪声播放、准备和射速限制、击退方向及位移、墙体阻挡、连续命中上限、减速恢复和玩家感染后的受击效果。无窗口测试不代替实际扬声器试听。 `tests/arena_navigation.gd` 检查出生区和巡逻点互通、机器人身体实际爬上双坡道及走下高台、仓库与通道绕行、枪声墙体遮挡。 `tests/city_crowd.gd` 检查 16 个出生点与建筑不重叠、新增露台的两条坡道可实际攀行,以及完整 16 人回合能够结束、角色不越界。无窗口模拟不代表实际渲染帧率。 `tests/tactical_behavior.gd` 检查临近变异时冒险型和谨慎型选择相反走位、三个 5 人小队和独立站位、机器人实际集合、减员后转移小队、所有室内点连通及自定义母体生命。隔离战斗干扰的集合测试中,14 名机器人均到达站位。 `tests/arena_navigation.gd` 还检查六处室内夹层的实际攀行。导航高度采样细化至 0.05 米、最大可跨落差 0.15 米,避免路线从机器人无法攀越的坡道侧边切入。 `tests/balance_rounds.gd` 执行五局自动模拟;玩家不操作,样本很小,不代表真实玩家胜率或平衡已完成。 ## 本轮新增战斗规则 - 开局十秒结束时,从母体以外的人类中等概率随机选一名英雄(玩家也有机会)。英雄绿色、头顶 HERO 标记,225 血;感染者每击造成 75 伤害,第三次感染。英雄枪伤 35,普通人类 25,爆头三倍;英雄后坐力较低。 - 所有角色增加可见球形头部和对应物理碰撞。爆头提高伤害,但仍允许僵尸复活;母体同样只有被近战击杀才永久出局,复活不免费开盾。 - 人类每累计实际造成 100 点伤害默认加 10 分,僵尸默认加 20 分(扣除护盾减伤、不计溢出伤害);准星命中叉、伤害数字、加分与击杀/复活提示。 - 右上角北朝上的小地图显示墙体投影、守点、同阵营存活角色与玩家朝向。白点自己,蓝点队友,绿点英雄;僵尸阵营额外共享视野中的人类红点及短时最后位置。 - `tests/combat_upgrade.gd` 覆盖随机英雄、护盾数值、伤害积分、弹匣换弹、射速、实际球形头部射线、枪械及爆头复活、近战永久出局和英雄感染。 ### 感染模式:近战终结与成长 - F3 按人类阶段、僵尸阶段分开显示按目标伤害、命中和积分;默认每累计 100 点有效伤害分别获得 10 分和 20 分,零头不跨阵营累积。对局日志中的伤害事件也记录攻击者阵营。 - 五类补给都有实体模型与悬浮像素图标,雷达采用相同颜色和形状:弹药为青色方块、榴弹为橙色三角、加特林为金色六边形、医疗为绿色十字、增益为粉色菱形。人物继续使用圆点,与补给明确区分;浮动标记会被墙体遮挡。 - 北露台坡脚卡住修复:破点逻辑记录已到达的入口,随后持续寻路至守点目标,不再仅依据“距守点中心 12 米”决定是否停留在入口。北露台入口距离中心约 17 米,旧判定会使僵尸停在坡脚;人类不使用这段破点逻辑。 - 回归覆盖:`tests/terrace_probe.gd` 验证五种僵尸从左右入口主动破点;`tests/all_ramps.gd` 对六栋坡道房屋、中央平台、北露台的 16 条上坡路线分别测试人类和僵尸,共 32 组物理寻路通行。 - 常规武器按住鼠标右键举枪瞄准,左键开火:枪身移至眼前,实体照门缺口与前准星对齐射击轴,完成瞄准后隐藏悬浮准星;松开右键恢复腰射。加特林固定腰射,使用六发齐射与圆形准星。连续射击时枪口小幅抖动、视角持续上扬且不自动回正,可向下移动鼠标压枪;手臂不再随每发子弹大幅甩动遮挡视野。 - 腰射增加散布,移动时进一步降低精度;瞄准降低散布和后坐、移动速度降至 65%,霰弹仍保留弹丸扩散。换弹、切枪、近战、感染和死亡退出瞄准。F2“瞄准与腰射”调整视野与腰射散布。 - 不同武器具有独立持枪移速倍率:波波沙与汤姆逊较轻快,AR-15 与 AA-12 居中,M249 与加特林更沉重;F2 的逐把枪械设置可调整。玩家实际受伤时屏幕边缘显示短暂血块并淡出。 - 母体候选优先级更新为:有坡道的房屋内 > 其他房屋内 > 室外候选;按实际房屋边界判断,坡道房屋的一楼和阁楼都算在内。 - 坡面使用恒定移动速度和落地速度复位,可行走坡面不再触发障碍跳跃;路径点容差随移速调整。`tests/ramp_pursuit.gd` 验证五种僵尸都能从街道经两段室内坡道到达阁楼守点。 - 最新开局规则:只要有角色在房屋内,就从室内角色中必选一名母体,优先于强制身份设置;无人躲房时才使用室外候选。再选两名普通初始僵尸,每次最大化其与已选感染者的最短距离,尽量分散;人数不足时至少保留一名人类。 - 母体存活时,所有阵营雷达均持续显示金色母体位置,视野内另有穿墙距离标记。死亡时停止实时标记,复活后恢复。 - 僵尸优先进攻有人占据的防守点与房屋,防守点分配不同入口;已有近身攻击机会时先攻击,点位无人后重新选择目标。 - 所有枪械使用有限备用弹药:开局一个已装弹匣和 3 个备用弹匣,换弹实际转移库存,余弹不足时部分装填;切换武器不生成子弹。HUD 显示 RESERVE。F2“弹药与补给”可调整携弹量、弹药箱补充量和掉落间隔。 - 地图按推荐配置的间隔尝试生成补给,普通地图掉落默认为 60% 弹药、20% 医疗和 20% 增益;弹药箱按配置补充主武器及手枪备用弹药。易守区域降低地图补给和击杀道具掉落机会:仓库为开放区的 60%,北露台为 32%,阁楼为 20%。电脑缺弹会离开防守点寻找弹药,完全无弹时改用近战。 - 准备阶段大多数电脑直接寻找防守点;母体按抽选时的实际位置加权,仓库权重 2.5、北露台 3.55、阁楼 4,开放区为 1。设置中强制玩家母体/英雄仍优先执行。 - 对局追加记录在 Godot 用户数据目录的 `matches.jsonl`,每局有独立 round 标识。记录配置、母体选择、感染、伤害、僵尸死亡、换弹、补给、每 5 秒角色状态及结局;这是分析日志,不是可播放录像。Windows 默认目录为 `%APPDATA%/Godot/app_userdata/Bio FPS Prototype/`;项目启动器若重定向 APPDATA,则位于对应目录下。 - F3 开关本局伤害技术面板:按目标编号累计有效命中次数、实际伤害及总伤害;扣除护甲/护盾、不计溢出。僵尸近战和酸液命中也统计,僵尸玩家的命中数字显示在准星旁。 - 人类与僵尸近战统一使用攻击间隔驱动完整挥击,在动作 50% 时检查距离、视线和目标并命中一次,空挥不补伤害。 - 终极英雄不再叠乘普通人类减员/击杀攻击增益。母体默认攻击距离 3.2 米,对终极战刃减伤 45%(F2 可调);默认无护盾单刀实际伤害为 99,母体护盾进一步减伤。 - 电脑终极英雄主动搜索可见僵尸、追击最后目击位置,无目标时巡逻,不再守住人类集合点。攻击仍需距离和视线判定。 - 母体优先压迫英雄:对普通英雄默认 1.5 倍攻击(满血两次感染);对终极英雄每击造成 180 + 最大生命的 8% 伤害,并施加 0.8 秒减速与红色冲击光环。1200 血终极英雄在没有回血时可承受四击,第五击死亡。参数可在 F2“感染 · 成长与近战”调整,大灾变不应用该特攻。 - 成为普通感染者或复活时显示 10 秒选型提示,主键盘数字 1–5 选择类型;不暂停、不解锁鼠标,超时保持当前类型。母体不能改选,普通初始感染者可以改选。 - 重甲按 E 对可见目标发动 3 秒硬化,默认冷却 9 秒,期间减伤且免疫击退,伴随扩散光环、护罩与第一人称蓝色边框;跃袭和喷吐也有类型配色光环。 - 僵尸倾向避开高击杀和终极英雄目标,优先感染其他可见人类,但不放弃近身攻击机会。 - 六种主武器分别使用不同换弹倾斜与弹匣移动,配合左手动作;连喷后坐更大,战术刀扩大挥砍,终极英雄改为长双刃横斩。 - 所有界面按 1280×720 设计基准等比例缩放,并保持宽高比;僵尸选择和伤害统计改用锚点定位,窗口缩放后不再随固定像素坐标漂移。 - 枪声继续使用随项目提供的四个实录变体;新增普通抓击、战术刀、终极重击挥动声,以及子弹、爪击、重击和酸液命中声。玩家使用本地音频,电脑角色使用带距离衰减的三维音频。 - 酸液的致命一击在生化感染模式把普通人类和英雄转成感染者;终极英雄与大灾变队员仍按死亡处理。 - 按 3 切换人类近战武器,再按鼠标左键攻击;1 切回主武器,2 切换补给榴弹枪,4 切换已拾取的加特林。榴弹与加特林都有独立弹药,不覆盖开局主武器。 - 僵尸当前生命达到可被近战一击终结的范围时身体闪红;判定计入攻击成长、护甲与护盾。人类玩家以自己的近战伤害为准,感染者视角则显示存活人类中最高的近战威胁。 - 每减少一名人类,全队攻击默认增加 5%,最多 60%;每次击杀僵尸个人攻击增加 8%,最多 80%,并增加 15 点生命上限、回复 15 点生命。暂时击杀也计入成长,重复攻击尸体不计奖励。 - 最后三名人类可按 V 变身终极英雄;基础生命 1200,保留击杀生命成长,仅可使用终极战刃,与僵尸互相扣血而不会被感染。左键普通斩击,右键重击(默认 1.75 倍伤害、1.8 倍冷却、1.2 倍距离),每人只能变身一次。电脑只进行一次概率判断:近处有僵尸时倾向变身,没有近身威胁时大概率保留普通人类身份。 - F2 的“感染 · 成长与近战”页可独立调整刀伤、攻速、距离、减员增伤、击杀成长以及终极英雄属性。 ### 最后三人尸潮、加特林来源与人类近战升级 - 感染模式仅在最后三名或更少人类存活时开启默认 5 秒的终极英雄选择窗口;窗口超时仍有人未实际变身,才触发惩罚尸潮并给全部存活人类发放加特林。满级不等于变身,全员及时变身则没有持续尸潮;人数超过三人、全队满级、全队变身或仅到达某个剩余时间都不会触发。实际感染者上限仍受 `8 + 存活人类数 × 4` 动态限制,母体被终结后的有限复仇潮独立保留。 - 尸潮电脑只有正常生命的 75%,被任何方式击杀都不复活;每连续刷新 3 波后休整 6 秒。出生候选会先向下投射,并且只接受接近零高度的街道路面,排除楼顶、露台和场景道具顶部;然后优先选择距离所有人类至少 12 米且不在视线内的位置。近战永久终结母体后停止继续刷新并取消尸潮单位的待复活;尸潮电脑不加入 Tab 计分板玩家名单。 - 普通人类电脑看到闪红僵尸时不再必定拔刀:默认近距离终结普通僵尸概率降为 15%,远距离追刀仅 2%,且附近至少要有一名队友。母体采用独立保守规则,平时保持约 13 米射击距离;只有未开盾、距离不超过 2.8 米并且附近另有两名队友时,才有 1% 概率尝试终结。每次选择保持 4 秒而不是持续重抽;终极英雄仍会主动近战。 - 约八成人类电脑在只看见 1~3 只远处僵尸、生命和弹药充足时,会主动向敌人方向的防守点边缘与直接交火区域靠拢;少数谨慎性格继续在后方掩护。前移位置和完整路线必须留在同层守点范围内,只步行,不跨平台跳跃或下楼追敌;到达后守住火力线,使用距离缓冲避免反复往返。敌人增多、接近安全距离或自身受伤时恢复正常协防、抱团和后撤射击;普通僵尸默认 7 米、母体默认 13 米的安全距离仍保留。`tests/human_forward_edge.gd` 验证多数性格、远敌数量门槛、屋顶真实前移、母体距离缓冲和跨平台捷径拒绝。 - 人类电脑会按局势周期性决定是否支援玩家:尸潮中默认最多 5 人、普通战况最多 3 人;玩家附近有感染者或正在防守点时也可能靠拢。变身终极英雄后仍保留这套判断;处于协防状态的终极英雄只拦截玩家周围默认 7 米内的目标,不会被远处僵尸拉进尸群。支援者会分散到玩家周围协防约 8 秒再重新评估,因此其余电脑仍可自主集合、巡逻或追敌。谨慎型电脑更愿意抱团,激进型电脑更倾向游走。 - 普通击杀补给默认 20% 为医疗、20% 为增益,余下 60% 按配置的弹药/榴弹比例抽取。尸潮前另有每次有效击杀 6% 的加特林掉落机会,仍受场上补给数量上限限制。 - 加特林不再按时间或伤害抽签直接奖励;只来自每八连杀奖励、实际补给拾取或最后三人超时尸潮发放。按 4 切换,耗尽后可按 1 回到原主武器;电脑获得后也会使用。 - 人类近战按本生命内僵尸击杀数升级:0~1 杀为匕首,2~3 杀为马来剑,4 杀起为尼泊尔;默认伤害倍率依次为 1.0、1.25、1.55,模型与 HUD 名称同步变化。 - F2 可调整尸潮波次与数量参数;“感染 · 成长与近战”可调整电脑近/远距离终结概率、判断间隔及母体专属概率和最大距离;“人类电脑协作”页可调整普通/母体安全射击距离、抱团队友范围、终结所需队友数和协防行为。“弹药与补给”可调整击杀补给与加特林弹药量。`tests/bot_finisher_caution.gd` 与 `tests/bot_human_spacing.gd` 覆盖保守终结、母体距离控制、抱团识别及后撤射击。 - 大灾变保持僵尸死亡不复活;上述感染模式复活与成长规则不改变大灾变。 - `tests/settings_vision_animation.gd` 覆盖自由参数、强制玩家母体/英雄、共享僵尸视野、情报过期、持枪后坐和挥爪动画。实际渲染检查位于 `artifacts/next-round-settings.png`、`human-gun-hands.png` 和 `zombie-claw-radar.png`。 本轮验证:新战斗规则、基础回合、射击反馈、16 人开局抽签、护盾键盘输入、全部巡逻/出生点连通、六栋楼夹层实际攀行均通过;隔离战斗后的集合测试 14 名机器人到位。加入共享视野后的五局自动模拟样本为人类 3 胜、感染者 2 胜(约 70~130 秒)。`artifacts/combat-upgrade.png` 为第一人称 HUD 与夹层截图;R 输入换弹和相机后坐力已使用桌面驱动验证。 `tests/responsive_audio_infection.gd` 检查等比例缩放配置、居中锚点、枪声与新增近战/命中 PCM 数据、普通感染及复活选型、酸液感染普通人类和击杀终极英雄。无窗口音频测试能验证资源与播放链路,但不能代替具体扬声器的主观听感。 - 人类拾取补给获得临时随机增益,共八种:增伤 50%、双倍攻速、枪械不耗弹、移速 +20%、新换弹耗时 -40%、每秒再生 8 生命、减伤 20% 的应急护甲、枪械散布 -35%。应急护甲还可替普通人类抵挡一次抓击感染,随后消耗。不同短期增益可以共存,优先抽取尚未拥有的类型,同类只刷新持续时间;默认持续 10 秒,F2 可调。增益晶体一次授予一种;普通弹药与医疗补给不再附赠随机增益。图标显示各自倒计时;感染、死亡、回合结束清除,变终极英雄保留,终极英雄的随机池排除无用的不耗弹增益。榴弹仍正常耗弹。 ## 连杀徽记、中文播报与围攻终极英雄 - 玩家每次有效击杀显示八片柠檬组成的环形徽记,每次击杀按顺时针逐片点亮,八杀后全亮;保留弹出、扩散圆环和渐隐。任意两次击杀必须间隔不超过 5 秒,超时连杀清零;死亡、感染、回合结束或重开同样清零,变终极英雄保留。尸体重复受击不计数,电脑击杀不触发玩家播报。感染与大灾变均支持徽记;大灾变不额外获得感染模式成长奖励。 - 爆头倍率可在 F2 常规设置中调整,默认 3 倍并绕过身体装甲。爆头击杀会显示醒目的中央提示;右上区域的击杀信息栏保留最近五条记录,标注击杀者、目标、爆头以及玩家当前连杀次数和剩余续杀时间。 - 连杀从第二杀开始按当前档位追加分数(默认每档 5 分),并在 5 秒续杀窗口内提供逐档增伤与移速加成;默认最高为伤害 +25%、移速 +10%,超时即同时失去连杀和增益。F2「计分与连杀奖励」可调整各项数值。 - 人类默认每造成 100 点有效伤害获得 10 分;僵尸提高为每 100 点 20 分,并在成功感染一名人类时额外获得 40 分。伤害分比例和感染奖励均可在 F2 调整。 - 2~8 杀依次播报:双杀、三连杀、高手在此、杀敌如麻、势不可挡、天下无敌、超越神啦。8 杀以上保持最高称号。语音由单个播放器串行播放,快速多杀仅保留最新最高待播档位,避免叠音与队列积压。 - 中文 WAV 使用开源 MeloTTS 中文模型离线合成,已随项目提供,游戏运行无需下载模型、联网或安装 Python。来源、模型校验值和音频校验值见 assets/audio/announcer/provenance.json,MIT 授权保存在同目录;复现工具为 tools/generate_announcer.py。当前为合成女声,尚未经人工扬声器听感验收。 - 非母体僵尸对终极英雄:原攻击伤害 × 2 + 目标最大生命 × 2%,仅感染模式应用。默认普通僵尸打 1200 血终极英雄为 74 点,母体仍为 276 点。不同类型保留自身基础攻击差异;酸液实弹命中也应用该规则,并保留原有减速。 - 围攻只记录过去 2.5 秒内实际命中的不同存活非母体僵尸;每多一名伤害增加 25%,最多按三名计算(+50%)。同一攻击者不能自行叠层,失效或死亡的攻击者移除。对 1200 血终极英雄,普通僵尸的第二、第三名攻击者分别造成 92.5、111 点伤害。HUD 显示围攻人数,拉开距离可使压力过期;不额外增加硬控。 - F2 新增“僵尸 · 围攻终极英雄”页,调整伤害倍率、比例伤害、命中记忆时长及围攻增伤。普通人类、普通英雄、母体特攻与大灾变伤害维持原规则。本轮未改变 AI 路径行为。 - 验证:tests/kill_streak_pack.gd 覆盖真实击杀回调、尸体/电脑排除、七档语音加载、待播封顶、死亡/感染清零、不同攻击者、层数上限、过期和模式隔离;hero_pressure、infection_evolution、combat_upgrade、buffs、catastrophe 回归通过。实际渲染截图位于 artifacts/kill-streak-2.png 和 artifacts/kill-streak-8.png。机制测试不代表多人实战胜率已平衡。 - 按住 Tab 查看全部参赛玩家计分板,松开关闭;按总分排序,显示人类分、感染者分、当前角色和存活状态,淘汰玩家仍保留。总分为两阵营得分之和。 - 母体不再优先从房间或坡道房间中选择;随机身份时所有存活未感染玩家均可原地变身,指定母体/英雄设置仍有效。 ## 僵尸等级、感染增援与重击 - 生化感染中,僵尸成功感染人类或自身被击杀都会获得经验。按当前推荐配置,感染获得 200、阵亡获得 100 经验,升级需求为基础 100 × 当前等级。 - 不同类型采用独立成长路线,2、4、6 级改变技能形态,一级参数保持当前配置。生命成长以 F2 的每级生命值为基数,分别乘以普通 1.10、疾跑 0.65、重甲 1.60、跃袭 0.85、酸液 1.00、母体 1.40;当前推荐基数为 100。攻速/技能冷却成长按路线调整,继续遵守配置的最低冷却。生命、伤害、移速、装甲和冷却的等级成长最多计入九次升级(10级),技能形态最高三阶。 - 死亡复活保留等级与经验,狂暴、疾冲和追猎余势随死亡清除。更换类型使用当前等级的新路线,不能重置已消耗的技能冷却。下局清零。大灾变保持一级技能形态,不应用这些等级成长。 | 类型 / 路线 | 2级 | 4级 | 6级 | | --- | --- | --- | --- | | 普通 / 狂暴撕裂 | E 狂暴,提高伤害、攻速和移速 | 狂暴抓击扩大扇形,最多击中三人 | 狂暴每次有效命中回复15生命 | | 疾跑 / 突进追猎 | E 沿地面向前疾冲 | 延长疾冲,期间免疫减速和击退 | 完成疾冲后加速15%,持续2秒 | | 重甲 / 重甲护卫 | 延长硬化 | 启动时释放近距离伤害震荡 | 硬化期间为4米内感染者减伤20% | | 跃袭 / 跃袭震荡 | 成功落点产生1.8米震荡 | 范围增至2.8米并强化减速 | 3.6米范围,间隔0.35秒震荡两次 | | 酸液 / 酸液控场 | 双球平行喷吐 | 命中留下3秒酸池,每0.5秒伤害 | 三球喷吐,酸池延长至4秒 | | 母体 / 母体统御 | 延长护盾、增强再生 | 开盾时造成伤害并震退人类 | 开盾期间为5米内感染者减伤30% | - 范围伤害与护卫均检查墙体遮挡;多名护卫取最高减伤,不叠加。跃袭预测圈显示当前震荡范围,飞行中途受阻不触发落地震荡。疾冲检查地面和碰撞,不越过悬崖,不会穿墙;碰撞中断也不会获得追猎加速。酸液单球伤害逐级提升,默认双球每球保留96%成长伤害、三球每球100%;酸池伤害也逐级提升,重叠酸池仍只采用最强脉冲。按实际命中与持续伤害计分。 - 感染者按住 F1 查看六条路线与当前形态。常态只增加路线图标和三阶圆点,技能激活、冷却与护卫生效用图标提示;第一人称手臂随进化改变配色和甲纹。F2 选型卡显示当前等级的生命与移速。 - `tests/zombie_evolution.gd` 覆盖真实群攻、回血、地面疾冲、抗压、护卫减伤、酸池次数与遮挡、双重落地震荡、途中阻挡、复活与换型及成长上限。 - 回合开始后默认每 25 秒在安全复活点加入一名额外电脑僵尸,每局最多 6 名;不会接管玩家。 - 僵尸左键为普通抓击,右键为重击。重击伤害、冷却、距离、动作时长与命中时刻按类型独立设置,对英雄和终极英雄同样生效。参数位于 F2「僵尸」各类型页,母体另设自己的动作参数。 ## 战斗 HUD 与阶段警报 - 左下角使用颜色分级的生命进度条;右下角集中显示当前武器、弹药、备弹,以及 1~5 武器槽的可用和选中状态。 - 左上角的常驻文字、中央文字横幅和重复的僵尸生命面板改为图标提示。人数比例和倒计时常驻顶部;准备、尸潮、母体复仇潮、爆破和撤离等阶段在需要时显示对应图标。技能、护盾、减速、补给增益、可被近战终结、围攻、换弹和复活等状态结束后自动隐藏,提示音保留。 - 按住 F1 查看中文图标释义与操作说明,松开返回战斗。感染者选型使用 1–5 图标卡片,显示各类型生命和移速,超时规则保持不变。 - 玩家每累计造成 1000 点实际伤害弹出一次伤害勋章,显示 1000、2000 等累计档位。统计扣除护盾与护甲,不计溢出伤害;本局感染和复活保留累计,下一局清零。勋章与连杀徽记同时出现时分开显示。 - `tests/status_hud.gd` 与 `tests/horde_gatling_melee.gd` 覆盖生命/弹药面板数据、武器槽状态、阶段引导、警报持续时间及提示音播放链路。 ## 内置推荐数值与复仇潮快速结算 - 内置战斗默认值和 F2 恢复默认均采用项目 `recommanded.cfg` 的数值快照,存于 `scripts/default_gameplay.gd`。包括 360 秒回合、5000 生命母体、300 生命英雄、默认 SR-25 连狙、逐把枪械与逐类僵尸参数。配置未包含的新增参数保留现有默认值。完整保留推荐文件中的录制目录设置;指定目录不可用时回退 `user://`。启动时加载 EXE 旁的外置配置,发布包同步当前根目录文件,F2 恢复默认则还原本次快照。 - 仅在母体被永久终结并触发母体复仇潮后,仍有人类存活、剩余感染者为 0–9 个、时间不超过 50 秒时直接判定人类胜利。等待复活的感染者计入剩余数量;人类全灭仍判感染者胜利,普通感染阶段、大灾变和爆破不采用该规则。 - `tests/icon_hud_defaults_revenge.gd` 核对五组配置、伤害阈值和快速结算的边界。图形检查工具 `tools/capture_icon_hud.gd` 保存常态、伤害勋章、并发徽记、选型、感染状态、复仇潮、F1 说明与胜利画面到 `artifacts/icon-hud-*.png`。 ## 加特林齐射与子弹穿透 - 加特林取消右键瞄准,真人和电脑都保持腰射。圆形准星按实际弹道范围绘制,移动与连续射击扩大散布;每次同时发射六发独立子弹,分布于圆形区域,消耗六发弹药。最后不足六发时只发射剩余数量,临时不耗弹增益仍生效。 - 加特林第一人称使用专用双手姿态:左手提把、右手后握把;深色分层机匣、侧弹链箱、铜色弹链和六根独立旋转枪管清晰可见,弹道从六个枪口发出,不再举枪贴脸。 - 加特林和 M249 每发最多连续命中四名敌人,每穿过一名角色后保留 80% 伤害;SR-25 连狙最多连续命中五名,每次保留 85%。距离衰减、爆头、护甲及护盾继续逐个目标结算,友军不受伤且不占穿透次数;墙体和硬掩体会阻断弹道。 - `tests/gatling_penetration.gd` 验证六发实际伤害、圆形分布、弹药边界、不耗弹增益、穿透衰减、掩体阻挡及电脑射击。`tools/capture_gatling.gd` 输出 `artifacts/gatling-hip-fire.png`、`gatling-right-click.png`、`gatling-six-round-volley.png` 的实机画面。 ## 人类等级、超神补给与道具(2026-10-04) - 人类从 1 级开始,最高 10 级,玩家与电脑适用同一规则。每累计 100 点实际伤害获得 12 经验,击杀额外获得 35 经验;升级需求为 100 × 当前等级。伤害按扣除护盾/护甲后的实际扣血计算,保留不足阈值的余量,不计过量伤害和尸体受击。 - 每级永久增加 20 最大生命并补回 20 生命,攻击成长增加基础倍率的 6%;常驻增益使用独立经验进度发放。保留原有逐杀生命、攻击和团队减员奖励;变英雄或终极英雄保留等级与成长,下局重置。左下角常驻等级与经验条,升级和增益采用图标提示。 - 每完成八连杀获得 48 发加特林弹药;连续 16、24 杀继续各奖励一份,五秒连杀窗口结束后重新完成八连杀也可再获奖励。没有加特林时同时解锁该武器。终极英雄的奖励变为脚下可供队友拾取的 48 发补给箱,普通加特林箱弹药量仍按原配置。奖励数量配置为 0 时不会发放空箱。 - 尸潮前的加特林箱直接从击杀位置掉落,必须实际走近拾取;定时直接奖励已取消,保留八连杀、补给拾取、最后幸存者超时尸潮及母体复仇潮开始时发放。医疗箱回复最多 60 生命,所有补给额外授予一项增益,增益晶体共授予两项。受伤电脑主动考虑医疗,终极英雄也可以拾取医疗与增益。 - 按住 F1 查看人类成长、八种增益与五类补给说明;按住 Shift + F1 查看基础操作图标。F2「人类 · 等级与道具」可调整伤害经验、击杀经验、升级属性、超神弹药、尸潮前掉落概率、医疗/增益比例与回复量,仍在下一局应用。当前推荐配置读取根目录 recommanded.cfg;已有参数采用参考文件的值,动态尸潮和等级变身新增参数保留本次默认值。 - `tests/human_growth.gd` 验证实际伤害经验、护甲/溢出/尸体排除、成长上限、八增益共存与真实效果、英雄转换、实际击杀超神奖励、电脑独立奖励、尸潮前掉落、拾取数量与标记区别。`tools/capture_human_growth.gd` 保存实机补给、F1 说明、超神奖励与小窗口布局到 `artifacts/human-growth-*.png`。 ## 人类英雄与六级特化 - 开局被选中的人类英雄自带榴弹炮和默认 4 发榴弹,独立于普通人的开局配装;榴弹炮与榴弹均不增加英雄负重。F2「人类 → 基础与移动」可调整英雄起始榴弹数和特化解锁等级。 - 英雄默认升至 6 级后,按 H 打开特化选择,可暂缓,确认后本局二选一。第一条为无限枪弹 M249:强制 M249 为唯一主武器,其他主武器保留弹药落地,之后不能拾取、换成其他主武器或丢弃 M249;手枪、近战和榴弹保留,仍遵守各自弹药规则。第二条为无限榴弹炮:保留普通武器配装,榴弹不消耗,但遵守原有发射冷却。 - 无限 M249 保留枪械射速,无需换弹;两种无限效果均只属于该英雄,不随丢枪转让。电脑英雄会选择并使用特化武器;感染、死亡或变成终极英雄时清除普通英雄特化。H 可在 F2 按键设置中修改,HUD 显示特化状态与无限弹药符号。 - 机枪专精同时获得本局常驻的“机枪强化”:默认 M249 伤害 +25%,仅专属 M249 有效,手枪、榴弹、近战等不受影响;与等级及其他伤害增益相乘。F2 可调整比例。 - 新增升级常驻增益“协同进化”:每阶向所有其他存活人类分享自己所得经验的 20%(三阶 60%,F2 可调,总比例最多100%),无距离限制。玩家、电脑、英雄及终极英雄都参与;自身经验不扣除,共享经验可升级或触发满级常驻奖励,但不能再次共享。感染、死亡后不再生效,下局重置。 - `tests/hero_specialization.gd` 验证真实开局装备与免负重、六级解锁、可暂缓的二选一面板、唯一 M249 主武器、实际开火与冷却、电脑行为、按键隔离和身份清理。 ## 升级常驻与补给短期增益 - F2「人类 → 常驻增益」可调整普通最高阶数、每阶伤害/攻速/节弹/移速/换弹/护甲/精准效果,以及“10级后每次常驻奖励经验”。等级经验与常驻经验各自累计,同一份经验同时推进两条进度且不互相扣减。默认每300经验获得一阶常驻,升级本身不额外赠送;10级后可独立覆盖门槛,设0跟随常驻经验门槛,奖励次数增加不会涨价。协同经验比例、透视范围和普通回血参数仍在原有页面。 - 十二种常驻增益均有一个特殊最高阶,默认普通三阶 + 特殊第四阶。特殊阶只从达到10级之后赚取的常驻经验奖励随机获得;到达10级前赚取的部分始终只抽普通阶,即使一次大量经验同时跨越10级;不要求其他增益先满阶。F2「人类 → 特殊最高阶」可开关特殊阶,并独立调整每种特殊阶在普通满阶效果之上的额外强度。例如火力专精普通每阶4%,三阶12%,特殊额外8%,最终20%。 - 新增“跳跃强化”:普通每阶起跳速度+8%、跳跃期间水平速度+5%,同时提高高度与距离;特殊阶额外+16%起跳速度、+10%水平速度。不改变地面步行速度,不加成感染者或助跳提供的独立起跳速度。四个比例均可在F2设置。 - “反击弹射”替换原受击保护:受到一次实际抓击(包括重击、防化服抵挡或破裂)后,将周围4米且无遮挡的僵尸向外弹开,默认每阶弹射2米、特殊阶额外2米,触发间隔2秒。F2「人类 / 常驻增益」可设置距离和间隔,特殊阶额外距离在特殊阶设置中;间隔0表示每次抓击触发,距离0关闭对应阶的位移。弹射通过实体碰撞移动,遇墙停止,也能弹开开盾母体并打断僵尸技能;幽影疾行免疫。触发时有青色扩散光环、屏幕边框和独立文字提示,HUD持续显示就绪或冷却。普通人类、英雄和终极英雄均支持;取消原无敌窗口,酸液不触发,致死或直接感染不能事后挽救。 - 特殊再生、透视、协同进化同样可设置:默认普通再生特殊阶额外每秒1生命、透视额外24米、协同额外40%共享比例。共享总比例和节弹概率最高100%;换弹耗时、减伤和散布减免各层最高95%,避免高阶参数造成负数。常驻节弹仍不能从空枪开火,常驻护甲不会抵挡普通感染。 - F2「人类 → 临时增益」可调整临时伤害/攻速/移速/换弹/减伤/精准强度、应急护甲是否挡一次普通感染及扣血值;九种临时增益分别设置持续时间,-1跟随通用持续时间,0禁用并移出随机池。无限弹药的效果为枪弹不消耗,可通过其持续时间禁用;英雄专属无限弹药独立生效。普通再生参数在「回血与恢复」,终极英雄常驻、特殊、临时再生和恢复延迟/上限在「终极再生」。 - 常驻经验按自己的门槛结算并保留余量,一次大量经验可连续抽取多阶;等级满级后只继续累计常驻进度。普通阶提前全满时最多保留一条常驻经验进度,等待10级后解锁特殊阶;全部特殊阶也满级后保持有界余量。全部达到配置上限后不再升级;满级额外奖励不再增加等级生命、等级伤害或立即回血。同类常驻与临时效果可共存,临时到期不降低常驻阶数;感染、死亡、回合结束清除,转英雄或终极英雄保留成长。 - HUD 独立显示蓝色等级经验条和金色常驻经验条,反击弹射另显示就绪或间隔倒计时;普通常驻显示金色星标及当前阶数/普通上限,特殊最高阶显示紫色与“特”标;临时状态显示独立倒计时。F1效果说明自动读取当前对局参数;F2修改只进入下一局草稿。根目录 recommanded.cfg 明确值始终优先,新增缺失项从独立系统默认值补齐。 - `tests/perk_progression.gd` 验证等级与常驻解耦、前后期经验门槛、跨10级奖励分段、实际跳高跳远、反击弹射阶数与间隔、电脑/英雄/终极英雄与F2草稿隔离。`tests/claw_repulsion.gd` 验证防化服联动、范围和视线、开盾母体、重甲技能打断、实际弹射距离与墙体、间隔内正常承伤、专属HUD、测试沙盒榴弹箱的按钮与拾取,以及活动AI/物理/对局计时;其图形入口保持鼠标自由移动。 - `tests/buff_settings.gd` 验证可配置实际效果、普通/特殊阶边界、10级后独立且固定的经验门槛、共享与再生、禁用随机池、极端减免保护、F2草稿隔离及动态说明。原有成长、回血、透视、英雄特化和协同进化检查继续保留。 ## 动态尸潮与高等级自主变身(2026-10-04) - 普通尸潮和母体复仇潮的新增非玩家僵尸使用动态初始等级。每批刷新以当前存活人类重新计算:基础 1 级,加上每多一人 0.2、全队累计升级次数 × 0.08、最高人类升级次数 × 0.35、每名终极英雄 0.25,向下取整,最高 10 级。升级次数为人类等级减一,最多计九次;采用累计与最高等级避免低等级队友加入后反而降低难度。 - 例如:六名一级人类对应 2 级尸潮,六名六级人类对应 6 级,七名六级人类且其中一名终极英雄对应 7 级。人类减员或高等级成员离场会降低后续刷新的强度,已生成单位保持其等级;玩家及计入玩家名单的感染者不被重算。 - 新增僵尸的生命、攻速、技能冷却及 2/4/6 级技能形态均采用相应等级。普通尸潮继续使用原有杂兵生命倍率;有限的 36 名母体复仇者仍使用完整等级生命。保留地面固定生成、坡道通行、尸潮数量与休整上限、永久阵亡、玩家计分板排除和复仇潮快速胜利规则。每批记录人类数量、累计/最高成长、终极英雄数量及生成等级。 - 生化感染中人类默认达到 6 级即可按 V 自主选择变身终极英雄,无需等待只剩三人。解锁时弹出终极英雄图标与 V 提示,资格一直保留;放弃或稍后选择不会开启超时惩罚。变身保留等级、成长生命、击杀生命和两类增益,不能重复变身刷生命。高等级电脑也会根据威胁选择变身。 - 最后三人的五秒选择窗口保留,仅未全员实际变身的超时选择触发持续尸潮;达到满级仍可选择持枪,但不能替代变身。取消全员成长触发和终局时间触发。大灾变与生化爆破不使用这些感染模式规则。 - F2「感染 · 动态尸潮等级」调整各项权重与上限;「人类 · 等级与道具」调整等级变身门槛,设为 0 可关闭等级解锁。配置只在下一局应用,新增参数支持预设保存/读取。当前 recommanded.cfg 是用户配置来源,其余参数采用参考文件的值,动态尸潮的七项新增参数保留本次默认值;内置默认和 Windows 发布包同步此配置。F1 成长说明包含等级变身操作。 - `tests/adaptive_horde.gd` 验证人数/成长单调性、等级上限、实际刷新属性与技能形态、减员后刷新、旧单位/玩家隔离、复仇潮,以及 6 级资格、无惩罚、英雄继承、电脑选择、原有变身与模式边界。图形运行会验证真实变身按键操作;`tools/capture_adaptive_horde.gd` 保存解锁、变身、7 级尸潮和 F2 配置画面到 `artifacts/`。 ## 电脑持续索敌与母体集火(2026-10-04) - 无可见敌人时继续转动视野搜索;获得目标后逐帧跟踪其位置,射击按枪械自身射速持续进行,换弹与切枪仍遵守原时间。掩体遮挡、目标死亡或离开感知范围会立即停止射击,记忆位置只用于寻路。 - 普通人类与英雄优先集火视野内 18 米以内的母体;附近多个电脑各自确认视野后采用同一优先级,后退和协防移动期间保持射击。已经交火时切换到另一可见目标不额外重置反应等待,初次发现目标仍保留反应时间。 - 加特林在母体逼近时继续使用;榴弹只用于 10 米外的可见群体(至少三名敌人),近处母体优先使用枪械持续压制。发现可见敌人时,不因弹匣不到一半而提前进行空闲换弹。 - 旧预设中的 `bot_burst` / `bot_pause` 保留读取和保存兼容,但不再打断射击,F2 移除这两项无效选项。其余推荐配置数值保持不变。 - `tests/bot_continuous_combat.gd` 检查三人集火、真实伤害与射速、逐帧跟枪、切目标不中断、近距离加特林、换弹恢复,以及墙体遮挡、转圈搜索和死亡目标清理。 ## 雾港风格的复杂感染地图(2026-10-04) 新增三张原创感染地图,保留旧地图编号:潮汐修造厂 7、冷链转运中心 8、海岬净化厂 9。每张为 96×80 米,16 个出生点、五处多入口守点,采用雾港检疫站的室内外联通、错列掩体、夹层与绕行思路,各自有独立路线和主地标。 - **潮汐修造厂**:3 米维修厅夹层带侧阳台;4 米船坞两端可登船,船舱有四门;2.5 米吊机台、1.8 米海关台和控制室形成转移链。西南集装箱货场错列遮挡,东侧有带挡板的维修侧廊。 - **冷链转运中心**:两座 3 米仓库夹层由架空连桥联通,从连桥可沿双坡升至 5 米中控台;下方保持可穿行的地面环路。南侧装卸台、西侧货场、东侧服务间和侧廊提供不同撤离方向。 - **海岬净化厂**:3 米泵房夹层、4 米处理台、3 米滤池台、3.5 米中继台与 4.5 米海景台。H 形管廊可在多个高台之间转移,桥下可通行;设备区遮挡长枪线,处理台同时保留北侧地面坡道和管廊入口。 每张均注册缩略图和 F2 卡片;选图只修改下一局草稿。`tools/generate_map_thumbnails.gd` 在真实图形渲染下生成 640×360 PNG,保存于 `assets/maps/` 并随发布包分发。`tests/complex_harbor_maps.gd` 检查出生/巡逻/尸潮标记、预设往返、选图隔离、补给,以及人类、普通僵尸、疾跑僵尸在全部指定通路上的双向实际移动。`tools/capture_complex_harbor.gd` 保存第一人称、高点视角和选图页面供视觉检查。 ## 固定的任务结束配置流程(2026-10-04) 每次任务结束,都读取项目根目录 `recommanded.cfg`,其中显式值始终优先,包括本次新增参数;缺失项采用当前代码中的独立系统默认,原地规范化根配置,同时生成内置默认快照。枪械、僵尸配置按字段合并以补齐缺失的新字段。流程不再读取 `tools/recommanded.cfg`,也不从旧快照或备份补默认值。 每次任务完成执行 `./tools/sync_recommanded.ps1`,同步成功后自动打包最新 Windows 发布版到项目 `builds/windows/`,包含 `BioFPS.exe`、`BioFPS.pck` 和相同的 `recommanded.cfg`,三份文件一起分发。直接执行 `./tools/package_windows.ps1` 也会先同步再导出,两种入口均只执行一次同步和打包。同步或打包失败需修复重试,不能将旧包视为最新结果。旧配置和快照自动备份到 `.tools/preset-backups/`。项目内 F2 保存的根文件也是下次同步来源;长期推荐调整直接写入根文件。后续新增默认参数维护其系统定义,自动生成的 `scripts/default_gameplay.gd` 不手改。完整流程已写入 `AGENTS.md`。 ## 尸潮条件、武器击杀信息与加特林来源检查(2026-10-04) - 持续尸潮严格限定为最后三名或更少人类的选择超时且未全员变为终极英雄。10 级也必须实际变身才能完成选择;全员变身不会爆发尸潮。母体近战终结后的 36 名复仇者仍独立生效。 - 左上角击杀记录使用单行,显示击杀者、被击杀者、实际致命武器图标;宽度允许时显示武器名称,拥挤时省略武器文字,并保留爆头标识;近战终结增加明确标识。刀升级前的击杀使用旧刀名称,榴弹延迟爆炸不受发射者切枪影响。短时终结提示对玩家和电脑均显示“不再复活”,母体复仇提示可同时出现;连续终结会合并数量。 - 取消对局计时 10 秒后以 100% 概率直接奖励 400 发的旧入口,移除 F2 的定时发放/概率/伤害权重控件;历史配置键保留兼容但不再影响发放。八连杀每次击杀间隔不超过五秒,8、16、24……杀各奖励推荐配置的 48 发;普通加特林箱为 400 发,必须进入 1.8 米拾取范围。尸潮前击杀仍以推荐 6% 概率掉落实体箱,受补给数量上限限制。 - 母体复仇潮开始时,也向当时所有存活人类(含电脑)直接授予一次加特林和尸潮弹药;已有加特林则追加,不覆盖旧弹药。数量沿用 `gatling_ammo`,32人模式同样应用 `infection2_horde_ammo_multiplier`。这是复仇潮独立的一次发放,即使此前持续尸潮已发放仍可获得;重复死亡回调或分批刷新不会再发。死亡人类和感染者不领取。复仇潮仍保留原有36名、分批生成与胜利规则。 - `gatling_received` 对局事件记录直接发放的角色、来源、弹药和连杀数,来源包括 `eight_kill_streak`、`horde_timeout` 和 `mother_revenge`;补给领取由 `supply_taken` 记录箱体与弹药。`tests/horde_growth_trigger.gd`、`tests/kill_feed_weapons.gd`、`tests/gatling_sources.gd` 分别核对触发条件、真实致命伤害信息与发放来源;`tests/revenge_gatling.gd` 另检查提前复仇、双母体、人数筛选、32人倍率及可实际装备。图形检查由 `tools/capture_kill_feed.gd` 覆盖 1280×720 和 960×540。 F2 设置在大厅和对局中均可操作;F2 / Esc 可在输入框获得焦点时关闭,改绑过程中 Esc 仅取消改绑。枪械逐把页面支持 `start_mags`(含已装弹匣的开局总数)和 `supply_mags`(每箱补给弹匣数),UZI 按每只手计算;`-1` 沿用通用配置,`0` 表示不提供弹药。加特林初始默认 0,补给设置用于加特林箱;定量奖励箱及尸潮奖励保留其独立数量。榴弹炮在榴弹页用 `start_rounds` / `supply_rounds` 独立设置,生化手雷使用 `hand_start` / `hand_supply`。修改仅对下一局生效。 大厅外观现在有 10 个可独立叠加的部件,支持随机搭配和清空;电脑每局随机组合部件与配色(F2 可设置选用概率)。旧 `player_decoration` 单件预设可继续读取,新组合存于 `extra.player_decorations`。装饰仅改变外观。普通、疾跑、重甲、跃袭、酸液感染者及母体在 2/4/6 级增加相应骨甲、背刺、酸囊或冠刺;中间等级也增加可见标记,原碰撞体不变。 移速按「步行/奔跑基础速度 × 总负重系数 × 当前持用修正」计算,再应用现有瞄准、增益及受击效果。总重量包括枪、背包和携带弹药;全角色共用标准 AR/手枪/加特林/榴弹炮/手雷的基准负重,不再因开局换枪重置。F2「重量与持用移速」可设置基准、枪械影响系数和近战等持用倍率;枪械 `move` 默认以 25% 影响生效,近战默认为基础速度的 108%。枪械 `round_weight`、榴弹 `launcher_round_weight` 均可单独设置为 0 以忽略对应弹药重量。HUD 分别显示负重和持用修正。 生化手雷左键先进入拔销、扬手、前挥动作,在出手时才扣除一颗并从真实手部位置释放;收手期间隐藏已投出的手雷模型。F2 生化手雷页可调整 `hand_throw_windup`(默认 0.32 秒)和 `hand_throw_recovery`(默认 0.30 秒)。切换武器、死亡、感染或回合结束会取消未释放的投掷;暂停时动作冻结,释放点检测墙体,长帧只释放一次。飞行手雷沿用手持模型并旋转。 酸液喷吐更新:取消目标距离、近身距离及飞行寿命限制,按技能键即可向准星发射。2/4级的双酸球以固定间距平行飞行,6级仍为三球扇形。F2 酸液页取消技能距离项;旧配置的该字段保留兼容但不再参与喷吐逻辑。墙体命中、技能冷却和重叠酸池只结算一份伤害的规则继续生效。 ## F2 设置分类整理(2026-10-07) F2 改为 9 个主分类,再在分类内选择子页;配置格式和字段保持兼容,已有数值始终以根目录 `recommanded.cfg` 为准。 | 主分类 | 内容 | | --- | --- | | 对局 | 模式、身份、初始武器、人数与时间 | | 地图 | 各模式实机缩略图与下一局地图草稿 | | 人类 | 基础枪伤与移动、升级奖励、终极英雄、装饰 | | 武器 | 逐枪参数、近战、榴弹炮、生化手雷、背包负重、瞄准、弹药补给、加特林奖励 | | 僵尸 | 各类型基础属性与专属技能、母体、抓击重击、进化、对终极英雄伤害 | | 模式规则 | 感染增援、尸潮触发/规模/等级、大灾变、爆破、计分连杀 | | 电脑 | 瞄准与跟踪、支援协作、交战终结、跳越与跳落、补给意愿 | | 系统 | 音效与对局记录 | | 按键设置 | 可修改动作键位与冲突交换 | 逐类「基础抓击伤害」明确适用于感染模式普通人类及大灾变;普通英雄与终极英雄的受击公式在对应页说明。通用弹匣/榴弹补给回退值与逐武器数值分开,装饰概率与负重参数分开。酸液取消距离设置,跃袭保留距离设置。`scripts/settings_layout.gd` 只维护布局、名称和编辑范围,不定义或覆盖玩法数值。 Tab 计分板当前角色统一附带等级:普通人类、英雄及终极英雄显示人类等级,感染者和母体显示僵尸等级;阵亡时保留显示。已经发射的酸球不再因喷吐者死亡或节点删除而消失,继续飞行、碰撞并结算命中伤害;对局结束仍统一清理。 修复 G 拾取地面榴弹枪:脚边 0.75 米内不要求向下瞄准;较远物品使用水平朝向判断,仍需在 2.5 米内且没有墙体遮挡。拾回榴弹炮后可按 T 重新装备,原弹药数量和重量保留;空枪和主武器背包已满时也可拾回。 ## 配装模板 大厅「武器 / 背包」区域增加「保存配装模板」和「读取配装模板」。模板是独立 JSON 文件,可命名为不同方案并复制给其他电脑使用,包含主武器、额外背包武器、装饰部件组合及配色。默认文件夹为编辑器项目或发布 EXE 旁的 `loadouts/`,文件选择器也可选择其他目录。 读取后更新大厅选择、模型预览和负重计算,进入下一局时采用模板;武器伤害、初始弹药、补给数、移速系数及模式设置继续使用当前规则。模板超过当前背包容量时提示调整容量后重试;错误版本、无效武器/装饰、格式错误及过大文件均不会覆盖当前配装。空装饰会正确清除旧单件装饰。`recommanded.cfg` 保持既有完整规则配置功能,配装模板无需复制整份规则配置。 ### 推荐配置按当前结构生成 项目根目录 `recommanded.cfg` 是唯一数值来源;同步脚本按当前代码中的设置定义创建输出结构,再填入来源中仍有效的对应数值。新增或缺失字段使用独立系统默认值,枪械、僵尸和按键字典逐字段处理;已删除字段、未知武器/僵尸编号不会进入规范化文件,处理日志会列出被忽略的字段,替换前的 `root-source.cfg` 备份保留这些内容。旧版 `[preset]` 分类字典也能读取并转换为当前分节格式;新旧格式并存时,当前分节数值优先。 执行 `./tools/sync_recommanded.ps1` 会先备份根配置及旧快照,再规范化根目录 `recommanded.cfg` 并更新内置快照,随后自动打包与部署;发布目录 `builds/windows/recommanded.cfg` 使用同一份结果且校验一致。调整推荐数值直接编辑根目录配置,项目内 F2 保存到根目录的设置也会保留。`tools/recommanded.cfg` 仅作为历史文件保留。 后续任务默认只实现与验证中文版本,用户明确要求多语言优化时才扩展翻译和其他语言检查;既有多语言资源继续保留。 ## 尸潮性能与分批复仇增援 - 母体复仇潮仍保留 36 名、完整生命和触发时的动态等级,改为每个渲染帧最多生成两名;单批达到 4 毫秒后停止继续创建,单名角色的创建耗时可能超过该预算。待生成增援计入 HUD 和胜负结算,队伍全灭或对局结束会取消余下队列,未生成完不触发快速胜利。 - 同帧增援共享出生点遮挡检查,继续轮换合法地面标记;增援不创建永远不用的人类装备、武器和手雷外观。外观基本几何体与材质共享,静态进化部件按材质合并并缓存完整模型,尺寸、颜色和进化形态保持一致。 - 群体避让使用每物理帧更新的空间网格,只检查相邻区域;移动后及时更新格子。AI 决策错峰运行,同一机器人更新内复用目标可见性结果,实际攻击仍重新校验遮挡。尸潮有效追击路线最多短暂保留 0.3 秒,卡住时强制寻路不受限制。 - 永久阵亡的尸潮增援立即离开角色组并释放节点,避免多轮增援累积无效模拟开销。录像继续开启,事件日志每 0.5 秒或 64 条刷盘,并在结算及退出时落盘。 - `tests/horde_performance.gd` 覆盖分批生成、待生成结算、避让等价性、空间格边界与移动、死亡清理、共享外观和日志落盘;`tools/benchmark_horde.gd` 提供固定 52 角色的生成与 AI 基准,可用 `--headless --max-fps 60 --script tools/benchmark_horde.gd` 运行。该基准测量 CPU 工作量,不代表图形帧率。 ## 电脑人类瞄准与母体晋升 - 人类远程机器人默认瞄准转速 160 度/秒、跟踪滞后 0.14 秒,基础误差 0.8 度;超过 8 米每米增加 0.06 度,移动时额外增加最多 1.2 度,总误差最多 4 度。误差平滑变化,避免每帧随机抖动;瞄准未进入目标方向 12 度范围前不扣扳机。近战和玩家瞄准保持原有操作。F2「电脑 / 瞄准与跟踪」可编辑这些参数,下一局生效;来源配置优先于系统默认。 - 感染模式僵尸最高 10 级,所有非母体僵尸达到 6 级时按配置概率只抽取一次额外母体资格,获得母体血量、移动、再生、统御护盾及外观;同场母体最多 3 个,包含初始母体,等待复活的母体保留名额。抽取成功但满额时继续成长至最高 10 级并等待永久空缺;抽取失败后不再尝试,阵亡者不能在死亡获得经验时晋升,复活后重新检查。晋升切换为母体路线并补满生命,不重复晋升、叠加等级或通过满级经验反复回血。 - 初始母体始终负责持续尸潮停止与复仇潮触发,新增母体死亡不会触发这两项规则。大灾变与爆破模式沿用各自规则。`tests/bot_aim_balance.gd` 和 `tests/mother_promotion.gd` 覆盖转速、滞后、远程/移动误差、遮挡、母体上限、等待、复活和初始母体职责。 - 同帧共享存活敌方与开启护盾的角色列表,死亡、感染、复活和护盾启停立即使缓存失效;避免每名角色每帧重复全队扫描。图形仍通过 Godot 的 GPU 渲染,本次主要削减 CPU 群体模拟与 GPU 绘制提交成本。 爪部静态几何也按材质合并并缓存,整个手臂组继续驱动原有攻击动画;空闲时保留已复位的姿态,避免重复写入子部件变换。感染者共享同帧据点/房间的人类占领列表,人类移动、阵亡或感染会立即使占领缓存失效。 机器人武器将静态枪身、换弹组件和转管分别合并,缓存同类型网格与材质;加特林的世界模型使用适合远距离观看的环形精度。枪口位置、转管运动与换弹位移保留,玩家第一人称模型继续使用完整部件。`tests/world_weapon_mesh.gd` 对全部 14 种武器外观核对网格共享、几何、枪口及动画。 机器人制服及叠穿装饰也合并为单个静态网格,保留装备身份节点、原有几何与颜色;随机组合缓存最多 64 项,避免长期反复开局累计缓存。大厅和玩家装饰继续使用原有可编辑结构。 人类和僵尸 NPC 的基础身体、头部与护盾使用共享的世界网格及适合角色屏幕尺寸的曲面精度;原有半径、高度、碰撞体与爆头判定不变,玩家模型细节保留。 ### 枪弹分离与逐类成长(2026-10-08) - 大厅与 F2「武器 → 背包与负重」可独立选择开局携带加特林、榴弹炮;两者默认不携带,手枪与生化手雷仍保留。配装 JSON 保存两项选择,旧模板缺失时按不携带处理。负重基准改为普通 AR / 手枪配装,选装重武器正常增加负重。 - 枪械持有与弹药库存分开:专用箱只补弹,不恢复丢弃的枪。已有对应枪时靠近自动补给;尚无对应枪时按绑定的 G 键确认,仅收取库存弹药(计入重量)。随后拾取真实枪械时合并库存。附近真实枪械优先于弹药确认,G 确认不会顺带丢掉当前枪。 - 普通弹药箱只补已持有的主武器与手枪,不补加特林或榴弹炮,也不恢复任何未持有的枪。电脑不追逐缺枪专用弹药。尸潮和八连杀明确授予的加特林奖励继续按奖励规则运行。 - F2「僵尸」逐类开放生命成长倍率、近战伤害 / 移速 / 装甲成长、冷却成长与攻速下限,以及各自技能持续、倍率、范围与伤害。生命与冷却仍以通用参数为基准,但各类独立调节;母体独立设置,不随普通感染者参数改动。 - 普通感染者侧重狂暴与吸血,疾跑者侧重疾冲和追猎,重甲侧重生命、装甲和护卫,跃袭者侧重落地震荡范围与逐级伤害,酸液侧重单球和酸池伤害成长。默认酸液单球每级增加6%基础伤害,酸池每级增加8%基础脉冲伤害;2 / 4 / 6 级保留既有进化形态,所有非母体僵尸 6 级时只抽取一次母体资格,最多3个,初始母体仍管理尸潮停止和复仇触发。 - F2「人类 → 回血与恢复」调整普通人类和普通英雄:升级 / 击杀默认等量补上生命上限增量,保留原有伤势,击杀累计上限增量仍受配置约束。受伤后4秒暂停再生;临时再生5生命/秒,常驻每阶0.5生命/秒,最多恢复至90%生命。医疗回复仍按来源配置的回复量及单份上限计算。 - 终极英雄豁免上述回血限制:保留战中临时再生8生命/秒、常驻每阶0.75生命/秒、可回复满血;击杀生命成长和升级回血保持原强度,变身时按此前全部击杀恢复原生命收益,医疗使用原配置回复量。原终极英雄生命、攻击和技能参数不变。 相关检查:`tests/gun_ammo_separation.gd`、`tests/archetype_tuning.gd`、`tests/human_healing_balance.gd`;保留并回归配装、弹药、负重、逐类进化与母体晋升检查。 ### 枪械补给、电脑脱困与创造者模式 - 默认每20秒生成一个真实枪械补给,开局首个5秒出现,地图最多同时保留4个;附带1份弹匣弹药,20%概率为加特林或榴弹炮。地面枪械保留90秒,雷达以金色枪械标记补给、青色标记丢弃武器。使用当前绑定的丢捡键(默认G)拾取;普通弹药箱仍只补持有枪械。F2「武器 / 弹药与补给」可调整刷新间隔、数量、弹药及特殊枪概率。 - 电脑在人身安全且路线可达时寻找可用枪械;背包满后选择空枪或较弱枪,实际丢在地面后拾取新枪,保留真实剩余弹药,其他人也可拾取。近敌和紧急爆破交互期间暂停捡枪;F2「电脑 / 补给意愿」可调拾取范围、提升门槛和检查间隔。 - 普通人类与英雄保持同样的基础安全距离。每物理帧检查附近僵尸压力和行进碰撞,遇到挡路选择有支撑的侧向路线,在脱困时继续跟踪、瞄准和射击;墙后的僵尸不会触发穿墙感知。终极英雄保留近战追击与技能强度,在贴身卡住时同样尝试侧移。 - 各僵尸及母体分别设置抓击动作时长、命中时刻、重击动作时长、命中时刻、伤害倍率、冷却倍率及距离倍率。重甲动作较慢、重击更强,疾跑者动作较快;升级缩短本类型动作时间,攻击冷却不能短于动作时长。原统一重击字段退出生成配置,来源原文件及备份保留。 - 终极英雄的技能键响应真实按下事件,默认F,支持改键和快速点按;按住、键盘重复及冷却期间不会重复释放。默认V变身,1切终极双刃、2切手枪。终极英雄已有生命、伤害、技能和回血设置保持来源配置的数值。 - 大厅或F2选择「测试沙盒」,可使用已有感染地图。F6打开测试面板,选择身份、1—10级、枪械、补给与增益,自由搭建战场。「枪械与补给」分别提供普通弹药箱与榴弹弹药箱,后者补充榴弹炮弹药与配置数量的手雷。点击放置入口后瞄准可行走地面,左键逐个放置,右键结束;最多64个标靶,母体沿用可设置的总上限(默认3个,包含玩家自身),拒绝与角色和障碍重叠。模式编号仍为3,旧预设兼容;无自动晋升、尸潮、倒计时或胜负结算,正常伤害、感染、成长和复活规则继续生效。地图创造者模式的编辑工具不参与补给放置。 - 一键启动 / 暂停按钮同时更新之前放置与后续放置的标靶,并直接返回游玩;游玩中也可按F8随时切换。停止时暂停自主行动,切换不恢复血量、不重置等级、增益或复活计时。快捷「静态测试」使用静止标靶和玩家无敌;「自由对战」启动全部标靶并关闭玩家无敌,也可分别调整开关。重置全部标靶可恢复放置时的身份、等级、生命和位置,便于重复游玩;原位置被占用或母体名额已满时跳过。玩家可用身份应用按钮恢复自身。面板打开时暂停,关闭后继续;F2修改仍只影响下一局。 检查:`tests/ultimate_skill_input.gd`(图形输入)、`tests/weapon_supply_bots.gd`、`tests/bot_escape.gd`、`tests/zombie_actions.gd`、`tests/training_mode.gd`。 ### 人类坡道拥堵修复(2026-10-08) - 人类局部避障沿可行走坡面检查角色碰撞,不再把上坡地面误当成墙;侧向接近坡道时保留各自入口位置,避免所有人争抢坡底中心。 - 同向队友减速跟随并保持间距,对向或静止队友优先向自己的右侧让行,必要时横移或后退。绕行方向短暂保持,减少反复换向;集合位置被占据时停在队友旁边,仍保持瞄准和射击。附近僵尸压力优先于队友排队。 - 坡道与旧城区跳跃捷径按可达路线长度选择,不再从附近坡口强制绕去远处跳台;孤立台阶返回的未到达目标的路径不会错误替代完整捷径。 - `tests/human_ramp_traffic.gd` 使用真实角色物理碰撞检查六名人类/英雄同时上下两侧坡道、对向通行、静止玩家挡坡口、两段窄室内坡道、旋转坡道及人类跳跃捷径。`tests/ramp_navigation.gd` 保留跨地图人类/僵尸/尸潮与实战坡面回归。 ### 生命成长与再生回调(2026-10-08) 当前根目录配置每级增加100点生命上限,同时补100点当前生命;例如受伤后为20/100,升级后变为120/200,保留80点旧伤。击杀成长同样等量补血,仍保留当前60点累计上限,达到上限后不会继续补血。玩家、电脑和普通英雄使用相同成长规则;回血比例可在F2继续设置。 历史回血调整仅涉及当时 tools 来源中的升级/击杀回血比例、再生等待、恢复比例和两种再生速率,原文件先备份到 `.tools/preset-backups/human-healing-*/tools-original.cfg`。保留用户设置的每级100点成长、英雄/终极英雄生命、医疗补给及其他战斗参数。终极英雄仍保持原有战中再生、满血恢复、击杀成长及技能强度。 ## 僵尸补给 僵尸可以靠近拾取紫色星形经验核或红色箭形强化核,人类不能拾取。默认首次补给在感染者出现后 8 秒生成,随后每 18 秒补充,独立上限 4 份、90 秒消失,不占用人类补给名额。经验核给予 60 经验,使用现有升级与母体晋升规则;满级后仍可用于常驻增益,所有常驻增益满阶后才不再消耗经验核,大灾变只生成强化。 强化核随机给予疾行(移速 +20%)或凶猛(抓击、重击、酸液和伤害技能 +20%),持续 10 秒。两种可共存,同类只刷新时间,不叠加倍率;死亡、切换类型、晋升和回合结束清除。投射物在发射时确定伤害。终极英雄自身参数不变。电脑僵尸寻找附近可达补给,近身战斗和炸弹交互优先;使用已有空间索引检查自动拾取,避免每箱遍历整个尸潮。 F2「僵尸 / 僵尸补给」可设置频率、独立上限、保留时间、经验量与比例、强化时间与倍率和电脑搜索范围,下一局生效。F1 僵尸说明显示补给标记,HUD 显示强化倒计时;F6 创造者面板可放置两类僵尸补给。 僵尸自然补给使用独立位置池:外围街道、尸潮出生点和集结点,排除守点中心 10 米内、守点站位 6 米内及房屋范围(水平检查也排除高台下方)。位置必须落在导航地面且具有僵尸身体净空,避开 6 米内的活人;优先选择僵尸搜索范围内且能寻路到达的位置。大灾变跟随移动中的僵尸阵线,不再投放在撤离检查点。F6 手动放置仍由测试者自由选择位置。 感染模式所有非母体僵尸达到 6 级时只抽取一次额外母体资格,默认成功概率 50%。失败后继续普通僵尸成长至最高 10 级,后续经验、复活、切换类型和周期检查都不会重新抽取。高等级新出生僵尸在感染成型时只抽一次,跨越多级的经验奖励也只抽一次。成功但名额满时保留资格,活着且有永久空位时晋升;待复活母体仍占名额,总上限默认三个,包含初始母体及所有晋升母体。永久淘汰的母体释放名额,计分板标为「淘汰母体」,不计入有效总数。初始母体从1级开始成长,因此可以低于6级;晋升母体必须达到6级。初始母体继续独占尸潮停止与复仇规则;大灾变、爆破和创造者模式仍不自动晋升。 F2「僵尸 / 进化与升级」保留「6级额外母体晋升概率」设置,0 禁用、1 必定,默认 0.5,下一局生效。根目录来源明确设置优先,缺失项使用独立系统默认。HUD 只有抽取成功并等待空位的僵尸显示「等待晋升」;对局日志记录每次唯一抽取的概率、随机值与结果。 F2「僵尸 → 进化与升级」的「母体总数上限(含初始与复活中)」可在1—16之间设置,默认3;1意味着只保留初始母体名额,抽取成功者仍按原规则等待永久空位。配置字段为 `[extra] mother_total_limit`,根目录来源中的明确值优先,修改下一局生效。创造者模式放置母体和玩家角色切换也遵循同一总上限。计分板与F1显示有效母体数 / 本局上限。 外部内容组件 v1:枪械、地图、装扮和僵尸现在可从项目/EXE同目录的 `components/` 加载JSON。标准、机器校验结构、四类禁用示例、内置参数参考和后续模型生成提示分别见 `components/README.md`、`component-v1.schema.json`、`examples/`、`reference.json`、`PROMPTS.md`。新类型使用稳定ID/编号,拔除不重排,错误跳过并在 F2「系统 → 外部组件」显示诊断;重启即可加载,无需重新编译或编辑器导入。地图使用数据几何生成碰撞/导航,缩略图必须是640×360实机PNG,F2卡片选图只改下一局。JSON v1可继承现有枪械行为、五条僵尸技能路线;全新技能逻辑仍需代码扩展。发布时三份主文件加 `components/` 目录一起分发。 重型武器属性由数据声明:加特林为heavy_weapon,榴弹炮及手雷分别有独立heavy_weapon / hand_heavy_weapon,盾牌机枪也属于重武器;英雄使用M249时额外按重武器判定,含未特化的普通弹药M249和无限弹药特化,玩家与电脑一致;普通人类M249保持原数据分类。枪械wield_count决定单双持,fire_mode决定自动/半自动。LV6及以上非母体被重型致命伤击杀时,默认30%终结(不复活),失败正常复活;每次致命伤只抽一次,F2「武器 → 重武器终结」可调0禁用/1必定。母体不参与重型终结,近战终结与已有尸潮永久死亡规则保持。 终极英雄第一人称使用对称的独立双刀与手臂持握节点,连续轻刀右/左交替,副手保持防守,重斩双刀共同挥动并保留命中后的收刀动作;伤害、攻击冷却、范围及技能不变。击打区分血肉、爆头、装甲、护盾、刀斩、重斩、抓击、酸液和爆炸;提示区分升级、进化、英雄、母体、尸潮、复仇、撤离、爆破、胜负与各类拾取,PCM音色缓存复用。 枪械组件audio.shot / reload / empty可分别指定相对WAV/OGG音频,支持音量与音高,无需导入;缺失音频回退默认,玩家/电脑及双持共用组件音效,电脑保留空间遮挡。新武器需将音频及授权说明一起交付,见components/README.md。 ### 电脑矮障碍跳越与高处跳落(2026-10-09) 根据对局记录里的玩家高低落差路线及商场/修造厂电脑停滞坐标,增加通用物理捷径检查。导航路线不完整、电脑被留在孤立掩体顶,或跳越/下落明显更短时,检查当前几何并选择起点与落点;无需为每张地图写固定坐标。浮空的战术目标先投影到其下方近处地面,已验证的起跳接近路线不会被重复战术更新丢弃。 F2「电脑 → 跳越与跳落」可设置开关、矮障碍高度上限(默认1.2米)、直接跳落高度上限(默认5米)和检查间隔(默认0.75秒),下一局生效。跳越仍受真实跳速、重力、当前负重后的移动速度限制,并检查全身运动轨迹、头顶空间、落点地面面积和附近角色。跳落需存在可站立的较低地面,越界/没有落点时保留原路线。空中保持落点方向,落地后重算路线,超时则解除动作并恢复寻路;射击和瞄准继续使用已有规则。普通坡道走路、原有地图跳跃连接及限制地面增援上高处的规则保留。 复杂捷径探测全体电脑每个物理帧最多两次,预算不足会错峰提前重试,避免尸潮同时决策引入集中开销。运行时使用当前地图碰撞和导航,不读取外部历史日志;历史位置只用于定位和重现问题。记录的快照约5秒一次,不能直接还原精确起跳曲线,因此所有候选路线均以实机物理验证。新增 `bot_traversal` 对局事件记录实际选用的跳越/跳落及落点,方便后续复查。 `tests/reinforcement_clearance.gd` 验证出生空位、同帧预约、完整36人额度和真实身体支撑脱困;`tests/bot_traversal.gd` 覆盖真实记录中的掩体顶脱困、普通人类与僵尸跨越低掩体、4米平台直接跳落、玩家记录中的栏杆→平台→地面分段下降,以及战术更新/空中承诺、净空、高度限制和探测预算。证据位于 `artifacts/traversal-record-analysis.json`、`player-traversal-candidates.json` 和 `bot-traversal-replay.json`;原始日志保持只读。 尸潮及母体复仇增援还会检查固定出生点是否被活角色占用:优先使用空闲且远离人类/被遮挡的位置,同帧后续生成也重新检查占用;全部占用则等候,复仇潮未生成名额仍计入人数和胜负,完整36人额度不减少。普通增援短暂重试,持续尸潮日志只统计实际生成数。修复旧的地面增援脱困逻辑:站在另一角色身上不再反复起跳,街道目标不再选正下方的同一点,避免碰撞重叠造成不断升高的僵尸塔。 ### 感染停滞、僵尸常驻增益与 10 级能力 感染模式在长期无人感染时触发潜伏感染:系统默认 90 秒后给出匿名提示,再等待 8 秒,从当时仍存活的人类中随机感染一人;默认至少剩余 2 名人类才启用。普通感染会重置计时,间隔设为 0 可关闭。人选仅在实际感染瞬间抽取,此前没有目标身份、标记或提示;英雄和终极英雄也在抽取范围内。大灾变、爆破和创造者模式不启用。F2「僵尸 → 感染停滞」可修改间隔、匿名提示时间及最低人数,下一局生效。 僵尸获得升级经验时也独立积累常驻增益经验,系统默认每 200 经验随机获得一阶,六种数值增益各最多 3 阶,另有固定一阶的感染传承:凶爪(每阶伤害 +5%)、疾行(移速 +3%)、坚甲(额外减伤 2.5%)、急袭(攻击速率 +5%)、灵能(技能冷却减少 4%)、复苏(受伤 3 秒后每阶回复 1 生命/秒)。10 级后继续获取,复活、切换类型和晋升母体保留,下一局重置;与原有临时强化核共存。F2「僵尸 → 僵尸常驻增益」可设置经验间隔、阶数上限和全部强度。 红色僵尸统一显示为「利爪僵尸」。非母体达到 10 级后解锁替代原技能的10级能力,继续使用 F 技能键(可改键),电脑同样不再释放被替代的原技能;母体不获得这组能力,晋升或阵亡会中断正在施法的能力。 | 类型 | 10 级能力 | 系统默认参数 | | --- | --- | --- | | 利爪 | 裂空利爪:瞄准并远距离攻击一名人类 | 24 米、180 伤害、前摇 0.35 秒、冷却 18 秒 | | 疾跑 | 幽影疾行:身体隐身、无敌、穿过角色、强化速度和跳跃 | 持续5秒、移速2.2倍、跳跃初速度1.8倍;前摇0.2秒、冷却16秒 | | 重甲 | 震撼重击:震撼附近可见人类,造成伤害并短暂禁止移动与攻击 | 8 米、35 伤害、震撼 1.2 秒、前摇 0.6 秒、冷却 22 秒 | | 跃袭 | 定点转移:先选人类或其他僵尸,再指定安全落点,蓄力后传送 | 选人范围 28 米、落点范围 28 米、施法 2 秒、冷却 24 秒;失去目标或被击杀则中止 | | 酸液 | 全域酸蚀:自身静止,持续伤害并减速全图人类 | 前摇 1 秒、持续 6 秒、每秒 8 伤害并附加 0.8 秒减速、冷却 30 秒;被击杀立即停止 | 以上开关、前摇、冷却、距离、伤害、持续时间与控制时间均在 F2 对应僵尸类型中设置;明确存在于根目录 `recommanded.cfg` 的值优先于系统默认。传送检查地面、身体净空和遮挡,拒绝落入虚空或卡进墙体。HUD 显示 F 技能状态、常驻增益和经验进度,F1 列出说明;`tests/zombie_mastery.gd` 覆盖真实伤害、传送、击杀中断、匿名感染和满级后增益。 10级技能使用各类型独立的 `mastery_cooldown`,不再重复套用通用等级冷却缩减或类型冷却成长/下限;仅「灵能」常驻增益按阶数缩减(最多80%)。冷却从提交技能进入蓄力时开始,蓄力和持续效果期间正常计时;效果未结束时即使冷却归零也不能重开。再次按F取消已提交技能、死亡、复活或暂停标靶行为均不清空已花费的冷却,选目标但未提交时取消仍免费。当前推荐配置中无增益的疾跑者为16秒、重甲为22秒;未满10级的普通技能和母体冷却规则保留。`tests/mastery_cooldowns.gd` 覆盖各类型精确冷却、灵能、极端等级缩减、重施法门槛与取消/复活。 ### 僵尸承伤经验 僵尸每次受到人类攻击,即按减伤后实际扣除的生命获得经验,系统默认每 1 点伤害获得 0.1 经验(10 点伤害 = 1 经验);枪械、爆头、近战和爆炸共用实际受击入口,母体也适用。致命一击只计算剩余生命,不计溢出伤害,不再额外发放死亡经验;先结算死亡再发经验,避免升级或母体晋升挽救已致命的伤害。致命伤获得的等级和常驻增益保留到复活。原有感染奖励与经验补给继续保留,满级后承伤经验继续推动常驻增益。 F2「僵尸 → 进化与升级」可设置「每承受1点实际伤害获得经验」,字段 `[extra] zombie_xp_per_damage`,设为 0 关闭。旧 `zombie_xp_death` 字段从当前配置结构移除,旧来源和历史自动备份保留原值;新字段缺失时使用独立系统默认,显式设置优先。准备阶段、无敌、同阵营攻击、已阵亡目标和大灾变不会因此获得经验。 ### 幽影疾行与沙盒指定增益 疾跑者 10 级 F 技能为幽影疾行,按下后蓄力并进入短暂的隐身无敌状态,可穿过所有角色,仍保留地面和建筑碰撞。期间不受伤害、击退、减速、眩晕或爆炸震屏影响;移动速度与跳跃初速度大幅提高,跳跃高度、距离同步增加。系统默认持续5秒、速度2.2倍、跳跃初速度1.8倍,F2 本类参数可调整;蓄力和冷却保留用户配置。结束、死亡、换类、晋升母体、重置角色或结束对局时恢复。10级覆盖原疾冲;蓄力或持续期间再次按F可取消,已花费的冷却保留。 F6 沙盒面板整理为「身份与标靶」「枪械与补给」「增益编辑」「玩家列表」四个可滚动页签。在增益页可选择自己、单个存活标靶或全部存活标靶,指定现有 30 种人类/僵尸临时及常驻增益,设置常驻阶数或临时持续时间(1—3600秒)。支持单项或整类应用、单项移除和全部清除,可组合多个增益;按阵营跳过不兼容对象,全部标靶不包含自己。常驻直接设为指定阶数,不反复叠加;强度和阶数上限仍使用本局配置,人类特殊阶需10级且已启用。临时增益可按手动时长测试,即使其随机掉落已关闭;清除增益保留已获得的经验。调试编辑只在沙盒生效,不修改 F2 下一局草稿或正常对局规则。 `tests/zombie_phantom.gd` 检查幽影隐身、无敌、碰撞、机动强化、清理与全图技能标记;`tests/training_buffs.gd` 检查按钮操作、所有增益、特殊阶、目标选择、阵营隔离、强度、时长和清除。 ### F 传送预瞄与跃袭定点转移 疾跑者 F 直接启动幽影疾行,无需选择落点;松开按键不终止已启动的能力。 幽影疾行只隐藏世界中的角色,本人第一人称手臂与抓击/收手动画继续显示,方便判断攻击节奏;伤害、攻速、攻击间隔和技能冷却不变。手臂跟随自己的相机,不在观战相机或对方回放中显形。技能结束、取消或身份重置后恢复原相机挂载,不留下额外手臂。 跃袭者的10级「定点转移」点按F开启选人预瞄:大光标圈默认半径48像素(按720p缩放),精确命中优先,圈内优先选择离准星最近的可见角色,不能隔墙选人。左键选中人类或其他僵尸后,默认须在5秒内第二次左键指定落点;此时目标仍可正常移动、跳跃和反击。圈与标记显示目标及落点范围,可传送其他僵尸(包括母体),不能选择自己。也可在选人或选点阶段右键,直接将选中目标传到自己面前约2—3.5米的安全位置,无需手动选地;面前受阻时拒绝,不改送身后。快捷操作仍有正常蓄力与冷却。手动落点可选范围内任意可见、能安全站立且未占用的位置。选点超时、目标失效或再次按F取消均不消耗冷却。确认传送后才开始禁锢人类和蓄力;确认及整个蓄力期间施法者与目标必须互相无遮挡,不要求镜头朝向彼此,遮挡、超距或死亡都会中止。提交及到达前重新检查落点;被转移僵尸会取消旧的施法与移动状态。 F2对应类型提供 `mastery_range`(选人/裂空利爪范围)、`mastery_destination_range`(落点范围,默认28米)、`mastery_target_radius`(选人光标半径,默认48)及 `mastery_selection_time`(选中后的选点时限,默认5秒),前摇与冷却继续按根配置。`tests/mastery_targeting.gd`、`tests/leaper_transport_controls.gd` 覆盖范围预览、宽光标、超时、自由移动、右键快捷、人类/友军传送及视线中断,并支持图形模式真实键鼠与截图。 ### 独立僵尸增益经验、精英觉醒与 M249 特攻 僵尸等级经验和常驻增益经验使用独立计数、独立收益与门槛。承伤、感染、经验箱分别向两个进度发放各自配置的奖励;单独升级不附送 buff 经验,单独获得 buff 经验不增加等级。系统默认增益收益为每1点实际承伤0.1、感染60、经验箱60;10级前与10级后分别默认每200增益经验随机升一阶,现有 tools 中明确的普通门槛仍优先。大额奖励跨10级时按跨级前后的奖励比例处理对应门槛,余数保留;自然升级、精英觉醒和复活不清空 buff 进度。 生化感染与感染Ⅱ中,默认60%的存活人类达到8级时,每种当前在场的非母体僵尸随机选一名活体直接升到10级并恢复生命,本局仅一次。没有该类型时不生成替代,不选择尸体或母体;已全为10级的类型无需再次晋升。觉醒保留原类型和10级技能,不占用母体名额,也不再为其抽取母体资格;原有buff和经验保留。沙盒、大灾变与爆破不自动触发。 所有10级非母体(包括自然升级、沙盒和高等级尸潮)均按同级10级母体计算生命上限;系统默认倍率1,同级母体基础生命与成长参数共同生效。高等级尸潮不再额外套用降低生命的尸潮倍率,复活继续保留精英血量,其他普通类型的技能和属性保持各自路线。F2「僵尸 → 精英觉醒」可设置触发开关、人类等级、人类比例和血量倍率;「僵尸常驻增益」可独立设置三种收益与10级前后门槛。 英雄专精M249对母体与10级非母体另有特攻,系统默认在原机枪专精伤害后再增加100%伤害,即额外乘2;仅实际持用专属M249的子弹生效,普通M249、其他枪、手枪和榴弹不享受。F2「人类 → 基础与移动」可调额外比例,0关闭;英雄特化卡、F1与HUD同步显示。`tests/zombie_elite_progression.gd` 覆盖两个经验池、各来源、门槛、逐类一次觉醒、死亡与名额、自然与尸潮精英血量、复活以及真实子弹特攻。 ### 定点转移的人类锁定与精英全局标记 跃袭者10级技能选中人类后不会立即禁锢。只有确认安全目的地(或右键快捷)进入传送蓄力,才限制目标移动、跳跃和击退;仍可转向、瞄准和开火反击。受害者HUD此时显示「被定点转移锁定」、施法者类型/唯一对局编号和蓄力倒计时,并在施法者位置或屏幕边缘标出传送者及距离。双方无需镜头对视,但必须保持无遮挡。施法者死亡/移除/身份失效、目标死亡/被感染/离开范围、视线被阻挡、传送完成或取消施法会解除锁定;已提交冷却保留。多名施法者各自维护锁定,解除一个不会提前清除另一个;友军僵尸不受人类禁移影响。 所有存活母体和10级非母体均保留全局位置提示。母体使用小型金色图标和距离;普通10级僵尸使用4像素粉色空心圆,雷达缩为2像素点,只给准星附近最近的一名显示简短距离文字,避免大量精英时满屏文字。头顶皇冠和「母体/10级」文字同步缩小。标记不受墙体和透视增益范围限制,背对相机时仍可在雷达找到;死亡或移除后消失,复活、自然升级和精英觉醒后正常更新。自己所观察的角色不重复标记。标记提供位置情报,不改变各角色原有透视、瞄准或命中规则,也不标记潜伏感染前尚未抽取的人类。 `tests/transport_lock_markers.gd` 覆盖选人/蓄力禁移、反击、施法者提示、取消/传送/死亡/移除/失效清理、多施法者、穿墙与背后雷达、头顶区分和升级复活标记,并提供实机截图。 僵尸常驻增益新增「感染传承」:独立增益经验随机获得,固定一阶;成功抓击或酸液感染时,新感染者直接获得感染者在感染发生时的等级(最高10级),立即按对应等级计算满血、技能与精英标记。感染奖励仍归感染者,双方的经验进度、常驻增益独立,不复制母体身份。后续母体晋升继续遵循原有概率与名额规则。F2「僵尸 → 僵尸常驻增益」可通过 `zombie_perk_inheritance_enabled` 启用或关闭(系统默认启用),关闭后不参与随机增益抽取;F6 增益编辑可选取或移除此项。 10级非母体僵尸(疾跑者除外)在预瞄、蓄力和持续特殊能力期间,会额外显示从地面直达240米高空的橙红色脉冲光柱,可穿透所有建筑,不依赖透视增益、视距或阵营。地面光环随施法者移动;HUD保留技能名称、阶段倒计时和距离,最多同时显示最近六名的文字,其余施法者仍有光柱和雷达菱形脉冲;镜头外、身后保留边缘与雷达提示。施法时不重复绘制常态精英提示。10级疾跑者在蓄力和幽影疾行期间均不显示光柱,仅保留HUD与雷达技能提示;隐身身体、装饰和头顶标签隐藏,AI仍不能直接瞄准隐身身体。技能结束、取消、停止标靶行为或施法者死亡后立即移除提示。 F2 设置改为左侧目录与参数搜索:中文名称、页面名称或配置键均可搜索,多个空格分词同时匹配;点击结果直接打开页面并滚动到对应参数。补给单独分类为「人类补给」「弹药与枪械」「加特林奖励」「僵尸补给」,人类补给页集中管理刷新间隔、击杀掉落、地图上限、医疗/增益箱占比和通用增益时长,并提供临时增益强度页的跳转。开关改为明确的开启/关闭控件,窗口较窄时地图缩略图卡片纵向排列;原配置键和地图编号保留。 「系统 / 显示与性能」新增全屏显示开关(`extra.pc_fullscreen`,系统缺省0为窗口、1为全屏)。点击「立即应用显示设置」可在当前对局/大厅切换,不重开对局、不提交其他规则草稿;保存预设后下次启动沿用。普通规则仍按保存/应用按钮提交,关闭放弃草稿。界面恢复默认使用本次发布内置的推荐配置;每次发布由根目录 `recommanded.cfg` 中有效字段规范化根目录配置、内置默认及 EXE 同目录配置,缺失字段才使用独立系统默认。 F2「系统 / 显示与性能」提供简体中文、英语、日语、韩语、德语、法语六种界面语言(`extra.ui_language` 分别为0—5)。切换后大厅、设置、战斗HUD、角色标记和提示立即更新,保留未应用的规则草稿;保存预设后下次启动沿用。目录搜索使用当前语言,也支持稳定的配置键。玩家输入、文件路径、武器型号和按键名称保留原值。语言资源随Windows发布包离线分发,无需联网,六种语言均使用随包字体。地图缩略图不含固定语言标签。 翻译资源位于 `assets/locales/`;`overrides.json` 维护人工术语,`field_labels.json` 维护参数译名,`refinements.json` 维护上下文说明。原始设置键、地图编号及游戏逻辑不随语言改变。`tests/multilingual.gd` 检查六语言完整性、动态参数、所有设置页、实际游戏HUD、字体字形与切换时草稿保留。开发期翻译工具及模型不随发布包分发;运行时只读取静态资源。字体许可见 `assets/fonts/LICENSE-OFL.txt`。 ### 统一技能键与快速近战 10级非母体的新技能覆盖原技能并沿用F;多步选目标、选落点不再要求按住F,左键确认,再按F取消。提交前取消不消耗冷却,已提交的蓄力或持续效果取消后保留冷却,避免通过取消刷新技能。母体和终极英雄仍使用各自F技能。 人类E键每次只发动一次近战,期间暂缓其他武器操作,结束后恢复原装备,弹药不变;终极英雄双刃作为主武器,1切双刃、2切手枪,左右键轻/重击。F2「武器 / 瞄准与切换」新增 `extra.weapon_wheel_enabled`(默认1),设0禁用滚轮切换;其他按键仍可切换。主武器按获得顺序对应1、4、5、6、7、8、9、0,选择武器不重排槽位,HUD显示额外槽位,按键可在F2重绑。配置继续以根目录 `recommanded.cfg` 为准,新字段缺失时填入独立系统默认。 检查:`tests/combat_input.gd`(需图形环境的真实键鼠输入、伤害及状态恢复)、`tests/mastery_targeting.gd`(两段操作与取消)、`tests/preset_workflow.gd`(新字段、改键和旧Z动作清理)。 ### 创造者模式角色管理与复活 创造者模式的僵尸继续遵循正常复活规则:普通枪击击杀后按本局复活时间重生;近战终结、重型终结等正常永久淘汰规则保留。移除了标靶死亡即被强制永久淘汰的特殊处理。死亡立即隐藏整个角色树,包含四肢、装备、装饰、进化外观和标记;正常复活或手动恢复时重新显示。 F6「玩家列表」包含自己、存活、待复活和已淘汰标靶,可单独编辑身份 / 等级、当前和最大生命、无敌和自主行为,或删除指定标靶。身份 / 等级应用会恢复该角色并清空其增益与冷却;修改生命和行为不重置其他状态,自己不可删除。角色的增益编辑入口跳转到已选定该角色的可视化增益页,当前生效增益会显示阶数 / 剩余时间,点击条目即可读取并调整,也可单独移除。未存活角色需等待复活或先手动恢复后再添加增益。 游玩时F7按准星射线选中可见标靶并直接进入其设置,墙体阻挡选中;F8随时停止 / 启动全部标靶行为,无需打开面板,已有和新放置标靶沿用全局状态。F6面板也提供一键启动 / 暂停并返回游玩,列表可单独覆盖某个标靶的行为。启停不重置生命、等级、增益、技能冷却和复活计时。F7、F8可在F2按键设置中重绑。上述编辑只作用于当前创造者对局。 检查:`tests/creator_roster.gd` 覆盖真实击杀、正常复活、永久终结、完整外观清理、列表增益和角色编辑、删除、自身保护、准星F7及游玩F8和实际按钮输入;图形运行支持 `-- --capture-root=<截图目录>`。 ### 普通对局开局英雄数量 F2「人类 → 基础与移动」可设置开局英雄数量(`initial_hero_count`)。-1沿用模式默认:普通生化1名、32人感染Ⅱ2名;0关闭随机英雄,正数指定总数,超出时按存活人类数量截断。指定自己为英雄会计入总数;数量为0时仍保留主动指定的自身英雄身份。英雄与母体独立抽选且不重复,新设置只影响下一局;创造者模式继续手动设置角色,大灾变不自动抽选英雄。 检查:`tests/initial_heroes.gd` 覆盖真实对局人数、0/默认/上限、指定自己、32人模式与F2草稿;`tests/mastery_beacons.gd` 覆盖密集精英标记、穿墙光柱、疾跑者例外与取消清理。