本站文本内容除另有声明外,均在知识共享 署名-非商业性使用-相同方式共享 3.0 协议下提供。(详细信息…

生成

来自Minecraft Wiki
跳转至: 导航搜索
此页面的部分内容由于太久没更新而已过期。
你可以帮助我们来更新此页面

生成(Spawn)是指玩家生物被创造和在世界里出生。玩家将会在死亡时在他们的出生点出生,或者在上次睡过的旁出生。而生物死亡后则会被清除。

玩家的生成[编辑 | 编辑源代码]

世界重生[编辑 | 编辑源代码]

若需详细多人游戏中玩家生成的详细解释,请参阅生成/多人游戏详情子条目。

自Minecraft正式版1.3之后,单人中的玩家通常都会于世界出生点为中心20*20范围内任意位置生成,而多人游戏则缩小到10*10范围的范围。 当生成时,玩家将出生在出生点的X轴与Z轴的相应位置的最高处(即Y轴最大,也就是说生成在最高的方块上),即使这样的生成算法会把玩家放到最大建筑高度(目前是256个方块)的上面。 这个区域将不考虑实体生成在什么可怕的地方,因此,若在X轴和Z轴的位置没有方块,就可能会导致玩家生成的虚空上方。另外,世界重生点可以使用/setworldspawn命令来修改。 世界重生点也决定了永久加载区块(即无论玩家身处何地此区块内的数据都会被加载并处理)的位置。

世界生成区域示意图。白色表示单人游戏生成区域,蓝色代表多人游戏生成区域,黄色代表世界产生点。

个人重生[编辑 | 编辑源代码]

玩家可以通过在上睡觉或使用/spawnpoint命令来更改出生点。如果玩家死亡时个人重生点受阻(或被破坏等),他们将被迫重生在世界重生点。 不过,躺在床上设置复活点的方式将允许较大范围的重生,即:如果原来的点被阻塞,这名玩家会尝试重生在床的附近区域里。但如果通过/spawnpoint设置重生点,遇到上述情况时,玩家将不会有这种较大范围的重生。


非攻击型生物的生成[编辑 | 编辑源代码]

非攻击型生物主要定义为所有被动型生物,还有。本章节内容与下章节内容有交集。该段动物生成分建立世界时的动物生成和游戏进行过程中的动物生成。

大约十分之一的新生成区块中将包含生物,通常是一群最多到4只的同种动物。它们总在该区块柱状区域中最高的有效方块生成,换言之就是可以看到天空的地方。如果要让动物在该方块上生成,此方块必须是不透明的方块而且其上两个方块必须是透明方块。方块上面并不需要有也不需要被照亮(生物生成也是同理)。[1]

动物并不会在沙漠和海洋生物群系中生成,兔子鱿鱼除外。

一头牛在地图中的树叶中生成并且不能逃出,这是森林山丘地区常见的现象。

动物生成的随机性取决于(生成)世界种子,这意味着相同种子的世界将会在同一个地方产生带有同样动物的区块。

在非常稀少的情况下,新的动物会生成在已经生成的区块里,这点与怪物一样。当动物以这种方式生成的时候,它们只在光照9级或以上的草方块上生成。从刷怪箱中生成的动物也需要相同的条件。除了狼在攻击型状态下可以被清除之外,动物并不会自发地被清除。[2]

马的生成[编辑 | 编辑源代码]

与其它的被动型生物不同,只在草原和热带草原生物群系中生成。由此原因,马看起来比其它生物要少,尽管在平原它们和其它的生物生成概率相同。马成群生成,每群有至少4到8只。尽管确切数字尚未确认。给定群体中所有的成员的类型和毛色花样都是一致的,尽管其个体标志可能会有些差别。所有毛色花样的马,包括在内都有相同的几率生成,尽管驴看起来要少见一点。不能天然生成,只能在生存模式中将任意一种系别的杂交来取得。

生物的生成[编辑 | 编辑源代码]

生物大致划分为四种:攻击型,被动型,水生型(也就是鱿鱼)和环境型(也就是蝙蝠)。攻击型生物有一个每游戏(1/20秒)一次的生成周期。被动型和水生型生物只有每400刻(20秒)一次的生成周期。因为这一点,攻击型生物可以在任何时候生成,而动物生成则非常少。另外,大部分动物在建立世界时产生的区块中生成(参见非攻击型生物的生成一节)。

攻击型生物生成通常情况下在玩家周围15*15区块(240*240方块)内。当在多人游戏中,攻击型生物会在任意一名玩家的上述距离之内生成。然而,远于所有玩家128方块距离之外的怪物会立即被清除(参见清除一节),所以攻击型生物生成区域被有效地限制在以每一玩家为中心的半径128方块内的球形范围里。

怪物容量(可理解为人口)与适合生成的区块总数直接成比例。要计算容量的话,生成区域在每一方向上均扩展一个区块,所以有17*17区块的大小,然后总的区块数被代入到下式中:

 容量=常量*区块数/289

每一种生物均具有自己的容量计算和公式中不同的常量值:

 攻击型 = 70
 被动型 = 10
 环境型(蝙蝠) = 15
 水生型 = 5

在单人游戏模式下,区块计数总为17*17=289,那么各种生物的容量也就是上面列出的数值。在多人游戏中,在多个玩家范围内的区块只被计算一次,所以玩家越分散,更多地区块会被覆盖且会有更高的容量。

在每次生成周期的开始都会检查一次容量。如果存活的生物数量超过它的容量,整个生成周期就会被跳过。

一组生物生成的举例。这一41*1*41生成区域被标记为蓝色(没按比例)。黄色轮廓表示在检查环境后事实上生物可以生成的地点。注意生物可以在火把和楼梯方块内生成。但是它们不能在玻璃方块的上面生成因为它是透明的。红色立方体是这一组生物的中心,必须是空气方块,不过其上下可以为任意方块。
单独一个生物生成地点的要求。

在每一生成周期中,会在每一个合适的区块中进行一次生成一生物的尝试。该区块内选择一个随机地点作为这组生物的中心点。为生成这组生物,中心方块对水生生物而言必须是方块,对所有其它生物来说则必须是空气方块。注意在后面的情形中,它一定得是空气方块。任何其它方块,哪怕是一个透明方块都会阻止整组生物的生成

如果该组位置合适,会在以中心方块为原点41*1*41的范围(就是41*41格大小的方型,有1格高的区域)内进行12次尝试以生成多至4个的生物(是8个,恶魂是1个)。生物将会在这一区域生成其身体的最下部分。在每次生成尝试中,会在这一区域中随机选择一个方块的地点。尽管生成区域能扩展到中心21格之外,但是随机选出的地点强烈地向该组的中心集中。大约有85%的生成将会在该组中心的5格以内,99%会落在10格以内

组内所有的生物都是相同的种类。在该组第一次生成尝试时从该地区所适合生成的种类中随机挑选一种以决定整组的种类:

每次独立的生成尝试只有在以下的所有的条件都符合时才能成功:

  • 生成方块在周围24米内(球体)不能有玩家或者玩家出生点。
  • 如果生成的是鱿鱼,则...
    • 生成的方块必须含有液体或者熔岩)。
    • 生成的方块高度必须在45到62之间。
    • 生成的生物不能被其它生物阻碍。
  • 如果生成的不是鱿鱼,则...
    • 生成方块本身必须为透明和非液体
    • 在其正下方的方块必须为不透明的或者为倒放台阶楼梯,而且不可为基岩
    • 在其正上方的方块必须为透明的。
    • 生成的生物不得被固体方块,其它生物,或者液体阻碍。
  • 如果生成的是动物,则...
    • 生成的方块的下面必须是
    • 生成的方块的周围亮度必须是9或者更高。
  • 如果生成的是豹猫,则...
    • 生成的方块的高度必须高过62。
    • 生成的方块的下面必须是草方块或者树叶
    • 生成会有三分之一的几率失败。
  • 如果生成的是蝙蝠,则...
    • 生成的方块的高度必须低于63。
    • 生成的方块亮度≤4。
  • 如果生成的是一个攻击性生物生成在主世界,则...
    • 亮度必须等于或者小于7,随着亮度的增加生成失败的几率也会增加。
    • 阳光直接照射到生成方块将进一步增加失败的几率,最高会到50%。
  • 如果生成的是史莱姆,则...
    • 如果不在沼泽生物群系中生成:
      • 生成的方块必须在是一个可以生成出史莱姆的区块中(详情请参考史莱姆页面)。
      • 生成的方块高度必须低于40。
    • 如果在沼泽生物群系中生成:
      • 生成的方块高度需要在51到69之间。
      • 生成的方块亮度<8。
    • 史莱姆会有90%生成失败的几率,因此在所有其它条件相同情况下史莱姆的生成速度是其它生物的10%。
  • 如果生成的是恶魂,生成会有95%的几率失败,因此恶魂的生成速度是其它生物的二十分之一。

