1、氧气环境
2、食物制作量既能满足每天的需求,又不会积累过多以至腐烂
3、每天定时开放,避免从遥远的工作地点回家吃饭这种低效率事件
4、因为冰箱和食物盒有取不到食物的bug,这两样东西不能用
基于以上四点试验了几种方案,下面把最简洁的一种分享给大家。首先看图:
最右边的门是公共通道,只有每天早上开启:
最左边的门只有厨师可以自由通过,其他人只能出不能入(防止把没吃完饭的小人关住)。
食物制作部分的电路结构:
每天早餐结束后,时钟会开启电烤炉,厨师进行烹饪工作,食物慢慢累积,最后重量板在食物足够时切断电烤炉供电。
电路结构很简单,关键之处在于重量板临界条件的设置。厨师的重量是固定的30公斤,一份食物(任意种类)是1公斤,如果我们像图中将条件设为“高于33公斤”,最终得到的食物将在2.1—3份之间浮动。有人可能奇怪,不应该是3.1—4份之间才对吗?这是因为重量板的一个bug,会把正烹饪还未成型的的食物重量也加进去,所以地板上实有33公斤的时候,它测出有34公斤,切断了电源。
现在设小人数量为n,一份食物数量为Q,那么每天需要的食物份数m=F(n*1000/Q)。这里F的含义为向上取整。举例来说,有7个小人,主食为烤刺果,那么每天需要食物份数为m=F(7*1000/2000)=F(3.5)=4。我们把重量板设为“高于34公斤”就可以了。注意到m稍微超出了需求一点,这样食物会不会越积越多而腐烂呢?不会的。如果地板上有残留的不到一份食物,那么厨师每天只会制作m-1份新食物,而m-1份略少于需求,终有一天会把残留食物吃光,从下一天开始再制作m份全新食物,这样周而复始的循环。
如果有两种以上的主食,比如3个小人吃烤刺果,3个小人吃霜凉包,那就设两个电烤炉,分别计算临界值即可。如图:
注意这里不要图省事用同一个时钟传感器的信号,会导致两个锁存器的值互相干扰。
发现一个疏漏之处,厨师正做饭的时候,如果有刚吃完饭的小人从左边门出去,他会使重量板达到60公斤以上,出现错误判断。解决方法也很简单,根据实测一顿饭最长不超过90s,即一个周期的15%,所以让电烤炉的激活时刻比右边门的关闭时刻推迟15%即可。
最完美的解决方法,应该是在餐桌和电烤炉之间再设一门,由这个门来控制何时开饭。当此门封闭后,厨房彻底成为厨师的个人区域,重量板就不再受到其他人干扰了。
自从用了这种设计,就再也没有操心过餐厨问题了,感兴趣的话不妨一试。
缺氧专题
- Oxygen Not Included
- 发行商:Klei Entertainment
- 平台:PC
- 类型:模拟经营(SIM)
- 发售日期:2017年5月18日
- 进入专题>>
相关文章