[MC]全物品仓库单片与物品排布参考(1.12.2JE)

编者意见:
人机交互工程是全物品仓库的核心。
本文所说的“全物品仓库”就是现在你脑子里想到的那个“全物品仓库”,当然不是字面意思,而是现在圈内流行的意思,就是那个意思,你肯定明白的,封面那个东西,没有别的意思= =
传统全物品仓库的设计重点主要是单片结构、系统流程、物品排布。一些其他教程中可能只提到了前二者,然而根据我个人的设计体验,物品排布也是非常值得重视的一部分。
本文只讨论单片结构的部分内容和物品排布的大多数内容,即本文几乎不涉及任何红石电路
物品排布需要在分析单片结构特点的基础上考虑,在以物品属性简单分类的同时特别注重物品用途的关联。对于多属性、多用途的物品,要力求平衡、兼顾(可以采取适度妥协的弱相关模式),在发生冲突时舍弃属性而遵循用途。通过交错布局、环境背景关联等方式提高各物品的视觉对比度(专治强迫症),使用户能够快速而精确地辨认物品。不盲目追求物品归类布局的严格性,但要尽量追求便捷性。
1. 单片结构
每个单片包含2*4种物品,图片展示的是其中半边的电路结构

1. 使用双箱/三箱结构的原因
在1.12.2及更早版本中,箱子不能相邻放置,因此需要将陷阱箱和普通箱子交替相邻放置。陷阱箱打开时会发出持续信号,锁住漏斗。当玩家打开陷阱箱查看物品余量时,箱子后面紧邻的漏斗就会停止工作,这会导致分类器停止工作,降低分类效率。
为了解决这个问题,需要在展示界面的箱子后方再连接一个较大容器作为缓存,以便在陷阱箱打开时分类器仍能正常工作;考虑到缓存器前后物品流速守恒,保险起见,选用与终端容量相等的缓存器(即一个相同的大箱子),从而保证能应对较极端的情况。
普通箱列并不需要这样的缓存机制,但为了保证仓库整齐美观以及降低施工难度,仍采用与陷阱箱列相同的结构。
最上面一行的三箱就是图一乐,可以说是为了把空间填满,也可以说是为了满足大容量储存欲望,实际上完全可以改成双箱(甚至箱子+投掷器)。
2. 侧面展示
在1.13及以后版本中,物品展示框可以放置在方块的任何一面,包括上下表面;在1.12.2及以前版本中,物品展示框只能放置在方块的侧面,这导致新版本流行的很多单片方案很难在旧版本中使用:

由于这一特性的局限,本文发布的单片结构每个位置都可以从侧面展示方块或物品。有相当多的物品没有对应的方块,这些物品都必须通过物品展示框才能展示,该方案保证物品排布具有更大的自由度。

这样布局的局限性是每个单片只能存放4*2=8种物品,密度不高,导致仓库整体长度增加。在1.12.2中,物品种类还不是很多(约500种),所以仍然可以接受;在新版本中就必须考虑更高密度布局了。
3. 特殊方块位
全物品仓库实际上储存的是广义上的全部物品,包括方块对应的物品。为了避免物品展示框造成巨量卡顿,往往会将物品对应的方块直接摆放出来,其中包括一些特殊的方块。
本文方案中,第1,3,4层均不能放置实体方块,因此物品排布时需要尽可能将非实体方块(包括物品展示框所需的任意非实体方块)集中置于第2层;第1层(最下层)是变种最多的位置,专门用于放置各种性质特殊的方块:
只能放在地上的方块、两格高的方块(其他位置都只有一格,且都没有完整的地面)

沙子(重力型实体方块):第3,4层无托底结构,第2层不能放实体方块,所以只能放第1层

植物或类植物方块(蘑菇不是植物x),这其实也算特殊的地面依附型方块

