Minecraft - 集成养鸡场

目录

养鸡大概是Minecraft里面最省事的养殖业了,只要有鸡蛋就能砸出小鸡,只要有小鸡就能生鸡蛋。不像牵个牛一样还得奔袭万里,甚至遇见夜里把自己埋一晚第二天牛就不见的尴尬。养鸡尽管可以很简单,但是最爽的还是做一个完全自动的养鸡场,砸鸡蛋捡鸡蛋甚至杀鸡都不用自己亲自动手,这是坠吼的!

一个全能型的全自动的养鸡场大概分为如下几个模块:自动收集、鸡蛋传递系统、自动鸡蛋发射器、自动杀鸡器等,下面挨个介绍一下每一个模块的红石结构,以及最终的完整集成结构。

自动收集

自动收集是养鸡场最基本的功能。养鸡场的典型建法是把鸡困在一个格子内,然后在鸡的脚底放上下半砖,下方放上漏斗收集鸡蛋。使用半砖的目除了防止鸡跑出来以外,是为了在杀鸡时让成熟的鸡被杀掉而小鸡不被影响到。这是因为小鸡的碰撞箱高度小于等于半格。因此只要它不乱跳就不会被杀

典型的鸡圈的结构如下图

1
2
3
4
5
{% minecraft 俯视图 %}
|ab|C|ab|-
|glass|slab|glass|-
||ho-$n||-
{% endminecraft %}

玻璃用来观察鸡的情况,C处就是鸡所在的地方,可以往这个地方砸鸡蛋。这样的结构在后文就简称鸡圈了。

鸡蛋传递系统

鸡蛋传递系统在鸡场里起到的作用是,将鸡生出来的鸡蛋传送到发射器中自动砸成小鸡。由于砸小鸡需要在鸡圈的上方,因此需要一个将物品向上传递的系统。由于漏斗不能向上放置,因此需要别的方法来实现这个目的。

向上传递物品有两种方式,一种是利用投掷器能向容器里传递物品的特性,另一种是利用方块会把物品“挤”到最顶端的特性。由于养鸡场砸鸡蛋只需要向上传递3格,因此也就以3格为例,传递更高的方案可以同理搭建出来。

投掷器塔

投掷器按照向上发射的方向摆成塔,然后通过红石信号依次激活他们即可做到向上传递。具体结构如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{% minecraft 俯视图 %}
|----|-
|ts|rd-ew|rd-ew|rt-e|ab|rd|-
|rd-ns|rr-s1|ab|ab|rd-!|ab|-
|rd-ns|dr-u|ho-w|st|st|st|-
|ab|rc-s|ab|ab|rr-n1!|ab|-
||ab|rt-w!|rd-ew!|rd-nw!||-
|----|-
|rd-se|ts||ab|rr-e2|ab|-
||st|st|st|st|st|-
||dr-u||←|←|←|-
|rt-!|st|st|st|st|st|-
|----|-
||rd-sw|||||-
||rr-s2|||||-
||dr-u|||||-
|ab||||||-
|----|-
|||||||-
|||||||-
||dr-u|st|st|st|st|-
|rt||||||-
|----|-
|||||||-
||st|st|st|st|st|-
||dr-u|→|→|→|→|-
|ab|ab|st|st|st|st|-
|----|-
|||||||-
|||||||-
|||||||-
|rd-ew|rd-ew|||||-
{% endminecraft %}

这种方案成本较高,但重在噪声小。

平滑的石头代表与红石无关的方块,箭头指的方向是物品移动的方向。物品的移动可以通过流水(部分方块就是为流水设计的),也可以通过漏斗管道来移动(可以去掉一些方块),但是会进一步提高成本。

方块挤压

如果将九宫格中周围八格都放上石头,终中间丢一个物品,那么在往中间放上石头后物品会被挤压而浮到玻璃上面。利用方块的这个特性就可以制作一个向上传递的机构。结构如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
{% minecraft 俯视图 %}
|----|-
||||-
||sp-u|sp-u|-
||rr-n4|rr-n2|-
|----|-
||||-
||ab|ab|-
|----|-
|ab|ab|ab|-
|ab|U|←|-
|ab|ab|ab|-
|----Level4 ~ Level(n-1)|-
|ab|ab|ab|-
|ab|ab|ab|-
|ab|ab|ab|-
|----Leveln|-
|ab|ab|ab|-
|ab|U|→|-
|ab|ab|ab|-
{% endminecraft %}

