要制作一款受Overcooked启发的原创合作管理游戏,请为两名玩家提供一个共享的物品交接点。在这个虚构的剧院门厅小卖部中,备餐员(Prep)持有一杯柑橘饮品和一杯浆果饮品。服务员(Service)需要优先处理柑橘饮品。如果备餐员将浆果饮品放在唯一的传递槽上,服务员暂时无法使用它。团队必须先清空该槽位,才能提供正确的订单。
在添加更多设备之前,先构建这个交接机制。它能让玩家有理由协调他们放置的物品、取回的物品以及何时补充库存。

将一项共享任务转化为你自己的游戏
Ghost Town Games 将原版 Overcooked 描述为一款关于团队协作准备、烹饪和上菜的合作游戏。Team17 的 2016 发布公告也提到了在沙发合作模式中的协作玩法。
采用“一名玩家的工作为另一名玩家的下一步行动做准备”这一通用理念。为你的版本设定不同的场景、物品和规则。剧院小卖部在备餐员和服务员之间只有一个传递槽。两名玩家看到相同的订单队列,其中柑橘饮品在第4拍到期,浆果饮品在第6拍到期。
为两个角色设置一个共享的传递槽
从传递槽为空且两杯饮品都在备餐员架子上开始。每个角色每拍提交一个动作。在两名玩家都提交动作之前不要推进时间。两个动作都在该拍开始时检查相同的状态,然后其有效效果依次结算。无效动作仍会消耗该拍,但不会影响另一角色的有效动作。
| 角色 | 动作 | 该动作检查的内容 |
|---|---|---|
| 备料 | 放置柑橘或浆果 | 选定的杯子位于架子上,且节拍开始时传送带为空。 |
| 备料 | 取回 | 传送带上的杯子与第一份未服务的订单不同。将其放回架子。 |
| 服务 | 上菜 | 传送带上的杯子与第一份未服务的订单匹配。交付一次并推进队列。 |
| 任意 | 保持 | 使用该节拍但不应用该角色的效果。 |

取回和上菜不能同时对同一个杯子有效。一个要求不匹配,另一个要求匹配。放置在空传送带上的杯子也必须等到下一个节拍才能被服务。这些检查让两个角色能够独立行动,同时共享一个槽位。
重放直接交接与首次错误后的恢复流程
先尝试直接下单,然后故意将浆果(Berry)放在传递区。保持两次运行中的订单队列相同。在到期节拍(due beat)上完成服务算作有效,因为游戏在解析动作后才会检查截止时间。
| 节拍 | 直接交接 | 首次错误后的恢复 |
|---|---|---|
| 1 | 备餐区放置柑橘(Citrus)。服务区保持等待。 | 备餐区放置浆果(Berry)。服务区保持等待。 |
| 2 | 备餐区保持等待。服务区送出柑橘(Citrus)。 | 备餐区取回浆果(Berry)。服务区尝试“送出”(Serve),但浆果(Berry)是错误杯子。 |
| 3 | 备餐区放置浆果(Berry)。服务区保持等待。 | 备餐区放置柑橘(Citrus)。服务区保持等待。 |
| 4 | 备餐区保持等待。服务区送出浆果(Berry)并完成。 | 服务区在截止节拍送出柑橘(Citrus)。备餐区尝试放置浆果(Berry)被阻止,因为传递区已满。 |
| 5 | 完成。 | 备餐区放置浆果(Berry)。服务区保持等待。 |
| 6 | 完成。 | 备餐区保持等待。服务区在截止节拍送出浆果(Berry)并完成。 |

在第四拍被阻止的补充之后,两名玩家都应看到柑橘(Citrus)已被送出,而浆果(Berry)仍留在架子上。这是同一拍上的两个结果。如果他们在第六拍再次保持等待而不是送出浆果(Berry),则该运行将以仅完成柑橘(Citrus)结束。
为 AI 设置一个传递区和两个截止时间
请求一个具有两套控制方式和共享订单显示的本地测试用例。包含每个尝试动作被接受或阻止的原因,以便你可以追踪错误的交接。
构建一款原创的双角色剧场摊位游戏。
从节拍 0 开始。备餐架上有一个柑橘杯和一个浆果杯。
使用一个空的共享传递台。柑橘订单在节拍 4 到期,
随后浆果订单在节拍 6 到期。两名玩家都能看到订单队列。
在两名玩家都提交一个动作后推进。将两个动作与
节拍开始时的状态进行核对。备餐角色只能将可用的杯子放置
在空的传递台上,或者取回与队首订单不匹配的杯子。
服务角色可以递送匹配的杯子。任一角色都可以选择等待。
应用有效效果。无效动作会保留另一个效果不变。
结算后,检查截止时间。在到期节拍递送即算有效。
在两个订单完成后,或错过截止时间时结束。将已递送的
杯子从传递台上移走并记一次分。重置备餐架、传递台、
已递送杯子、队列、时钟和待处理命令。
仅提交一个输入,并检查节拍是否保持不变。尝试先递送浆果,然后确认备餐角色能否在同一节拍将其取回。运行直接路径和恢复路径的追踪,并比较节拍四之后的传递台和备餐架状态。分别从正常结束和错过截止时间两种情况重置。
仅在备餐角色可以补充时更改
允许备餐角色将一个可用的杯子放入服务角色在同一节拍成功清空的槽位中。服务角色仍然检查原始的杯子。错误的递送无法腾出空间,且新放置的杯子不能立即被递送。
重复错误优先的路径直到节拍四。服务角色递送柑橘,备餐角色的浆果放置现在填满了腾空的传递台。在节拍五,备餐角色等待,服务角色递送浆果。恢复路径比直接路径提前一个节拍结束。直接路径仍在节拍四结束。
工作表隔离了补充规则。在实际构建中,检查两名玩家是否能分辨出槽位何时再次可用。关于在一次更改后重放构建的指南 可以帮助保持这种比较的专注。
让第一次交接易于诊断
从一个可见的传递台、两个订单和一个清晰的恢复动作开始。使用 SEELE 的 AI 游戏制作器开始你的原创合作管理游戏,并使用两个交接追踪来检查第一个场景。
常见问题
两名玩家如何看到谁可以使用传递台?
为槽位提供独立的可见状态,并在每个角色的控制区附近显示其待处理动作。指示槽位是否被占用以及下一个订单是什么。除了颜色外,还使用形状或标签,以便在颜色难以区分时提示依然有效。
备餐角色何时应该能够撤销交接?
当恢复是谜题的一部分时,让备餐角色可以取回物品。让物品返回到一个可见的位置,并保持动作成本清晰。如果团队可以重试,再次显示下一个订单,以便他们知道应该放置什么。
我可以在没有网络会话的情况下测试这个吗?
可以。使用两个本地控制,它们提交到同一个测试夹具,并在解决前等待两者都完成。这样可以检查队列、补充和截止时间规则。如果以后添加远程游玩,请单独测试断线、输入到达和恢复。
添加第三个订单时我应该改变什么?
首先改变新订单的需求或到期时间。保持传递台和现有控制不变。先重放原来的两个订单,然后检查额外的订单是否在不使恢复过程难以理解的情况下,创造了不同的交接决策。


