动态特感难度:按队伍 PPM 定档
5 月 17 日按在场真人 PPM 平均值自动选简单到极限五档,出门锁定。7 月又修了参数串模式、Hunter 磕头和定档过早的问题。
annehappy_dynamic_ai_difficulty 在出门前按当前真人生还者的个人 PPM 算术平均定档。每个人权重一样,高积分或长时长不会单独把整队拉高。出门后本回合锁定,投票和数据变化要等下一回合。
五档:简单、普通、困难、专家、极限。当时样本分位 P60=30.89、P75=43.23、P90=63.70、P95=77.57。季度 PPM 因为季度时长上线晚,默认不用;完整季度之后可以开 ah_ai_dynamic_use_quarter_stats。阈值也可以从 ai_dynamic_ppm_thresholds 读每日预计算分位,失败就回退 cfg。
只改特感和 Tank 行为,不改刷特数量、间隔、距离、传送。锁定后按间隔重刷当前档 cvar,避免旧投票把普通档盖成极限。投票菜单的 hard_on / crouch_on 直改入口删了,改成「固定特感难度」里投 sm_aidiff 0-5。!aippm 看当前 PPM 和锁定状态。!xx 会显示 动态难度[自动-专家] 这种字。
极限档 Hunter 开 convert_leap 和 crouch_pounce,非极限档关掉,避免残留。极限 Tank 从最初高压削了一点,投石和爬梯回到专家档。coop 不启用这套投票。
7 月那几次热修
硬编码 level0 把 AnneHappy 参数盖到 1vHunters、Alone、WitchParty 上了。改成各模式配置跑完再记实际 Cvar 基线,切档、换图、卸载时恢复。简单到专家档里误加的 z_lunge_up 0 一类伪基线删了,旧 ai_hunter_2 不再原地飞、反复磕头。
基线扫描漏了后面的难度章节,现在扫 level1 到 level6。旧 Boomer 上抬之后还可能留着向下俯角,朝地面喷;瞄准和转向至少留 5 度仰角。控制台 / RCON 的 sm_aidiff 不再被出门锁定拖到下一回合。
自动难度曾在 round_start 就把 PPM 锁死,后来切旁观的人还留在快照里。现在回合开始只是临时结果,安全区内名单变了就作废,第一个人出门时再按当时还在生还者里的真人算一次。旁观和 Bot 不参与。