这个方案看起来很没有技术含量,但确实是最简单省事,并且最省材料的方案。同样的,箭头代表物品移动的方向,U为物品上行的地方。比较器需要通入周期信号以不停地传输物品,如果用水流移动物品周期最好为1s(10Tick)左右,而如果是漏斗管道+投掷器则可以短一点。

需要注意的是,收集鸡蛋和收集杀鸡的产物都通过同一个漏斗,因此其实在鸡蛋传递系统之前应该还要加一个物品分流装置。物品分流通过活塞实现比较麻烦,因此一般是通过改变水的流向来改变。改变水流方向十分简单,在这里就不叙述了。

自动发射器

自动发射器把收集到的鸡蛋砸到鸡圈里,生出新的小鸡,进行可持续发展。这个自动发射装置的原理我在[小麦塔教程]({{ ref “MCTowerWheat” }})中的漏斗转移装置中有讲到,只需要用比较器获取容器中是否含有物品,再接上高频时钟即可。这里也略过了。

自动杀鸡器

杀死鸡有两种方法,一种是用实心方块填充鸡圈,使得鸡窒息而死,另一种则是利用岩浆烧死鸡。自动杀鸡的装置需要在养鸡之前就设计好,不然后加就比较麻烦。

窒息

使鸡窒息的操作非常简单,只需要用一个粘性活塞将实心方块推到上文提到的鸡圈结构中的C位置即可使鸡窒息而死。因此只需要一个开关、一个活塞、一个方块,或者多加一个自动复位的计时器,就可以实现这个功能了~

窒息杀死的鸡会掉落生鸡肉和羽毛。

岩浆烧死

岩浆烧死稍微麻烦一点,因为岩浆不能一直放在鸡圈里,而是需要杀鸡的时候才放出来。这个可以通过发射器来实现,当发射器中有一个岩浆桶的时候,给发射器一个信号它就能喷出一格岩浆,再给一次信号即可收回。而杀鸡时需要在喷出岩浆后立即收回,否则可能会把杀鸡的收获物都烧掉。这个需要通过脉冲信号来实现。

脉冲发生器对发射器以及投掷器非常有用,因为经常会出现需要让发射电路迅速复位的情况。此外,脉冲发生器还是大量数字电路的组成部分,产生触发信号。

脉冲发生器的基本结构在MCWiki里有明确讲到,如果需要产生单次脉冲,可以采用最简单的断路器脉冲发生器。但是由于我们不仅要喷出岩浆还要立即收回,因此需要使用两个时间间隔很密的脉冲发生器来激活两次。(理论上来说,使用开关+双边沿触发器也可以达到收放岩浆的效果,但是为了迅速收回岩浆,最好还是使用两个脉冲发生器)

一种比较廉价的双脉冲发生器的方案如下:

1
2
3
4
5
6
7
8
{% minecraft 俯视图 %}
|----|-
|pi-u|ab|ab|ab|-
|ab|pi-u|ab|ab|-
|----|-
|sand|rr-e1|rd-ew|→|-
|rd+S|sand|rr-e3|→|-
{% endminecraft %}

激活S处的红石后(最简单的方法是按钮),箭头所指的方向就能输出两次间隔很短的脉冲信号。如果连上发射器的话就可以做到岩浆的发射与立即收回。

岩浆杀死的鸡会掉落熟鸡肉,能够省去后序烧鸡的步骤。不过由于村民交易时会需要生鸡肉,因此两种方法最好都加到鸡场中去。

集成结构

有了上面这些部件以后,就可以集成出一个全自动养鸡场啦~布线的方案有很多,这里就不细讲了,大概的流程是:

  • 自动收集 → 分流 → 储物/鸡蛋上行 → 自动投掷鸡蛋
  • 一个按钮连接粘性活塞控制窒息法杀鸡获得生鸡肉
  • 一个按钮连接发射器控制岩浆杀鸡获得熟鸡肉

另一点是鸡圈的布置:鸡圈的C格上方用来砸鸡蛋,左右分别是活塞+实心方块和发射器,用来杀鸡,底部用漏斗收集。这样就能有效利用鸡圈的空间了。

其实这个自动鸡场还有进一步改进的地方,比如最近参观dxsc的鸡场就看到了可以用一个按钮控制自由繁殖/自动杀鸡,这就更加方便了~不过本文中这样的一个鸡场已经完全够用啦~

使用 Hugo 构建
主题 StackedJimmy 设计,Jacob 修改