Sports Game Creation AI · Text-to-Game
乐鱼体育游戏创作:用自然语言快速生成体育小游戏和可玩原型
一句“生成一个三分钟一局的街头足球小游戏”,能不能变成真的可以玩的东西?本栏目按“提示词→设计→地图→规则→可玩版本”的顺序,讨论AI怎样补全玩家没说出口的部分,以及生成素材和生成游戏之间的距离。
用户在乐鱼体育里输入:“生成一个三分钟一局的街头足球小游戏。”这句话里明确的信息只有三个:项目是足球,风格是街头,单局时长是三分钟。至于几对几、场地多大、有没有守门员、进球后怎么重新开球、AI对手有多强、界面上显示什么,一个字都没提。游戏创作要做的,就是把这句话变成一个能在几分钟内上手的可玩原型,同时把AI替用户做出的每个决定摆出来,让用户能看见、能改。本栏目的文章沿着“提示词→设计→地图→规则→可玩版本”这条路径展开。
一句话之后,系统先拆出什么
以街头足球为例,乐鱼体育的生成流程会先把提示词拆成九个部分,每一部分都有一个明确的产出:
- 场地:约为标准球场四分之一大小的硬地,四周有围栏,球可以反弹。
- 球员:每边3人,不设固定守门员,玩家控制其中一人并可切换。
- 游戏目标:在三分钟内比对手进更多的球。
- 比赛规则:无越位,碰出围栏外由对方发边线球,进球后由失球方中圈开球。
- AI对手:会抢断、传球和射门,难度分三档。
- UI:比分、倒计时、当前控制球员标记、传球和射门按钮。
- 计分:每进一球得1分,可选开启“远射得2分”。
- 胜负条件:时间结束比分高者获胜,平局进入“金球”加时,先进球者胜。
- 基础任务:比如“一局内完成3次成功抢断”,用于引导新手熟悉操作。
这张清单里除了“足球”“街头”“三分钟”之外,都是系统补上去的默认值。关于AI如何判断玩家真正想要什么,可以阅读输入一句“做个街头篮球游戏”,AI真的知道玩家想要什么吗。
默认值:AI不能假装提示词已经完整
补全默认值本身不难,难的是怎么对待这些默认值。一种做法是悄悄补上,直接给出结果,用户玩到一半才发现没有守门员;另一种做法是在生成之前连续追问十个问题,用户还没看到游戏就失去了耐心。乐鱼体育采用的是中间路线:先用合理默认值生成一个能玩的版本,同时在侧边栏列出“系统替你做的决定”,比如“每边3人(默认)”“无越位(默认)”,每一项都可以点开修改。只有少数会导致游戏完全不同的问题才会在生成前确认,例如“单人对AI还是双人对战”。哪些问题值得先问,见一句话生成体育游戏以后,AI最应该先确认哪几个问题。
地图:游戏发生在哪里
体育小游戏的地图比完整赛事的场地简单,但同样要服从规则。街头足球的围栏反弹会改变战术,场地如果太大,3对3会显得空旷,AI对手也很难形成压迫;赛车小游戏哪怕只有一条90秒的短赛道,也要有刹车点和超车区;跑酷小游戏需要障碍之间的间距和角色跳跃能力匹配。游戏创作会调用地图生成的能力,但尺寸和复杂度会按“小游戏”的节奏缩小,单局时长越短,地图越要紧凑。
不同运动的游戏逻辑不能共用
足球和赛车看起来都是“比谁更快到达目标”,但游戏逻辑几乎没有重合。足球的核心是球权:谁控球、如何传递、何时丢失;赛车的核心是速度与路线:何时刹车、从哪条线入弯、在哪里超车。下表简单对比几种运动在小游戏中的核心机制,内容为设计参考:
| 项目 | 核心机制 |
常见胜负条件 |
| 足球 |
球权、传球、射门、防守站位 | 限时内进球多者胜 |
| 篮球 |
投篮命中率、篮板、进攻时间 | 先到目标分或限时比分 |
| 赛车 |
速度、刹车、赛车线、超车 | 完成圈数用时最短 |
| 跑酷 | 跳跃、攀爬、节奏、容错 | 到达终点或限时通关 |
| 高尔夫 |
力度、方向、风、落点 | 杆数最少 |
| 网球 | 击球时机、落点、跑位 |
按局、盘计分 |
| 滑雪 | 速度控制、转弯、旗门 |
用时最短且不漏门 |
极限运动类小游戏通常更接近跑酷与滑雪的组合,会额外引入动作评分。更多对比见AI生成足球和赛车游戏为什么不能用同一套逻辑。
AI规则与AI对手
在体育小游戏里,AI做两件不同的事。一件是生成规则:把“街头”“三分钟”这些描述翻译成可以执行的规则条目,并检查它们是否冲突,比如“金球加时”必须配合“进球即结束”的判定,否则加时永远不会结束。另一件是驱动对手:AI对手要看起来像在踢球,而不是完美地计算每一次传球。三档难度通常不是简单地调高速度,而是调整反应时间、判断失误率和配合程度。一个低难度的AI后卫会偶尔放空跑位,高难度的会主动包夹,这样玩家能感受到的是“对手变聪明了”,而不是“对手变快了”。
生成素材不等于生成游戏
很多工具能生成一张好看的球场图、几个球员形象,甚至一段比赛动画,但这些都是素材。一个能玩的体育游戏至少需要八个部分同时成立:地图(Map)、玩家角色(Player)、规则(Rules)、操作输入(Input)、AI、计分(Score)、胜负条件(Win Condition)和游戏循环(Game Loop)。少了输入,玩家只能看;少了游戏循环,进球之后画面就停在那里;少了胜负条件,比赛会一直进行下去。从文字到可玩版本之间到底隔着多少层,从文字提示到可玩体育小游戏需要多少层生成做了逐层拆解。
游戏原型:先能玩,再好看
游戏创作的第一个产出是原型,而不是成品。原型的标准很朴素:能开局、能操作、能计分、能结束。画面可以是简单的几何图形,球员可以没有表情,但三分钟倒计时要准确,进球判定不能有漏洞。在乐鱼体育的流程里,原型生成后会先由测试Agent自动打几局,检查比赛是否能正常结束、AI对手会不会卡在角落、计分是否正确,然后才交给用户试玩。美术、音效和动画可以在规则稳定之后再迭代,这个顺序可以避免把时间花在一个根本玩不起来的版本上。
一次完整的试玩与反馈
以街头足球原型为例,用户第一次试玩的反馈往往很具体:“AI太容易被过了”“三分钟太短,还没进入状态就结束了”“射门按钮离传球太近,总是按错”。这三条分别落在AI对手、规则和界面三层。在乐鱼体育的流程里,系统会把反馈归类到对应的层,只调整相关部分:AI防守的反应时间从0.6秒缩短到0.4秒,单局时长从三分钟改为四分钟,射门与传球按钮的间距加大。改完之后测试Agent再自动打一轮,确认修改没有带来新的问题,比如AI变强以后玩家的平均进球数是否跌到接近零。这种“试玩、反馈、按层修改、再验证”的节奏,比每次都重新生成整个游戏更稳定,也更容易让用户看清楚每次改动带来的差别。
继续修改:第二句、第三句话
一句话生成的只是第一版。用户试玩之后,可以继续说“改成每局五分钟”“把AI难度降一档”“加一个守门员”“场地换成沙滩”,系统会把这些修改应用到对应的层,而不是从头重新生成。修改“加一个守门员”会同时影响球员数量、禁区规则和AI站位逻辑,系统会提示这些联动变化。不擅长描述的用户也可以切换到无代码编辑,直接在表单里改参数。关于这些修改在模型层面如何处理,可以参考体育游戏生成大模型栏目。