如果上述所有条件均满足的话生物就生成了。当4个生物生成(或者是8只狼或1只恶魂)或完成12次尝试(此条件优先)后该组即告生成完成。而末影龙凋灵不适用上述规则。

注解[编辑 | 编辑源代码]

  • 由于普遍性的方块检查,除了鱿鱼之外几乎所有生物必须生成于一个上方至少带两格无障碍空间的不透明方块的顶端,甚至恶魂等也是如此。然而如果上面一格的方块是透明的话(譬如一个玻璃方块或活塞),矮个子的生物可以在一格高的空间里生成。
  • 单个的生物可以在告示牌、压力板和其它的透明非固体方块中生成,但一组生物不可以。它们需要一个完全空白的方块作为中心。因为一组生物都是在同一高度生成,这就需要在一个平坦的表面上有一些空气方块以允许生物生成,且空气方块越多就允许生成更多。
  • 通常情况下,室外有空气的建筑比地下室能在室内生成更多的生物,因为在室外生成的群组可以在室内生成生物。
  • 生物容量在很短的时间内就趋于饱和。因为这一点,通过让生物聚集于一个生成空间里(比如刷怪塔)可以防止生物在室外生成。
  • 容量的存在也意味着生物死得越快,生成得就越快。
  • 因为只在生成周期的开头检测(生物)容量,所以当一次周期生成大量生物时,容量可被戏剧性地超出。这在鱿鱼身上经常发生,它们容量正常情况下很少(单人游戏中是5),但是在一个有很多水的地方可以一次周期内生成很多。
  • 在多人游戏中,生物容量被所有玩家所共有,无论他们在哪。如果一名玩家可以让很多生物生成在他附近,换言之有一个刷怪塔,其它地方的玩家将会更少见到同种类型的生物。同样的,如果一名玩家可以防止生物在他附近生成(或许是给周围浇上很多水或者是点亮附近的洞穴),这样会有效地把生成生物的可能性留给其他人。
  • 曾经一个漏洞导致生物不会在240高度以上生成,但自正式版1.4.6之后它被修复。现在生物可以在240高度以上生成。
  • 在多人游戏中,如果server.properties文件中设置有“view-distance=9”或更低,生物生成将会急剧减少(或它们清除过于迅速),最终导致玩家几乎见不到生物。将视距(即view-distance)设为10或更高值以确保生物正常生成。