音符盒、唱片机、铁砧:这些怎么放都可以,但为了区分,必须展示出上表面(我已经预感到评论区有人想说某个材质包,但这里的设计原则是保证不加修饰的纯净原版也能正常使用)

4. 部分方块的视角设计
这个单片采用了比较友好的人体工学设计,从玩家视线起点到各个箱子的距离基本相等,大多数情况下使用体验是比较舒适的,但也会有一些小问题。
半台阶与楼梯的区分是一个很重要的设计要素,栅栏/墙壁类方块、侧面依附型方块也需要减少对视线的干扰。这些其实都是物品排布的问题。
5. 物品填充数量
根据物品分类器的结构可知,第1层物品需要至少1+64个填充物(41+64是稳定填充量,但实际上只要填充1+64就可以保证稳定工作,因此取施工时的最小值,下同),而第2,3,4层仅需1个填充物。由此可见,最下面一层不宜存放贵重物品。
在我的设计中,最下面一层的贵重物品只有一种:唱片机(合成需要钻石)。这其实是我设计中的一个失误(是xinbing发现的!),我暂时还不知道怎么解决(
2. 物品排布
物品排布方案是本次的重点内容,是以更好地服务长期用户为目标而精心设计的,但新用户需要一段时间的适应(这是xinbing说的,虽然原话不是这样,但我觉得确实是这个意思);这里的长期用户当然也包含设计者本人(我自己x),因为设计的过程就是高强度使用的过程。
以下叙述和讲解流程基本上符合我设计时的思考过程。
在物品归类方面,圈子里比较流行方法至少包括按物品属性分类、按物品用途分类等多种分类或分区方式(当然也有按物品id或字母顺序分类的方式,由于我个人对这些异端分类方式非常厌恶,所以此处不讨论)。其中,物品属性和物品用途大致相关,但也有很多并不重合,这是我在设计中面临的主要问题。
在设计初期,我也打算采用物品属性分类的方式,具体表现是将物品按照属性归到各个大区,每个大区内属性相同或相近。这种设想看似美好,实则尴尬,因为有很多物品是多属性的,并不能简单地归为某一属性;当然,总体上可以试一试。
1. 石头、土壤、矿物
这一部分是我最先考虑的,因此是设计中难度最小的部分(越早设计的部分难度越低)。
石头可能有些混乱,包括主要包括石砖、圆石、石头等。砖与黏土相邻是因为物品属性,其他同理。石英的布局形状比较诡异,半阶和楼梯的布局在一般人看来很可能异常混乱,但这其实是我故意用来提高对比度的做法。与美观相比,便利性——定位速度和准确度才是最重要的,当你享受了这种便利之后,再看也会觉得美观。
矿物是一类具有鲜明层次的物品:原矿、矿物块、矿物基本料(锭)、矿物变种料(木炭、粒)。原矿和矿物块比较珍贵,而第一层更应该放置最便宜的变种;红石矿的相关下游产物都是红石元件,矿物只有这么孤立的一个;青金石是染料,因此矿物旁边可以直接与16种染料相连。

2. 染料与染色物品
染料是第一类棘手物品。玩过旧版本的都知道,在1.13.2或更早版本中,除了用花和仙人掌制成的专用染料以外,也有一些染料完全就是其他属性的物品:青金石属于矿物,可可豆属于植物,骨粉属于怪物掉落物,墨囊属于动物掉落物;这些类别并不相同,然而这些物品同属于染料,又必须放在一起。我不打算轻易采用某一物品占用两个位置的粗暴解决方案,所以必须采取比较艰难的方式:将矿物、农作物、怪物掉落物、生物掉落物这四个大类以染料为纽带摆放在相近的位置。实际上我采取了略微妥协一些的方案,这和之后整体策略变更有关,暂时不谈,请耐心看完下文。
这种操作还有另一个依据:1.12.2中,彩色物品主要包括染料、玻璃、陶瓦、带釉陶瓦、玻璃板、羊毛、地毯、旗帜、混凝土、混凝土粉末,共10种;去掉我不打算经常使用的旗帜,还剩9种;再去掉性质极其特殊的染料,还剩8种,刚好可以放在彩色物品专用的16个单片中。
染料内部有一些微妙的安排:将相同色系的染料相邻放置,例如绿色-棕色系、粉色-紫色系、黑白系、蓝色系、红橙黄系。

细心的读者在上图中发现了两个异物:陶瓦和玻璃。将它们安排在染料附近,完全是因为用途方面的考虑:作为染色底物,用来被染色。如果把另外16种颜色的陶瓦、玻璃等各种方块都放置在染料旁边或许也可以,但这会挤占很多空间,增大染料和农作物之间的距离,所以我暂时没有采用这种做法。
从这里开始,依照用途而非属性分类的策略已经逐渐凸显出来。这里的用途并不是用途的类别,而是用途的关联性:在使用某一物品时,往往会同时使用特定的另外一些物品,这种使用当然也包括“合成”。染色底物与周边物品的关联性很弱,看起来很突兀,然而强行关联只是面子工程,使用时的便捷性才是更重要的。
3. 木制红石元件
在1.12.2-中,这主要指的是栅栏门和木门。显然,它们既属于6种木制品,又属于红石元件。一个自然的解决方案是将红石元件大区和树木大区(位于石材区的对面)相邻放置,这并不是很棘手的问题,但一些细节值得考虑。
在树木大区中,每种树木预留了8个位置,分别用于放置原木、树叶、树苗、木板(本体、台阶、楼梯)、木栅栏,这7种显然不是红石元件,剩下一个位置则面临栅栏门与木门的抉择:哪个更应该归为红石元件?在此列举我实际考虑的若干理由:
这涉及应用层面的分析,即根据物品用途分类。根据经验,对于红石元件来说,似乎栅栏门的使用频率比木门更高,而木门更接近建筑装饰方块:铁门比木门更像红石元件,但栅栏门没有替代品。
同时也有一些物品属性或方块特性的理由:木门是两格高的方块,应优先考虑占用第1层,这势必侵占第1层其他更宝贵的地面红石元件位置;在树木大类中,只有木门和树苗必须放置在第1层,当然可以顺手安排。
再具体考虑一下树木类方块的微调:木栅栏形成连接材质比较好看,因此决定与木板(实体方块)相连。考虑到视觉对比度的问题,木台阶和木楼梯可以分开放置。栅栏门在红石元件中属于不太常用的方块,综合考虑使用频率和方块观感,将其置于红石区的最上面一层。
对于红石元件,由于地面依附型物品比例较大,占用了较多的横向空间,导致红石区、树木区之间出现一片空缺。考虑物品属性的关联,将自然生态类方块——海绵、冰雪以及海晶系物品置于两区之间。海晶系物品的摆放其实还与染料有关,之后再谈。

在1.13+版本中,木质红石元件的种类更加丰富,这个问题还有很多继续探讨的空间。
4. 食品、药品、特殊建材
这依然与染料有关。四种特殊染料中,青金石已经安排好了,接下来先考虑棕色染料——可可豆(1.14+玩家可能会说“这不是两种东西吗”,然而在旧版本这真的就是同一种东西)。可可豆是农作物,与农作物相关的是食物和“花草”(装饰性植物),与食物相关的是炼药物品——金胡萝卜既是药品又是食品,仅此一条就足以联系两大类。这些物品就按照一定次序安排在染料旁边,保证可可豆与其他农作物/食物之间较近的距离。由于可可豆作为农作物并不常用(用于合成cookie),而更常见的用途是作为染料,因此可可豆完全没有必要与农作物直接相邻,只要别太远就可以了。
说到炼药,就不得不想到炼药台的来源——地狱。岩浆膏是炼药物品,可以合成作为地狱建材的岩浆块,地狱疣块同理,这些东西都来自地狱堡垒——由地狱砖组成的建筑。地狱建材与矿物区的物品有好像有着一些联系,尤其是萤石、黑曜石、灵魂沙。
提到地狱,就又想到下一个维度:末地。作为药品的龙息是末地物品;爆裂紫颂果与烈焰棒可以合成末地烛,爆裂紫颂果本身可以合成紫珀块,紫颂果本身又是食物。
综合考虑以上因素,从染料向右的顺序如图所示:

5. 杂项方块与红石元件
杂物就是各种杂乱的物品,种类繁多,用途各异,基本上很难良好归类,是最疼痛的问题之一。杂物包括各种功能性方块,也包括杂七杂八的功能性或装饰性纯物品。
功能性方块和红石元件有较密切的关系,很多都是红石工程中常用的方块,例如箱子、末影箱、陷阱箱、炼药锅、粘液块、牌子,自然可以把它们放在红石区附近。
红石元件的摆放也有一些重要细节,主要是红石特性的控制。例如:用红石块锁定漏斗,用红石火把锁定两种活板门,用拉杆锁定投掷器和发射器。这些措施除了控制它们自己以外,也是为了屏蔽它们附近陷阱箱的作用。TNT故意放低一格,在下方留出稳定坠落空间,避免意外点燃TNT炸毁仓库。

6. 杂物,以及杂物引发的思考
杂项物品非常复杂,有一些其他可归类的物品也令人尴尬:潜影壳、皮革、羽毛似乎都可以归为生物掉落物,然而潜影壳的几乎唯一用途是与箱子一起合成潜影盒,皮革、羽毛与书有关,看来都可以属于杂物。
几乎每一种杂物都有多种物品属性,然而仔细考虑便可发现:物品属性仅仅反映杂物的来源。按照物品属性或特征分类,符合我们逻辑上的基本认知:看到海晶石砖就想到海晶碎片,看到瓶子就想到龙息、附魔之瓶,潜影壳似乎属于末地,火把和红石火把似乎应该相邻……
按物品属性分类可以让人很容易猜到物品所在的位置,从而使新用户很快地找到想到的物品。然而,这有必要吗?
总体来说有必要,但没有那么必要,甚至有些地方完全可以放弃这种策略。我们可以让新用户立刻猜出潜影壳和箱子的位置、海晶碎片和墨囊的位置、骨粉和树苗的位置,然而这每一对中两个物品如果相距甚远,等到用户使用熟悉之后就会非常麻烦。
海晶碎片一定要和海晶方块相邻吗?实际上没有必要。既然是自动分类仓库,在合成之后就可以直接扔进水道(物品输入端完全可以伸入仓库内部,而不仅仅设置在一个大厅)而非手动装箱;如果仅仅贪图手动装箱时的便捷,反而让原材料归属不同,会造成更难解决的硬性麻烦。因此,合成原料与合成产物不必相邻;但合成原料与合成原料必须相邻。
在此,我对各类归属并不明确的物品部分放弃了物品属性的考量(除非物品属性与用途密切相关,比如染料),而是以物品用途的关联为核心原则;对于属性明确的物品,也按照用途将各类物品的距离尽量拉近。这种做法势必打破物品属性分区的整齐度,对新用户不太友好,但应该可以带来更好的长期使用舒适度。
物品用途其实也很难精准穷举,不可能每组关联物品都能相邻,但可以尽可能地拉近距离,达到一定程度的平衡。
海晶碎片属于海晶系,墨囊属于染料类,用于合成暗海晶石砖:

潜影壳与箱子、拌线钩与箱子、粘液球与活塞(粘液球与粘液块有属性关联):

生存常备物资:食物、珍珠、烟花火箭(有些服务器的全物品仓库居然把这些东西分到两翼储存,太没人性了.jpg)

水(盔甲架)、瓶子、空桶、炼药锅;酿造台、炼药原料。唯一的缺憾是没有放无限水,但其实建造配套打水机即可解决水桶问题。

木棍与木头隔了一个红石区,其实不算太远,因为这个仓库是一体式的,没有中心大厅。黑曜石、末影之眼同理。

碗不属于杂物,甚至不属于工具物品,它就是食物,还有其他用途吗?分类不是看它长得像什么,而是看它哪里好用(

7. 花草、猎物、彩色方块
这些就是收尾的内容了。一体式仓库布局下,无论是用途关联还是属性关联都不是非常致命的问题,关联物品之间的距离和一个中心大厅比起来小得多。所以,这些东西随便安排即可。


8. 物品的标识
物品的定位需要清晰而精准,决不能出现盯着瞅半天才能认出来的尴尬情况。这就需要在对比度和相关性提示方面精心安排。下面的图片专门用来治强迫症——不舒服就对了;内心毫无波澜说明用户看一眼认不出物品,那样的仓库是不合格的。
高对比度主要体现在台阶和楼梯的区分。这里采用了一个通用套路:将两个不同材质的台阶、楼梯交替放置,互相凸显。

如果没有交错对比提示,我可能没法一眼认出地狱砖楼梯:

圆石和石砖:高强度交错布局,保证区分度。很多时候,看物品并不是盯着看,而是结合上下文(周围物品)猜测或联想物品种类。良好的设计应该有助于提高猜测速度和精准度。

植物也可以采用相似策略,比如红沙种甘蔗(绿色),黄白沙种枯灌木(棕褐色);左边的草和蕨就没办法了,真看不出来,只能用展示框:

对于类似于方块-碎片的对应关系,可以采用背景提示:

黑乎乎的一片是什么?肯定能猜出来是地狱砖和相应方块;紫颂果主要是为了好看,区分度意义不那么关键。

除了三种碎片,石英块也值得区分:竖纹石英两面不一样,所以两面都要看到;石英矿和地狱岩、石英碎片连接;纯石英块最没特色,所以用两边极特殊的东西衬托;錾制石英应该能看出来,不用衬托。

树叶-树苗-原木-木板,加起来肯定认得出来,但树叶单独拿出来很难认:

食物生熟对应、龙蛋和鸡蛋:

在物品标识方面,物品属性是有利用价值的,但仅限于一些属性明确、辨识度低的物品和方块。
物品标识也与底色装饰有关。在临时设计中我采用了颜色比较干净的石英,但在旧版本中石英块是比较珍贵的不可再生资源,不适合大量使用(除非允许羊驼复制物品,这可能很爽,但是我认为这不好,至少我自己的存档不打算使用,其他场合肯定由相关人自己决定);目前我可能考虑地狱砖(虽然不可再生,但是储量极度丰富)或者石头类方块,这可能导致一些物品的布局需要微调。
9. 你们最想要的
经过以上仔细讨论,我最终确定了这个全物品仓库的物品排布方案,如图所示(Excel表格):

通过表格边框可以清晰地看出物品属性分区。这里的物品名称是1.12.2版本的显示名称,而不是物品id或序号,因此会有一些重名的现象,我用花括号做了区分标记。如果是1.13+版本就没有重名问题了。
通过表格也可以看出此排布方案的其他特点和问题。我现在也想到一些可能需要解决的问题:16色物品能否融入储存?关联度能否进一步提高(藤蔓和圆石、石砖还没有关联)?关联物品的取用便捷性能否继续提高?以及,
有无人想在1.13+或者更高版本按照本文思路(开篇总结?)设计相应的注重便捷性的物品排布方案?
新版本的单片结构大概需要5*2或者6*2,这很可能比4*2结构更有利于物品排布。
至于本文的作品,实际上仓库系统设计甚至都没有开始(如果以后我做完了,这句话就作废),所以我不一定会发存档。

文章里可能会有错别字或者低级语法错误,可能是我没发现,也可能是发布之后发现但不想消耗修改次数。在发布之前我并不是很愿意列文虎克,我肝不动。