种子(世界生成)

种子(世界生成)

此条目缺失以下信息:需要检查版本间是否仍有其他不同之处。

请协助补充相关内容的描述,讨论页可能有更多细节。

种子(Seed)是用于Minecraft世界生成的一个整数。[1]

目录

1 兼容性

2 世界生成

3 查看种子

4 技术细节

4.1 Realms

4.2 Java版

4.3 基岩版

4.4 版本间重叠

4.5 过时内容

5 怪异生成

5.1 更改地形而不更改结构

5.2 平行种子

5.3 重复生成

6 历史

7 你知道吗

7.1 官方使用的种子

8 外部链接

8.1 仅Java版

9 参考

10 导航

兼容性[编辑 | 编辑源代码]

不同平台上的种子在某种意义上是兼容的,同一种子在不同平台所生成的地形特征和生物群系是一样的,但生成结构的位置一般不同。种子在同一平台上的不同版本之间可能兼容。

Java版:

在Alpha v1.2.0至Beta 1.7.3期间基本一致。

Beta 1.8版本完全更改了世界生成。

1.2因为加入了丛林而更改了陆地上生物群系的分布。

1.7.2再次重写了世界生成。

1.13更改了洞穴的生成,加入了新的水域生物群系,以及调整了变种生物群系和部分结构的位置。

1.14加入了竹林生物群系,同时更改了村庄和其他一些结构的位置。

1.16更改了下界的生成并加入更多生物群系。

1.18加入了多种新的山地和洞穴生物群系,同时大幅度更改了主世界的噪声生成器,彻底重写了世界生成机制。

1.19加入了红树林沼泽和深暗之域。

1.20加入了樱花树林。

1.21.4加入了苍白之园。

上面未提及每次更新加入的新结构,但它们通常不会伴随整个世界生成的大更改。

基岩版:

Alpha 0.9.0是第一次彻底更改世界生成的更新。

水域更新更改了海洋。

村庄与掠夺更改了村庄等结构。

1.18.0加入了多种新的山地和洞穴生物群系,同时完全更改了世界生成机制。

原主机版的种子更新大致和Java版的更新周期一致。

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

主条目:世界生成

当游戏准备生成一个世界时,游戏会调用一个被称作柏林噪声的算法,生成一个伪随机数,这个数决定了世界的样子。但由于伪随机算法的性质,若算法初始输入的数值(种子)是相同的话,算出的最终结果是相同的。这就是种子的意义:使用相同的种子可以生成出多个相同的世界。

当世界生成算法更新(通常是加入新的生物群系)后,相同的种子就不会生成相同的地形。这也是某些不同的游戏版本中,相同的种子无法产生相同的地形的原因。

一个世界生成后,其种子便已经确定。默认情况下游戏会自动选择种子(使用系统时间)。但玩家也可以手动设置。使用相同的种子可以重复玩相同的世界,种子也可以用于与其他玩家分享世界。种子的设置可以用数字(包括负数)、字符等,非纯数字种子会被自动转换成一个32位的整数。

如果将旧版本的世界导入到新版本中,则新生成的区块会基于新的种子,因此并不一定会与旧区块吻合(这个现象在Java版Beta 1.8和1.7.2中非常常见,而对于1.18,新旧区块交界的地上和地下均有特殊算法使地形平滑过渡)。被删除的区块会重新生成,但只要种子或生成算法其中一个有所不同,区块就会不同。

必须注意的是种子其实只是输入到伪随机算法中的值,而不是世界真正的名字。根据某个种子生成的世界的特征并不注定与种子的字面含义有关。例如使用一个生物群系的名称作为种子,生成的世界也并不会以此作为主要的生物群系。

正在加载互动小工具。如果加载失败,请您刷新本页面并检查JavaScript是否已启用。

查看种子[编辑 | 编辑源代码]

想要确定一个世界的种子,在Java版中,玩家需要执行命令/seed。玩家也可以在重建世界的界面中找到种子,也可以用编辑世界界面中导出的世界生成设置中找到它。

