首页 » 软件开发 » 需要6000万G硬盘?(区块加载硬盘世界地图)

需要6000万G硬盘?(区块加载硬盘世界地图)

admin 2024-07-24 17:11:02 0

扫一扫用手机浏览

文章目录 [+]

区块,实际上是《我的世界》一个地图的生成单位,你要明白的是,mc不是以单个方块来生成的。
而是以一个区块一个区块来进行生成的。
而F3+G这个快捷键,可以帮助玩家看到区块的边界在哪里。

所以一个很客观,且现实的问题就是,想要让《我的世界》整个地图加载出来,你可能需要花费数数百年在Minecraft中四处走动来激活每一个区块。

需要6000万G硬盘?(区块加载硬盘世界地图) 软件开发
(图片来自网络侵删)

显然这是一个人,一台电脑绝对无法完成的事情!
尽管我们有这种实验的想法,地球上也未必有几个人能够做到!

《我的世界》数据储存的逻辑

首先,我们来谈一谈Minecraft中地图的储存逻辑。
一个显而易见的事实就是,mc的地图往往会随着玩家的探索而不断增大,所以往往会出现玩的时间越久,这个存档就会越大的情况。

这是因为Minecraft的地图,会随着玩家的探索,加载的区块会逐渐增多。
这加载的区块信息就被会储存在硬盘上。
当玩家远离这个区块,它会被卸载;当你靠近,它又会被调用。
所以你会发现,加载一个曾经来过的区块,比加载一个新的区块似乎耗时更短!
也因此久而久之,老的区块储存在硬盘里,地图就会越变越大!

所以其实我们可以得出一个结论:mc的地图,是以1616256的区块为单位进行储存的。

喜欢倒腾存档的玩家的都知道,当我们在第三方软件中加载一个地图时,往往会使用存档文件夹中的level.dat文件。
而这是存储关于世界的全局信息,包括方块、玩家、生物等等。
那么什么文件是用来储存区块信息的呢?

这就不得不提到mca文件,这是用来储存独立的区块信息。
如果我们一个区块当作一个正方形,那么一个mca文件,就可以储存3232=1024个区块。

也就是说,一个mca文件的长度为3216=512格。

计算,《我的世界》究竟需要多大的硬盘?

现在,我们以JAVA版为例。
老生常谈了,JAVA版的Minecraft的世界长度为6000万,所以单个世界边长,若区块全部加载就可以生成60,000,000/512=117,187.5个mca文件。

换句话说,以面积来计算,整个《我的世界》地图会形成13,732,910,156个文件。
你没看错,也就是137亿个mca文件!

已知:一个mca文件大约是4400KB(1024个区块),也就是说一个区块的文件大约是4KB多。
所以mc整个地图全部加载的话,它的内存大约是60,424,804,686,400KB。

换算一下就是60424804686MB=60424805GB=60425TB=60PB!
近乎6000万GB的硬盘!

60PB是个什么概念?已知目前世界上最大的单个固态硬盘,已经达到了100TB。
正常最为普及的家用电脑的固态盘至少也都达到了500G-1T的标准。

若以普通家用电脑为例,你需要整整6万-12万台电脑!

需要多少年,才能下载完地图?

既然Minecraft地图的大小,以及需要的电脑数量我们计算出来了。
那么如此推演下去:高达60PB的数据,究竟需要多少年才能下载到电脑硬盘里?

毕竟,你要知道,即便是运行了近10年的2B2T服务器,它号称拥有世界上mc最大地图的服务器,其地图大小也不过刚好过了4TB!
等等,十年,就加载了4TB的地图出来?

通常来说,如今电脑硬盘的读写速度80MB/秒 - 200MB/秒之间,最理想的状态下,已经加载完成的区块当再次被调用时,其极值也不会超过这个数字。
但新加载区块其平均速率据说为14MB/秒,我们如何按这个速度,全天24小时都在不间断的探索新区块。

12万台电脑,需要整整137年!
才能将整个Minecraft下载到硬盘上!

恐怖如斯!

标签:

相关文章

C语言表白代码,编程之美,爱意绵绵

在这个科技飞速发展的时代,编程已经成为了我们生活中不可或缺的一部分。而C语言作为一门经典的编程语言,更是备受青睐。今天,就让我们用...

软件开发 2024-12-04 阅读9 评论0

16倍速生活方式,高效工作与生活的完美融合

随着科技的飞速发展,我们的生活节奏也在不断加快。在这个快节奏的时代,如何高效地平衡工作与生活,成为了许多人关注的焦点。本文将探讨1...

软件开发 2024-12-04 阅读8 评论0

C语言编程猜数游戏,编程与娱乐的完美融合

在科技日新月异的今天,编程已经成为一项重要的技能。作为计算机科学的基础,编程不仅可以锻炼我们的逻辑思维,还能提高我们的动手能力。而...

软件开发 2024-12-04 阅读8 评论0

C语言病毒代码介绍,技术与道德的双重挑战

随着信息技术的飞速发展,网络安全问题日益凸显。病毒作为一种恶意软件,严重威胁着计算机系统的稳定运行。C语言作为一种功能强大的编程语...

软件开发 2024-12-04 阅读6 评论0