我的世界村庄的形成 村庄MOD详解
我的世界村庄的形成 村庄MOD详解。这是一个村庄的形成过程,到72秒每个村庄可以重置刷铁机,那具体的内容下面就给大家详细的介绍一下吧!感兴趣的玩家不妨进来看看哦~
游戏园我的世界官方群: 325049520 欢迎各路喜爱我的世界的小伙伴们加入讨论!
村庄的形成:
高度范围:
如图所示,当村民在高度上,和有效门处于这个相对高度内时。任意一个村民,都将和门形成村庄。
当村民离开这个高度范围,都将使村庄失效(聪明的同学,是否想到了如何使村民繁殖机停止)
然而,上下两个村民和门,所形成的村庄的村庄中心,并不在一个高度
这取决于哪个村民先和门形成村庄
假如是上面的村民和门形成的村庄,那么村庄中心的高度就在上半门。反之,下半门
关于村庄中心,将在后面详解,这里只是顺道提一下
水平范围:
假设,中间的红石块为村民
那么在红石块为中心
东南15格,西北16格。(这里都不包括红石块)
所形成的矩形范围内的有效全门,都将和村民形成村庄
总结一下:
在村民头上1个方块,或者村民脚下6个方块,东南15个方块,西北16个方块
所形成的长方体上的任意一个方块上放置有效门,都将形成村庄
好了,既然,有人提到村庄显示mod,我决定装一个,以便更直观的和大家探讨数据
我的世界村庄的形成 村庄MOD详解。这是一个村庄的形成过程,到72秒每个村庄可以重置刷铁机,那具体的内容下面就给大家详细的介绍一下吧!感兴趣的玩家不妨进来看看哦~
游戏园我的世界官方群: 325049520 欢迎各路喜爱我的世界的小伙伴们加入讨论!
村庄的形成:
高度范围:
如图所示,当村民在高度上,和有效门处于这个相对高度内时。任意一个村民,都将和门形成村庄。
当村民离开这个高度范围,都将使村庄失效(聪明的同学,是否想到了如何使村民繁殖机停止)
然而,上下两个村民和门,所形成的村庄的村庄中心,并不在一个高度
这取决于哪个村民先和门形成村庄
假如是上面的村民和门形成的村庄,那么村庄中心的高度就在上半门。反之,下半门
关于村庄中心,将在后面详解,这里只是顺道提一下
水平范围:
假设,中间的红石块为村民
那么在红石块为中心
东南15格,西北16格。(这里都不包括红石块)
所形成的矩形范围内的有效全门,都将和村民形成村庄
总结一下:
在村民头上1个方块,或者村民脚下6个方块,东南15个方块,西北16个方块
所形成的长方体上的任意一个方块上放置有效门,都将形成村庄
好了,既然,有人提到村庄显示mod,我决定装一个,以便更直观的和大家探讨数据
并且,通过计算,我们得到了村庄中心(图中红色羊毛位置)
计算方法见上面
还记得这幅图吗,我们现在已经得到了大半的数据
DE=GH=11
F为村庄中心(46楼红色羊毛)
我们现在要做的是把C点直接拉到I点
看到这里,有朋友,肯定会说,怎么可能,IF永远比IC小,I点成立村庄,肯定会先加入F。
那么怎么办呢?
上面我们提到,村庄半径取决于村庄距离最远的两个门的距离,<64则村庄半径为32,>64,则村庄半径=离村庄中心最远的门,到村庄中心的距离
而F的半径,我们已经确定,是32,只要IF距离>64,那么I是不会加入F村庄的
现在,我们只要把C的半径扩大到 >(CF+32)
并且,CI的距离
就能实现I加入C,而不加入F
图示:
CI有交点,而IC无交点,超出加入距离
我把图改规范一点,这样大家比较容易看懂
由于AC>64(F的直径),C的半径变成AC的距离,而不是32
现在,我们回到游戏中,在距离C点64格的地方放个门(A点)
我们要把A村庄的中心转移到C点,中间用B点借一次力
在AF的中点往A方向1格的地方建第2个村庄(为了让他离A更近,成立后,加入A,而不加入F)
也就是说AB+1=BF
我们发现,B村庄加入A后,村庄中心移动到AB的中间
而这个村庄中心,离D的距离>DF
这里,我们需要在B处添加门,把村庄中心往B的方向拉
在AB上找出一个点,距离D的距离
假设,我们找到的点坐标为y,A坐标点为y1,B坐标点为y2,我们要加的门的数量为n
计算公式:
n=(y1-y) / (y-y2)
经计算,加3个门足够了。为了保证村庄中心在中心线上,我们一边放两个
当然,大家做的不一定是这样。具体按公式计算
再通过上面的公式,计算出,要把村庄中心拉到C点,所需要的门的数量
此时,我们发现村庄范围被我们扩大到AC为半径
将第1排的村庄的门,全变成有效门,于是加入了C
回到这张图,现在,我们需要在离F64以外的地方,建立 I 村庄,因为我们不能让 I 加入F
并且,要把村庄中心拉到FG之间,用于保证GH处的门,不会加入F,而是加入新成立的村庄
在离F 65格的地方建立 I 村庄
我们要保证,I 村庄在建立的时候,不会加入F村。因此距离必须大于64
细心的同学会发现,I 村庄后面两排门的距离有可能加不到F村
当 I 村的排门加入C村时,会把村庄中心往 I 的方向拉动,
此时,后两排门距离也就够了,并且一起加入C村
具体要多少数量的门,才能把村庄中心拉到FG之间,确保GH处的门能够加入C村,而不加入F村,参看53楼计算公式
我们需要6个村民,来控制村庄的生成和失效
在村庄的形成中(7楼),我们提到,村民脚下6格,头上1格,水平方向 东南15 西北16,的任意方块上放门,就能形成村庄。利用活塞推动村民高度,来使村庄失效,从而达到堆叠的目的
并且要注意,一个村民,控制一个村庄,互不影响
从图中,我们可以看到,似乎C村的村民,会影响到DE处的村庄
但是,DE处的村庄我们是通过控制门的有效性,来使村庄成立的,所以并不影响
控制DE处村庄的村民,定要离C村足够的距离(不能影响到C村),并且能够控制到DE处的所有门(刚好32个,控制范围内)
这就要注意村民控制门的水平范围规则(东南15,西北16)
同理,控制GH处门的村民,也不能影响到 I 村,I 村处的村民对GH处的门,并无影响
既然装了村庄显示MOD.那么我们来尝试一下堆叠,验证计算中是否出错
收回A点的活塞放下村民,成立村庄1
收回B点的活塞放下村民,B村成立,加入村庄1,并且把村庄中心拉过来(详看村庄中心的算法部分)
收回C点的活塞放下村民,C村成立,加入村庄1,并且把村庄中心拉过来
将DE处的第1排门变成有效门,成立村庄DE,加入村庄1,并且把村庄中心继续拉过来
此时,村庄1的半径变成 ABC DE,四个村庄所有门的中心点到A的距离
收回 I 村(字母I)的活塞放下村民,成立 I 村,加入村庄1,并且把村庄中心拉到FG之间(保证GH处的村庄成立后加入村庄1,而不加入F)
对角线激活GH处的一排门(保证所有村庄堆叠完中心点在一个点上),加入了村庄1
推出ABCI 四个村庄的活塞,把村民推出检测范围。1分钟后,四个村庄全失效,最后中心点被拉到DE和GF村的中心点,至此,我们堆叠好了一个村庄,并且验证了我们先前的中心点算法无误
当然,我们要保证后面堆的村庄,和这个村庄1,不会产生影响,才算成功
选取另一个对角的两个村庄,测试一下
成功对接
至此,堆叠原理算是讲完了,下面讲堆叠电路
不对,还有刷铁人区域没讲
还记得我们前面讲的,刷铁人区域和中心点的关系吗?
东南7,西北8,上2,下3,的16*16*6的区域
另外,刷铁人高度要求,不能少于4
于是,我们在中心点向上一格,建立第一层平台
水的流动距离是8格
为了不让铁人卡在中间,我们用3*3的掉落口
所以,我们要建一个19*19的平台(不包括围栏)
做重置电路前,我们要对两个概念理解一下
1、从在村民范围内放门,或者将村民推进可检测到门的范围,到成立村庄是有1-6秒的延迟的
2、将村民推出村庄范围,村庄会在60秒后失效,这个时间是固定的,没有浮动
3、把门敲掉,可以瞬间使村庄失效,然而它不可控
因此,理论上重置一个村庄的最少时间应该是70秒左右
我们需要做一个电路,每6秒以上移一次位,循环结束时间>60秒(否则循环结束A点村庄还没失效)
并且,做32次循环后停止电路
移位电路很多种,利用负脉冲控制漏斗内物品流动,比较器检测,8个漏斗首尾相接,形成循环,这无疑是最简单的
据说,漏斗上面放熔炉,可以有效防止卡机,虽然没根据,我们不防迷信一回
在熔炉上面放红石线,控制漏斗物品的流动
漏斗计时器产的脉冲,有时候会使漏斗移2位
因此我们用活塞把脉冲改为2t
在计时器的漏斗中放入11个物品
22*0.4=8.8秒产生一次脉冲
8.8*8=70.4
也就是漏斗移位器70.4秒完成一次循环
70.4-8.8=61.6>60
循环完成,A点村庄已经失效,符合我们的要求
利用投掷器内放32个物品,计数
当投掷器内没物品,控制漏斗时钟,停止循环
在漏斗移位器尾端接一个比较器,线路连接到投掷器。作用,每完成一次循环投掷器投一个,计数
一分钟计时器(物品75个)
作用:
开始重置时计时1分钟(把所有村民推离村庄检测范围,使所有村庄失效)
并且控制8.8秒计时器,不让它计时
收回红石块,使漏斗内的32个物品漏到投掷器内
计时结束后,推出红石块,控制计数漏斗(避免投掷器投到漏斗漏回去)。
将一分钟计时连接到控制DE,和GH村的两个村民
1.8村庄显示mod下载链接: (密码:57ja)作者:Codetector
安装方法:
1、解压压缩包得到下面这些文件
2、在mc安装目录下找到.minecraft——versions——1.8文件夹——复制里面的1.8.jar文件,备份
3、用解压软件将它打开(我这里用的好压)
4、复制刚才解压mod里面的所有文件,粘贴到这里面,并全部覆盖
5、直接关闭解压软件,并启动mc
注意事项:以上操作前最好关闭游戏,以免造成不必要的错误
装好了,能看到我们堆叠的村庄
将移位器各端口,接到相应的位置
把DE,GH两处改为用循环漏斗移位来控制活塞,因为有效门一旦形成村庄,变成无效门,对村庄是没有影响的
完成后的电路,大概是这个样子,比较难看懂。
我会在后面放出存档,以方便大家看懂
这里要提一下的是
并行的红石线,必须在红石线尾端,能量为0的格子上放中继器,以防止串线
利用RS锁存和漏斗时钟,做的自动重置装置
在漏斗时钟的时间范围内,假如没有生成铁人,将自动开启重置
嫌麻烦的,这部分可以不做,手动按钮重置就行了
当然,也可以在铁人生成区域用拌线勾检测(电路会比较小),我这里用的玫瑰花检测
时间关系,防止误操作的电路,我并没做。
按下重置按钮后,在重置完成前(重置提示灯亮起),不能再次按下重置按钮,否则会出错
解决方法:
将移位器中的物品取出,再次按下重置按钮,把物品放到控制计数的移位器漏斗里面
这就当是留给大家的思考吧
至此完成,我们将村庄的重置速度提到了70.4秒每个,重置完32个村庄只要不到38分钟
链接:
密码:fygb
PS:在此非常感谢我的世界玩家绝版极点的分享。
以上就是我的世界村庄的形成 村庄MOD详解。更多精彩尽在游戏园我的世界专区。
热门攻略推荐:
村庄中心算法,以及村庄归属:
当形成村庄的门,放置在村民脚下的第6个方块上时,村庄中心将被移动到上半门
其它高度,中心侧是在下半门
这里为什么会有上半门和下半门的概念呢?
因为这样虽然下面也是有效门,但并不能形成村庄。准确的说,下面只是个有效半门,上半门并没有形成有效的遮挡
而当我们把遮挡物上移一格,村庄形成了。形成这种原因是因为系统在有效范围内,检测不到有效门
我们将鼠标指向一扇门,打开F3,如图红框位置,这说明上下半门概念的存在
mc,是由无数个网格间的方块组成的,他的坐标算法,沿用的是网格交点坐标,而不是方块坐标
由于现在网上找不到对这个概念的定义,这里,我们姑且将网格交点坐标定义为《绝对坐标》
将方块坐标,定义为《相对坐标》
由于这两个坐标存在相对性,所以mc中用东南守则,来对两个坐标进行换算
这么说,大家可能有点迷糊了,我还是以图例来说明吧
打开F3,鼠标指针变成红,绿 ,蓝,三色组成的坐标系
通常,我们对这的认识是,红色指向东方,蓝色指向南方,用于表示方向
它还有另外一个作用,用来表示一个方块的“绝对坐标”
也就是说,红蓝绿三条线的交点坐标,表现的是它东南方向方块的坐标
这就是mc中坐标的换算方法,也因此,有了东南守则,它被应用到所有mc有关坐标的地方
也是为什么在村庄堆叠过程中,要先找北的原因(当然,你找南也行,目的是为了确定方向)
在以一个实例,来讲解mc坐标系,因为这个真的很重要
前面讲到村庄的形成,可能有同学会有疑问,
为什么是东南15格,西北16格?
正常情况下,我们要算红色羊毛到两边蓝色羊毛的距离时,我想大多数人会说都是2格,或者都是3格对吧
这是以方块坐标的方法来计算的
然而,mc中,是以绝对坐标来算的,注意鼠标指针
他是以红色羊毛左下角的顶点(“绝对坐标”)来算的
因此,左边是2,而右边是3
回到村庄形成中,我们提到的东南15 西北16,其实,内部算法是东南西北,都是16。
我们把他换算成方块坐标,就是东南15(加上中心点方块,其实也是16),西北16
关于中心点算法,就讲到这里,还不能理解的同学,自己在游戏里面码一下,以自己的方式去理解吧
接下来讲多个门的村庄,对村庄中心的影响,以及算法
当单个门所形成的村庄,村庄中心在《下半门》所在的方块(不是门底下的方块),唯一例外门在村民脚下第6个方块上
详见村庄的形成部分
当在这个村庄中心64格半径(不包括村庄中心所在的方块)的范围内(此范围是一个球形),再生成一个村庄时
新的村庄,将加入这个村庄。并且,村庄中心移动到这两个村庄的中点
那么这个中心点是怎么算的呢?
公式:
x=(x1+x2)/2,
y=(y1+y2)/2,
z=(z1+z2)/2
多个门的村庄中心算法:
x=(x1+x2+x3+.....xn)/n
y=(y1+y2+y3+....yn)/n
z=(z1+z2+z3+.....zn)/n
而64格外的,将形成新的村庄
正常情况下,一个村庄的范围是半径32。然而,这个半径并不是固定的。当村庄中任意两扇门的距离>32时,村庄范围半径将变成村庄中心到最远的门的距离,这将影响到新形成的村庄是否加入的距离
因此村庄归属的判定公式是:
(村庄半径+32)为半径的球形范围内,所形成的村庄,将加入这个村庄。以外的将形成新的村庄
铁人形成区域范围:
当一个村庄形成时,村庄显示mod为我们显示出了刷铁人的16*16*6的范围
我们需要将这个区域移出门所在在区域,以方便杀死和收集,于是,我们需要铁人区域和村庄中心的关系
如图所示,假设红色羊毛为村庄中心所在的方块
那么以红色羊毛为中心,东南7格,西北8格,上方2格,下方3格的长方体区域,就是刷铁人的16*16*6的范围
铁人塔,对村民数量的统计范围和村民繁殖机对村民的人数统计范围,并不一样。村民繁殖机对村民的统计范围。我将在后面给出,这里只说铁人塔对村民数量的统计范围
铁人塔对村民数量的统计范围,在水平上和村庄范围相同,也就是说,水平上的范围,假如村庄范围半径是32,那么铁人塔水平人口统计范围就是半径32。当然,这不是关键。我们一般不会把用于生产铁人的村民放在那么远的距离
如图所示,假如红色羊毛为村庄中心所在方块
蓝色方块上所站的村民,都将进入铁人塔的村民数量统计范围
总结:是铁人塔在村庄中心所在方块为中心点,向上2个方块,向下6个方块上面站立的村民,水平距离在村庄半径范围内的,都将进入铁人塔的村民数量统计范围
控制有效门:
门内外五格范围内的遮挡方块数量不一样的门,即为有效门。
我们需要一个方案,用来切换门是否有效
首先,我们将刷铁人所需要的最少的门的数量21个,分成11个一组,用于将村庄中心和门分离
于是,话题转为如何同时控制11个门的有效性
然后,我们先将11个无效的门摆出来,然后再讨论如何使它们同时有效
如图,两边的五个红色羊毛,是为了保证两边的第一个门是无效门,这样,11个门两边5格范围内的遮挡方块,都是5,全是无效门
打掉第4和第5个蓝色方块,我们发现,所有门两边五格方块内的遮挡方块都不一样了
也主是说,我们只要控制这两个方块,就能控制11个门的有效性
方案1:我们只要用两个粘性活塞,推动方块,就能控制11个门的有效性
然而,这种方案由于控制端分离,并不适合
于是,我们用了这种方案,活塞是透明方块,并不会造成遮挡
下面,我以一个简单的32村庄堆叠的实例,帮大家对以上原理进行理解
按38楼的原理,我们将它堆叠32个,32个村庄的一半,完成了。
然后,我们需要确定另一半离这边的最小距离
我们需要一个堆叠方案,用于确定村庄另一半的距离
假设DE,GH,分别为村庄的一半11扇门,距离11
F为村庄的中心点
A点为新村庄成立的点,它距离村庄中心F,距离必须>64
B点为中转点,AB之间的距离必须小于BF,否则B点会加入F点的村庄(1.8村庄就近加入原则)
C点为中转点2,BC之间的距离必须
CD之间的距离至少为5(为控制门延伸的五格控制了CD的最小距离)
EF之间的距离必须>CE(否则E点的门会加入F)
而CE最小为16(DE=11,CD最小为5)
因此得出EF必须>16
确定了EF的距离,我们往南面码16个方块(红色)白色为中心点F>16,并向南方再码15个方块(蓝色,东南守则)开始建立对面用来拉中心点的11个门
这里由于我做的时候,是东西方向堆叠,只好这么来了,顺便也验证铁人塔,不一定要南北方向堆叠
码好两边的门,我们需要计算一下中心点,用于确认铁人刷出的区域,以及村庄的半径
选取对角线两个最远的门的坐标,图中两个红色羊毛位置的门
直角三角形的斜边算法,不用我说了吧?
c的平方=a的平方+b的平方
得到c=62.7,小于64,于是,我们堆叠后的村庄半径是32
精品推荐
相关文章
更多+热门搜索
手游排行榜
- 最新排行
- 最热排行
- 评分最高
-
主机游戏 大小:105MB
-
模拟经营 大小:107M
-
应用软件 大小:700KB
-
主机游戏 大小:28.27GB
-
棋牌策略 大小:970 MB