在基岩版中,种子可于世界选项界面中查看。也有种子模板,为玩家提供预设的种子,以在出生点附近生成具有特定特征的地形。此外,在测试版中,屏幕顶端的构建信息会显示这个世界的种子码。

而服务器的种子可以在server.properties中的seed栏找到。

技术细节[编辑 | 编辑源代码]

Realms[编辑 | 编辑源代码]

在Java版中,玩家可以在聊天栏输入/seed来查看种子。在基岩版中,种子在Realms Plus中是不可见的。

Java版[编辑 | 编辑源代码]

如果种子输入框中的内容包含非数字字符(除非是数字开头的一个+或-)或超过Java中long类型所能表示的范围(-9223372036854775808~9223372036854775807),那么Java中的String.hashCode()方法会用来将其转换为数字。由于输出的数据类型为int,此方法将Minecraft能生成的种子数量限制为232(4,294,967,296)。为了达到完整的可能的世界数量(264,即18,446,744,073,709,551,616),必须输入纯数字种子或使用默认的世界种子。

基岩版[编辑 | 编辑源代码]

和Java版一样,基岩版中也有264,即18,446,744,073,709,551,616种可能的世界。如果种子输入框中的内容包含非数字字符(除非是数字开头的一个+或-)或大于等于20个字符(-9223372036854775808~9223372036854775807),那么游戏将会将其转换为数字[需要更多信息]。

版本间重叠[编辑 | 编辑源代码]

所有种子在Java版和基岩版会产生相同的地形和生物群系分布,但结构和结构位置、矿石分布和生物生成等并不相同。

过时内容[编辑 | 编辑源代码]

此章节所介绍的内容已从Minecraft中移除。

这些特性曾存在于游戏中,但已被移除。

在洞穴与山崖第二部分以前,Java版和基岩版尚未实现地形同步。-231(-2,147,483,648)至231-1(2,147,483,647)间的种子在Java版和基岩版会产生相似的生物群系分布(但仍有区别),但地形特征、结构位置、矿石分布和生物生成等有明显差异。

在基岩版1.18.30以前,无论是使用数字还是字符串,都有总共232(4,294,967,296)种可能的世界。这个结论对于64位版本的Windows 10版同样成立。

怪异生成[编辑 | 编辑源代码]

使用某些特定的种子可以观察到许多奇特的生成。

更改地形而不更改结构[编辑 | 编辑源代码]

在Java版1.17.1及以前的版本,世界生成的随机数算法使用java.util.Random类的线性同余算法,而这一算法在生成随机数时种子只有后48个二进制位对随机数有效果。因此,如果两个世界的种子二进制后48位相同,则它们部分结构有着相似的分布,并且两者有极为相似的末地和下界。

平行种子[编辑 | 编辑源代码]

在Java版1.17.1及以前的版本,将-7379792620528906219减去一个数字后得到的种子生成的主世界会有着和原种子除海洋群系外完全相同的生物群系分布,但地形并不一致。

重复生成[编辑 | 编辑源代码]

此章节缺失以下信息:请明确该段落所指的版本。

请协助补充相关内容的描述,讨论页可能有更多细节。

种子164311266871034的地下,可见洞穴沿Z轴重复生成

某些种子会在游戏内部中返回0,[2]引起洞穴和其他结构的无限生成。[3]在Java版1.13以前的版本中,107038380838084种子会在第一次被调用时返回0,而164311266871034会在第二次被调用时返回0,而这两个调用结果会分别与X坐标或Z坐标相乘,从而使生成结果与某一个方向的坐标无关,导致洞穴、废弃矿井和水下峡谷等结构分别在X和Z轴上重复生成。[4]由于未知原因,4165936693698546884种子会在X轴上生成无限循环废弃矿井并在Z轴-250至-500左右的地下生成无限循环洞穴。388513357548740种子会在X轴上生成无限循环废弃矿井。[5]由于未知原因,水下洞穴和常规峡谷的生成添加了盐,自Java版1.13后它们不在这个种子中受到影响。不过,如果上述两个种子减去1,那么水下洞穴和常规峡谷将会重复生成,例如107038380838083,但其他结构则不再重复。已有理论分析这些种子也会影响要塞中不同方块类型的分布和恶地中陶瓦的图案,但尚无切实证据证实。

