如何使用 AI 制作类似《过山车大亨》的游戏

设计两个游乐设施的排队区域,并重放指示牌如何改变游客的登车选择,同时保持游客到达时间和设施容量不变。

Seele Editorial Team更新于 2026年11月11日

制作一个拥有两个游乐设施、一条路径分岔和少量到达游客群体的原创主题公园模拟游戏。在虚构的 Alder Pier(榆树码头),风筝过山车(Kite Coaster)会先满员,而灯笼旋转木马(Lantern Carousel)仍有空位。分岔口处的指示牌可以将灵活的游客群体引导至旋转木马,在他们进入任何排队区域之前。

保持游乐设施容量不变,并重放相同的游客到达情况。这样你可以确切看到哪些游客群体改变了路线,哪些登车了,以及在模拟停止时哪些仍在等待。

从一个分岔口和两个游乐设施开始

一个原创的海滨公园分岔口,分别通向过山车和灯笼旋转木马
Alder Pier 是一个虚构的双游乐设施公园。分叉口的设计使得排队分配情况一目了然。

Atari 的 RollerCoaster Tycoon Classic 官方页面 致谢了 Chris Sawyer,并描述了建造游乐设施及为游客运营公园的内容。利用这一广泛的管理前提来框定一个具体问题:不同的到达路线是否能更好地利用你现有的游乐设施?

让 Kite 和 Lantern 从空队列开始。每个游乐设施在每个 tick 最多可搭载两批游客。如果只有一批游客在等待,则搭载一批;如果队列为空,则不搭载。在此测试场景中,每批游客占用一个槽位。这些数字描述的是游戏规则,而非真实游乐设施的运营情况。

将到达路由与登车过程分离

八批游客在三个 tick 内到达分叉口。A、E 和 F 是灵活的。其他所有游客都想去 Kite。当标志关闭时,将所有到达的游客送往 Kite。当标志开启时,仅将灵活的到达游客送往 Lantern。一旦某批游客加入队列,他们将一直停留在那里直到登车。

Tick到达顺序灵活游客
1A, B, C, DA
2E, F, GE, F
3HNone
一个导览牌立在两条原创游乐设施的分岔路口
在分岔路口应用该标识。保持标识状态可见,但不改变已在排队队伍中的游客路线。

在登车前处理所有到达的游客。将每个游客队伍添加到其指定的队列中,然后优先让最早到达的队伍登车。记录哪些队伍已登车,哪些仍在等待。在追踪日志中保留队伍 ID。两个调度方案可能显示相同的队列长度,但登车的是不同的队伍,这会掩盖先进先出(FIFO)错误。

登车后读取队列

将该表格视为来自同一空公园的两段重放。等待指的是登车步骤后仍在排队的人数。登车前的队列是另一种读取方式。

Tick标识关闭,Kite 登车Kite 等待中标识开启,Kite 登车标识开启,Lantern 登车Kite 等待中
1A, B2B, CA1
2C, D3D, GE, F0
3E, F2HNone0

在任何登车步骤之后,Lantern 都没有剩余排队队伍。当指示牌关闭时,六组游客登车,G 和 H 仍在等待。当指示牌开启时,五组游客登上 Kite,三组游客登上 Lantern,没有游客在等待。到达时间表和每个游乐设施的两个登车名额始终保持不变。

游客沿着虚构的 Alder Pier 的两条游乐设施通道移动
这两条通道展示了游客如何使用这两个游乐设施。请使用追踪数据获取确切的游客组 ID 和队列长度。

为了快速调试检查,请在第二刻(tick two)基线登车前读取 Kite。队列必须是 C, D, E, F, G。如果 E 和 F 先登车,说明新到达的游客被排在了积压队伍之前。如果只记录了两组游客在等待,请通过比较排队的五个 ID 和已登车的两个 ID 来找到缺失的游客组。

向 AI 提供完整的公园固定数据

从单步控制和可读的队列日志开始。此提示词提供了首次构建所需的数据和断言。

构建一个名为 Alder Pier 的虚构浏览器公园管理游戏。
使用两个初始为空的 FIFO 队列:Kite Coaster 和 Lantern Carousel。
在 tick 1 之前,为整个运行过程选择一个固定的指示牌设置。默认为关闭。
到达顺序:tick 1 A B C D;tick 2 E F G;tick 3 H。
A、E 和 F 是灵活的。其他所有人都想玩 Kite Coaster。
到达时,如果指示牌关闭,将所有游客组路由到 Kite。
如果开启,将 A、E 和 F 路由到 Lantern,其他人路由到 Kite。
按顺序添加到达的游客。游客加入队列后不要移动他们。
每个 tick,在所有到达之后,从每个队列中登车最多两组,按先来后到顺序。
记录每个登车步骤后已登车的 ID 和仍在等待的 ID。
指示牌关闭:Kite 登车 AB, CD, EF。Kite 登车后的计数为 2, 3, 2。
指示牌开启:Kite 登车 BC, DG, H。Lantern 登车 A, EF, 无。
指示牌开启:Kite 登车后的计数为 1, 0, 0。Lantern 总是清空。
三个 tick 后停止。重置会清空队列和日志,并关闭指示牌。
包含步骤按钮、指示牌状态、键盘控制和原始公园艺术。

从重置状态开始逐步检查这两项设置。确认有相同的八组游客到达,已登车的游客组不会再次出现,并且在第三帧时,每组游客要么已登车,要么正在等待。阅读首次构建指南以了解基于提示词的工作流程。

在 SEELE AI Game Maker 中构建 Alder Pier 的排队区域,并在添加更多路径或更改游乐设施吞吐量之前,验证这两份日志。

常见问题

我的第一个公园模拟游戏应该包含多少个游乐设施?

从两个游乐设施和一个路径分叉开始。让其中一个游乐设施出现积压,而另一个有空余容量,然后更改单一路由规则。两个游乐设施可以让你在无需完整地图或游客经济系统的情况下,比较需求和可用容量。

在排队追踪中,“等待”是什么意思?

在此测试用例中,它指的是游乐设施登车后剩余的游客组。单独统计登车前一刻的队伍长度。在两次运行中使用相同的测量点,以确保比较始终包含相同的到达和登车步骤。如果你同时显示这两个读数,请清晰标注它们。

我如何测试排队是否按到达顺序登车?

记下游客组 ID,并在每一帧比较待处理队列与已登车列表。在基线第二帧时,C 和 D 应该先于新到达的 E、F 和 G 登车。检查 ID 可以发现总数统计可能遗漏的顺序错误。

在测试指示牌时,为什么保持容量不变?

保持容量固定可以隔离路由的影响。两次重放都以相同的到达情况和每个游乐设施两个座位开始。如果你之后要测试额外座位,请开始一次新的运行,并仅更改登车上限,以便每个差异都有明确的原因。

SEELE AI

将这份指南变成可玩的作品。

先明确创作需求,再在 Seele AI 工作区中迭代。

开始创作