最后3秒的一次出手,同时经过十个系统

先设定一个模拟场景:乐鱼体育里一场玩家生成的3v3半场篮球,第4节还剩3秒,蓝队48比50落后,玩家操控的蓝队7号在左侧底角接球,准备压哨三分。对面是AI控制的橙队。

这一个回合里,发生了这些事:7号站在哪里、脚有没有踩线,是Map的问题;球出手后的弧线和打框反弹,是Physics的问题;出手时间是否早于终场、这一球算2分还是3分,是Rule的问题;7号此刻的体力和投篮能力,是Player的问题;场边裁判是否吹犯规、记分台是否确认,是NPC的问题;“接球”“起跳”“出手”“封盖”这些动作被记录下来,是Event的问题;橙队防守者要不要扑出去、扑的时候会不会犯规,是AI的问题;比分从48变成51,是Score的问题;这一球之后要被标为关键回合,是Replay的问题;比分反超、时间归零以后进入结算而不是继续开球,是Game Loop的问题。

如果把AI引擎理解为“一个会做决策的模型”,就会漏掉大部分内容。AI做出的每一个决策,都依赖其他九个系统给它的状态。

空间和物理:AI先得知道“底角”意味着什么

Map系统给AI的不应只是坐标,而是带语义的区域:三分线内外、底角、弱侧、禁区、边线。底角三分在很多篮球规则里距离更短,这是空间语义,AI需要知道底角是一个高价值投篮点,防守时要优先照顾。

如果这张场地是玩家生成的,比如把篮筐挪到了场地中央、改成双向进攻(模拟示例),那“底角”这个概念可能根本不存在。AI引擎不能写死“底角要防”,而要从Map系统读取当前场地的投篮价值分布。

Physics系统决定球的飞行、篮筐和篮板的碰撞、球员之间的身体接触。AI在防守扑出时,需要估计自己以当前速度能否在出手前到位,以及急停距离够不够避免撞人。这个估计必须用和实际物理一致的参数,否则AI会做出看起来合理、落地却总是慢半拍的决策。

规则和比分:AI必须知道这一球值多少

Rule系统告诉AI的是:当前比分差2分,一个三分球会让蓝队反超,而一个两分球只会打平进加时。这个信息直接改变防守策略:落后方需要三分,领先方的最优解是宁可让对方投两分,也要封死三分线外。

一个不理解规则的AI会平均用力,每个位置都差不多地防,最后恰好在底角漏人。玩家看到的现象是:AI在最关键的一球上“犯傻”。这不是决策模型不够强,而是它没读到“比分差2、剩3秒”这个组合意味着什么。

Score系统则要保证比分更新的时机和规则一致。压哨球的判定依赖出手时刻和终场时刻的先后,如果Score在球落网时才读取时间,就会把一个有效的压哨球判成无效。

球员、NPC和AI:谁在做决定

Player系统维护每名球员的属性和实时状态:体力、投篮能力、当前是否在起跳中。AI防守时需要知道7号的底角命中能力是高还是低,才能决定扑不扑;如果7号已经连续打了很长时间、体力下降,AI也可以据此选择更保守的防守。

NPC在体育游戏里常被忽略。裁判、记分员、观众、场边教练都是NPC。裁判NPC决定犯规判罚,它的判罚尺度会影响AI防守者敢不敢伸手。如果玩家在乐鱼体育的MOD里把裁判改成“宽松尺度”,AI应该能读到这个变化,防守动作可以更积极。

AI系统本身要区分两件事:战术决策和数值能力。AI在最后3秒选择换防、夹击或放两分守三分,属于战术;偷偷提高防守者的反应速度,属于数值作弊。下一代体育游戏AI引擎应该只在前者上变聪明。

事件、复盘和Game Loop:比赛之后的系统

Event系统把连续的比赛切成可以理解的事件:接球、突破、传球、出手、封盖、犯规、得分。AI需要事件流来理解“刚才发生了什么”,比如对手连续三次在底角出手,这是战术学习的原始材料。

Replay系统读事件流,挑出关键回合并解释原因。示例里这个压哨三分,复盘应该能说明:橙队防守者在7号接球前0.8秒做了一次无意义的换防(模拟数据),导致底角空位。关于怎样从一场比赛里找出这类回合,可以看体育游戏复盘的方法。

Game Loop是整个比赛的状态机:开球、进行、暂停、得分重置、节间、加时、结束、结算。它看起来和AI无关,但AI的很多决策依赖它,比如知道下一节是不是最后一节、知道平局会不会进入加时。玩家生成的比赛里,如果Game Loop缺少加时状态,AI就无从判断“打平”和“输掉”的区别。

这里要把“理解”和“运行”分开。AI需要理解十个系统的状态,但真正让比赛按帧推进、处理手柄输入、同步球的位置和比分的是Runtime,也就是游戏的运行环境;碰撞与弹跳由物理引擎计算,进球是否有效由规则引擎判定,文字大模型只在生成阶段帮忙把玩家的描述翻译成规则和设计。AI对手读取的是Runtime里的实时状态,而不是自己去“想象”比赛。

十个系统,AI各自需要读什么

系统 AI需要读取的信息 读不懂时玩家会看到
Map 区域语义、投篮价值分布 在高价值位置漏防
Physics 速度、加速、碰撞参数 扑防总是慢半拍或撞人
Rule得分规则、时间规则、犯规规则 关键时刻策略错误
Player 属性、体力、当前动作 对所有球员一视同仁
NPC 裁判尺度、记分确认 防守动作过于保守或频繁犯规
Event 连续事件和模式 不会针对对手习惯调整
AI 战术选择与数值边界 靠加属性变强,玩家觉得被针对
Score 比分变化和判定时机压哨球判错
Replay 关键回合与原因 复盘只剩统计数字
Game Loop 当前阶段与后续状态不知道加时,决策短视

这张表也说明了为什么AI引擎不能只靠一个文字大模型。大模型能理解“底角三分很重要”这句话,但真正的底角坐标、球的飞行和压哨判定,要由其他系统提供,具体分工可以看为什么文字大模型不够的拆解。

AI行为异常时,按这个顺序查

在乐鱼体育的创作流程里,如果玩家试玩后觉得“AI很奇怪”,与其直接调AI参数,不如先按顺序排除其他系统:

  1. 先查Rule和Score:AI是否读到了正确的比分、时间和得分规则。
  2. 再查Map:玩家修改过的场地,区域语义是否重新计算。
  3. 再查Physics和Player:AI使用的速度和能力参数是否与实际一致。
  4. 再查Game Loop:当前阶段、加时和结束条件是否完整。
  5. 最后才查AI本身的策略和难度设置。

多数“AI犯傻”的问题,在前四步就能找到原因。