游戏记录复盘·多层配方与已有半成品:练习14
这份独立练习关注多层配方与已有半成品。它提供明确的虚构规则和一段完整记录,适合先自己判断、再核对每一步。所有数据只用于学习机制,不代表任何具体产品的实现;实际规则有变化时,需要重新建立记录。
本例规则与输入
一件装置用3个部件B和2个部件C。B每个用3矿石;C每个用3矿石和2木料。一次配方只产出一件,材料没有损耗,现有物品均可直接使用。
目标装置6,现有装置0、B8、C3;基础材料数量充足,只计算此次需消耗多少。
记录方法
制作目标可能先需要半成品,但仓库中的半成品可以直接抵扣需求。把所有层级一律从零展开,会高估基础材料消耗。
按目标向下逐层抵扣现货,只展开缺口。不同物品的单位不能相减,现有最终成品也要先从本次目标里扣掉。
逐条核对
先抵扣现有装置:还需制作6件,不能把目标6全部重做。
装置层展开:需要B共18个、C共12个。
B层抵扣现货8:新做10个,矿石消耗30。
C层抵扣现货3:新做9个,矿石消耗27、木料消耗18。
两条路径矿石合并:30+27=57;B不消耗木料,木料仍为18。
制作和组装后,部件B剩0、C剩0,装置最终6件。
结果及另一种检查
基础材料共消耗矿石57、木料18;新做B10个、C9个、装置6件。
可以反向核对部件守恒:原库存加新制作,减去组装消耗,应等于剩余库存。矿石会经过两条配方路径进入装置,合并时只合并基础材料,不能再把部件数量也算作矿石。
练习建议
动手时,把纸分成输入、操作前状态、操作后状态三列,先不要看最后答案。出现差异后从第一条不同的记录开始检查,而不是只改末尾数字。若第一处分歧还没解释清楚,继续算往往只会把同一个错误传到后面。记录单位、正负方向和是否包含边界,也能让别人复核你的过程。
复习时只改一个条件,例如改一条事件、一个初始值或一次记录,先预测哪些后续行会受影响,再重新计算。把保持不变的部分也写下来,才能区分真正的机制变化与偶然的数字变化。练习完成后,可尝试用另一种办法核对总量、边界或最终状态;两种方法一致,比只重复原来的运算更有帮助。