其他一些地物也会受到影响,例如装饰性结构。它们通常沿对角线生成。[6]

在基岩版中,种子289849025、1669320484会沿对角线重复生成洞穴、峡谷和一些装饰性地物。[7]1000686894和-1171867832的种子会导致在Z轴上无限生成废弃矿井。[7]任何计算为4294967296 × n + 1669320484的种子同样会生成具有相同地形特征的世界。[7]

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

Java版pre-Classicrd-131655加入了一个简单的世界生成器,会生成大小为256×64×256的杂乱地形。rd-132211更改了世界生成器,现在只会生成由草方块和圆石组成的平坦地形。rd-20090515地形不再是平坦的了,现在地形会有高低起伏。世界顶部为一层草方块,下面有几层泥土,底层为石头。rd-161348悬崖生成得更频繁了。Java版Classic0.0.3a现在地下会生成洞穴。0.0.12a世界生成器更新。2009年8月25日展示了再次进行更新的世界生成器。现在会生成更多的悬崖。Java版Indev0.3120091223-2公布了等轴距级渲染的屏幕截图。20100106现在可以在生成世界时选择岛屿、浮岛、平坦或原始作为世界类型。可以选择正方形、长形或下深作为世界形状。可以选择小、正常或大作为世界大小。20100107下深浮岛地图现在有多层岛屿。现在可以选择世界主题,有正常和地狱。20100110现在岛屿生成更多的沙子。20100113海洋现在生成无限的水。20100122水现在可以自然生成于海平面上和浮岛上。减少洞穴被水淹没的可能性。Java版Infdev20100227-1对世界生成的地形改变:在旧版本上使用任何给定的种子现在会生成一个不同的世界。世界生成已大大简化(去除了沙子、团簇等),以使无限世界生成的实现更易于使用。20100227-2红砖块金字塔的生成发生了变化——它们现在总是会到达顶部的一个点,而不是有时会被截断,从而产生“砖方形截锥体”。20100313海洋现在比以前大得多。20100320重新引入了团簇,其作为单个方块零星生成。重新实现了树的生成。20100325团簇生成更改为目前的类型。然而,团簇生成使用了浮点数,导致其在距离过大时生成失败。加入了洞穴,会代替所有方块生成而不只是地形方块。20100327对世界生成的地形改变:在旧版本上使用任何给定的种子现在会生成一个不同的世界。移除了洞穴。移除了花随机斑块。33,554,432处的Infdev石墙不再生成。相反,边境之地将会生成在12,550,824。20100413树现在是大型的树。沙子和沙砾现在会在世界中再次生成。20100420对世界生成的地形改变:在旧版本上使用任何给定的种子现在会生成一个不同的世界。世界生成时会考虑更少地生成山脉。20100608所有的树现在都是小树,大树不再生成。20100611对世界生成的地形改变:在旧版本上使用任何给定的种子现在会生成一个不同的世界。现在会生成大型岛屿。地形现在会生成得足够高以至于达到世界高度限制,导致地形被截断。独石柱现在会生成。树的生成量现在有所变化。20100616-1对世界生成的地形改变:在旧版本上使用任何给定的种子现在会生成一个不同的世界。海洋中的地形生成现在是不同的。[需要验证]重新加入了洞穴。花和蘑菇的随机斑块现在会生成。涌泉现在会自然生成。熔岩现在会自然生成,具体生成方式未知。Java版Alphav1.2.0preview对世界生成的地形改变:在旧版本上使用任何给定的种子现在会生成一个不同的世界。Java版Beta1.3允许玩家自定义地图种子。1.8.1调试屏幕现在显示当前世界的种子。Java版1.2.1服务器将不再向客户端发送种子。1.3.112w18a由于单人游戏的实现方式与多人游戏合并,世界的种子不再显示在调试屏幕上。12w21a加入了/seed命令,用于显示当前世界的种子。1.7.213w36a世界生成算法发生改变,这意味着使用一个旧版本存档,原先未加载的区块将生成不同地形。1.1318w06a重写了世界生成系统(未更改地形),并且移除了自定义世界类型。1.18exp1重写了世界生成系统。重制了洞穴和山地以及地形高度系统。移除了放大化和巨型生物群系。exp2重写了世界生成系统(未更改地形)。21w41a更换了世界生成过程中所使用的随机数生成器,导致地形与之前的版本不同。21w43a噪声生成器再次被完全更改,新生成的世界不与之前快照的一致。1.18.222w03a数字0的种子不再被游戏解释成48。输入的种子前后的任何空格现在都会被去掉。携带版Alpha0.1.0加入了种子。此时仅支持32位种子用于地形生成。0.9.0build 1更改了地形生成。基岩版1.17.30实验性玩法洞穴及悬崖1.17.30.23完全更改了世界生成。1.17.40实验性玩法洞穴及悬崖1.17.40.20再次更改了世界生成。1.18.01.18.0.20将实验性玩法“洞穴及悬崖”中的生成更改应用到了默认世界中。1.18.0.22更换了世界生成过程中所使用的随机数生成器,导致地形与之前的版本不同。1.18.0.24地形生成机制再次被完全更改,新生成的世界不与之前测试版的一致。1.18.301.18.20.21现在可以使用64位种子创建世界,以同步Java版。游戏现在支持数字-9至9的种子。

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