其它类型的生成[编辑 | 编辑源代码]

一个刷怪箱会在其周围持续地刷出生物。

一枚扔出去的鸡蛋有1/8的几率生成一只小,其中又有额外1/32的几率从一枚鸡蛋中生成4只小鸡,所以共计有1/256的几率扔一只鸡蛋获得4只小鸡。

牛、鸡、猪、羊、哞菇、兔子、村民、豹猫、羊驼和狼可以进行繁殖。除村民之外,这些繁殖方式需要玩家饲喂它们。

在主世界中一个叠一个地放置两个雪块,再叠上一个南瓜南瓜灯,将会生成一个雪傀儡。同样的,把雪块换成铁块(在高的那一块相对的两边还要额外各安上一个铁块)将会生成一个铁傀儡。铁傀儡也在村庄生成。凋灵也是通过放置方块来生成。

在创造模式下,玩家可以用刷怪蛋来生成大多数生物。当用此法生成生物时,会忽略所有的常规生成需求,如光照等级和方块类型等。

与其它生物相同,可以在生存模式中通过刷怪蛋生成。由刷怪蛋得到的马毛色花样是完全随机而无法控制的,这一变数包括生成的可能性。 与生存模式一样,不能自然觅得——它们必须由马和驴繁殖获得或由刷怪蛋获得。

攻城:僵尸可以在村庄中生成。这并非自然生成方式,因其可发生在蘑菇生物群系中。

怪物蛋在被破坏或附近的蠹虫被攻击时会生成一条蠹虫。

末路之地会单独生成一条末影龙,并可以使其复活。

中型和大型史莱姆和岩浆怪被击杀时会生成更多同类,不过要小上一号。

僵尸猪人可以在主世界下界传送门生成。这暗示它们来自下界,但事实上这是一个货真价实的生成过程。其实僵尸猪人(和其它生物一样)可以双向穿越这些传送门,但它们需要来自一个已加载的区块。从它们在单人游戏中出现在主世界的情形来看,玩家肯定处于主世界,所以下界那边的传送门所在区块一定被加载。注意在穿越传送门之后,非玩家所属的生物一段时间内不能重新进入传送门(甚至该区块被加载后一会),而且主世界生成的僵尸猪人似乎也受相同的限制。

闪电击中后,它会转变为僵尸猪人

村民被闪电击中后,他会转变为女巫

清除[编辑 | 编辑源代码]

各种生物生成范围图解。注意自正式版1.6.1之后僵尸离玩家超过32格时也可移动。

怪物(未持有物品且未披甲的)和鱿鱼(但不包括动物)还有自1.1版本以来攻击型的狼在以下一些条件下可以终止存在,或称“清除”:

  • 如果一个生物附近128个方块范围内没有玩家存在就会立即被清除。注意这是按照球形计算而非一个从地图从顶至底的一个圆柱。
  • 一个生物周围32个方块距离内没有玩家超过30秒后,每(1/20秒)都有1/800的几率被清除。这意味着在玩家32个方块距离之外生成的或脱离这一范围(30秒)的生物平均能存在40秒。也就是说,在最初30秒度过后,玩家32个方块距离之外怪物的半衰期是27.73秒。
  • 当游戏难度设置为和平时,世界中所有攻击型生物(包括那些持有物品的)都会立即被清除,无论玩家在世界的什么位置。

在多人游戏中,当没有玩家在游戏中时并不发生生物的清除。

历史[编辑 | 编辑源代码]

Classic
?生成区域曾经是17*17个区块而不是15*15。该区域被缩小了,但是旧的大小仍然被用于计算生物容量。
并不总是能通过防止生物在其它地方生成来够驱使它们聚集于一个生成空间里。一些更早的关于“生成”的资料或许可以作为参考。
大量的空余空间曾经能促进一般地区的生物生成。这一点对于一个小一点的规模仍然有效,且由于成组生成的机制而只对水平分布有效。
Alpha
1.2.0 0,0区块(X为0-16且Z为0-16)总是首先进行生物生成判定。如果一个人在此区块建了一个暗室,那所有的生物都会生成在其中,而导致其它地方都没有。
Beta
1.8 世界建立时的生成位点即使不是在沙滩也总是在沙子上。
正式版本
1.0.0 此版本之前的Beta版中,生成只被光照等级所决定而不是当前区块的属性。攻击型生物在光照等级7或更低的地方生成而被动型生物在光照等级9或更高的地方生成。因为这一点,尽管在有光照的地方仍有很小的几率生成攻击型生物,归因于它们在无光照的空中生成。另外如果你带了很多火把下矿,然后返回,你很可能将会看到你的房子里面有一些牛、猪、鸡或羊在里面到处跑。此情况在正式版1.0.0中不复存在。
1.9 15w46a 当生成敌对生物时,要求生成点的方块不能阻止生物的移动(以前只是不透明的),不能是任何类型的铁轨。 此外,上面的方块不能再是液体。
15w51a 添加spawnRadius游戏规则以控制玩家能在距离世界出生点多远的位置重生。
1.9-pre2 生成机制调整,“12次尝试”现在是“4次尝试”,所谓的“四次”是1-4的随机次数,这意味着总的生成尝试会更少,生成地点远离生物群体座标中心的机会也会更小。

你知道吗[编辑 | 编辑源代码]

  • 有时世界建立时的生成会发生在地下或海洋里。
  • 建立世界时的生成甚至可以发生在地牢或村庄中(非常罕见)。
  • 有时世界的出生点可能会挨着一个方块,但是几乎不会发生定位在一个方块内部的错误。
  • 通过敌对生物不会被刷新,在出生点区块(总是在内存中加载)放置大量敌对生物,可以造成“伪和平"(defanive2 首次在百度贴吧提出)。
  • 有时玩家会生成在空中,有可能造成无限的摔落致死,从而导致无法进行游戏。

参考[编辑 | 编辑源代码]

  1. http://www.minecraftforum.net/topic/639466-918-update-animals-can-respawn-proof-within
  2. 在对游戏程序的反编译过程中,EntityWolf类下有这么一段:
       protected boolean canDespawn()
       {
           return isAngry();
       }
    

    这段意味着狼只有在攻击型状态下才可能被清除,那时狼基本上可以被归类为攻击型生物了。

外部链接[编辑 | 编辑源代码]

Promotional Content