自Java版1.7.2至1.12.2的版本间,通过更改源代码并将第6个genlayer的值[需要更多信息]从2更改为0,可以在Java版中得到原主机版的生物群系生成,除了蘑菇岛。

Herobrine的最早截图来自种子478868574082066804,在Alpha v1.0.16_02的修改版[8]生成。

Herobrine的恶作剧直播来自种子3609313613745973624,在Alpha v1.0.17_04生成。

官方使用的种子[编辑 | 编辑源代码]

在Java版中,下面这些种子在某些时候曾被官方地图和资源使用过:

演示模式的世界种子可以在完整版中输入North Carolina(对应数字为-343522682)得到。

主菜单全景图的世界种子如下:

自Beta 1.8-pre1至18w22c使用的种子是2151901553968352745或8091867987493326313[9],需要Beta 1.6.6至Beta 1.7间的版本来生成。

1.13使用的种子是1458140401,即18w22a,在18w22a获取。

1.14使用的种子是2802867088795589976,在18w48a获取。

1.15使用的种子是-4404205509303106230,在19w40a获取。

1.16使用的种子是6006096527635909600,在20w13a获取。

1.18使用的种子是2151901553968352745,在21w40a获取。

1.19使用的种子是-1696067516,即thewildupdate,在22w15a获取。

1.20使用的种子是8554477380691140270,在23w14a获取。

原始的默认资源包图标(pack.png)显示的世界种子是3257840388504953787,在Alpha v1.2.2生成。[10]此地形也可在Alpha v1.2.0至Beta 1.7.3间的版本生成,不过会有细微差别。

Skull on Fire这幅画的世界种子是-6984854390176336655或-1044887956651363087,在Alpha v1.1.2_01或更早的版本生成。[11]

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

AMIDST Project:种子/世界浏览器(英文)

Chunkbase Minecraft Apps:在线种子/世界浏览器(英文)

Minecraft Seeds on Reddit:社区驱动的Minecraft种子库(英文)

Minecraft Seeds:由社区人员驱动的MC种子库(英文)

MineAtlas:种子/世界浏览器/查找器(英文)

Minecraft Seed HQ:MC种子库(英文)

LookingForSeed:按分类查找Minecraft种子(英文)

仅Java版[编辑 | 编辑源代码]

Seed Hunt:MC种子库(英文)

Minecraft Seeds

SeedCracker:猜测来自多人游戏的种子(英文)

Seeder:种子/世界浏览器和查找器(英文)

Random Seed Reader:Java本地工具(英文)

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

↑ http://mojang.com/2011/02/23/a-short-demystification-of-the-map-seed/

↑ http://stackoverflow.com/questions/3065554/can-javas-random-function-be-zero

↑ MC-111378 — 漏洞状态为“不予修复”。

↑ https://www.reddit.com/r/MCPE/comments/5i6sae/recursive_infinite_mineshaft_seeds_on_mcpe/

↑ https://www.mcbbs.net/thread-1218506-1-1.html[失效链接]

↑ https://www.youtube.com/watch?v=UtNXUMrSIxQ

↑ 7.0 7.1 7.2 MCPE-95011 — 漏洞状态为“不予修复”。

↑ https://www.bilibili.com/BV1df421B78R

↑ https://www.reddit.com/r/Minecraft/comments/hthrmk/big_news_we_have_found_the_seed_of_minecrafts/

↑ https://www.reddit.com/r/MinecraftAtHome/comments/iocx6f/packpng_seed_was_found_explanation_tutorial_and

↑ https://www.reddit.com/r/Minecraft/comments/iqg3ey/the_original_screenshot_seed_of_the_minecraft/

导航[编辑 | 编辑源代码]

游戏内容

参见:Template:Navbox gameplay/content [编辑]

编 Java版

版本

演示版

地点

PC Gamer演示版(Beta 1.3)

开发周期

版本记录

pre-Classic

Classic

Classic早期创造

多人测试

生存测试

Classic后期创造

Indev

Infdev

Alpha

Beta

正式版

开发版本

实验性内容

已移除特性

方块

物品

配方

未使用特性

独有特性

提及特性

计划版本

技术

已知漏洞

启动器

硬件需求

方块实体

命令

函数

崩溃

数据值

Classic

Indev

扁平化前

数据版本

调试屏幕

格式化代码

高度图

键控代码

启动器

注册表

命名空间ID

兴趣点

协议版本

种子

统计信息

UUID

出生点区块

出生点保护

坐标

字幕

世界加载屏幕

开发资源

文本组件

NBT格式

战利品表

Mojang API

网络协议

远程控制台协议

混淆映射表

.minecraft

存档格式

结构存储格式(Schematic文件格式)

过时开发资源

Classic服务器协议

al_version

材料

已配置的地表生成器

多人游戏

服务器

Minecraft Realms

服务器列表

服务端配置文件格式

服务器需求

定制服务器

游戏订制

皮肤

披风

资源包

纹理

模型

字体

着色器

声音事件

数据包

洞穴与山崖预览数据包

实验性内容

编 基岩版

版本

已合并

携带版

Windows 10版

移植到主机

Xbox One版

Nintendo Switch版

PlayStation 4版

已终止

Apple TV版

Gear VR版

Fire TV版

开发

版本记录

Alpha

正式版

开发版本

已移除特性

方块

配方

未使用特性

独有特性

提及特性

Super Duper图形包

计划版本

Minecraft Preview

技术性

已知漏洞

启动器

RenderDragon

数据值

实体组件

配置要求

Vibrant Visuals

光线追踪

构建信息

存档格式

动画

附加包

Molang

方块实体

命名空间ID

com.mojang

命令

函数

开发者命令

生成事件

坐标

材料

种子

专用服务器

sound_definitions.json

options.txt

常加载区域

世界加载屏幕

定义

基岩版编辑器

多人游戏

服务器

Realms Plus

服务器列表

server.properties

服务器软件

特色功能

实验性玩法

加载提示

种子模板

角色创建器

表情

市场

精选服务器

活动服务器

VR

Ore UI

相关推荐

如何开启sim卡
beat365平台正版

如何开启sim卡

📅 07-02 👁️ 1648
樗村的意思
365bet娱乐网

樗村的意思

📅 06-29 👁️ 4970
如何确定股票止跌信号出现? 今天的内容均干货较多,希望用心看完!我们知道,股价的运行几个阶段,如果概括起来讲,可以用三个大的阶段来形容TA也就是上涨...
365bet线上网址

如何确定股票止跌信号出现? 今天的内容均干货较多,希望用心看完!我们知道,股价的运行几个阶段,如果概括起来讲,可以用三个大的阶段来形容TA也就是上涨...

📅 07-16 👁️ 4182