Factorio Natural Island Census
收藏资源简介:
Factorio自然岛屿普查是一个GPU加速的搜索项目,覆盖了所有4,294,967,296个可能的Factorio种子(默认地图设置,无island高程类型),以查找完全被水包围的陆地上生成的出生点。结果确认了2,599个自然岛屿,稀有度约为1/1,652,000,最大岛屿面积为7,430,080平方单位。数据集包含每个确认岛屿的种子、面积(平方单位)和出生点到封闭区域最远点的距离。
Factorio Natural Island Census is a GPU-accelerated search project that covers all 4,294,967,296 possible Factorio map seeds under default map settings, excluding the island elevation terrain type, to identify spawn points generated on landmasses fully surrounded by water. The study confirmed 2,599 natural islands, with an approximate rarity of 1 per 1,652,000, and the maximum island area reaches 7,430,080 square units. The dataset contains the seed, area (in square units), and the distance from the spawn point to the farthest point within the enclosed landmass for each confirmed island.
数据集概述:Factorio Natural Island Census
该数据集记录了在Factorio游戏默认地图设置(非“岛屿”地形类型)下,所有 4,294,967,296 个可能种子中,出生点位于完全被水域包围的陆地上的自然岛屿。
核心结果
- 确认岛屿总数:2,599 个。
- 稀有度:约 1 / 1,652,000。
- 最大岛屿:种子
1925425905,面积 7,430,080 格²。
搜索方法与性能
- 硬件:主要使用单台家用PC(AMD Ryzen 9 9950X3D + NVIDIA RTX 5090),并在最后阶段借助临时多云计算(Google Cloud L4、Vast.ai)加速。
- 单机吞吐量:约 7,300–9,700 种子/秒(是单线程CPU洪水填充速度的27–36倍)。
- 峰值吞吐量:14个并行工作节点,约 92,000 种子/秒。
- 搜索流程:
- 网格生成:复现游戏的地形噪声算法,生成海拔场。
- 级联过滤:对出生点周围5,000格半径区域进行多分辨率网格检查,懒评估策略,仅探索搜索前沿触及的网格线。
- 洪水填充验证:所有级联过滤出的阳性结果均经过精确的C++洪水填充算法(
code/floodfill/stages.cpp)最终确认。
数据集内容
仓库内包含以下主要文件与目录:
code/:源代码,包含网格生成(mesh/)、洪水填充(floodfill/)、级联管道(pipeline/)等模块。data/MASTER_all_fronts.csv:所有确认岛屿的完整列表,包含种子、面积(格²)及出生点到封闭区域最远点的距离。data/ZERO_AREA_SEEDS_excluded.csv:零面积边缘案例中被排除的种子列表。data/island_area_histogram.png:岛屿面积直方图(中位数 955,344 格²)。images/part1/、part2/、part3/:所有确认岛屿的洪水填充可视化验证图(共2,599张),按面积从大到小分三个目录存放。images/top_400_mosaic.jpg:面积最大的400个岛屿的拼贴图(20×20网格)。excluded_zero_area_images/:被排除的98个零面积种子的证明图片。leader_showcase/:最大岛屿(种子1925425905)的完整管道运行数据展示,包括级联各阶段和最终洪水填充结果的可视化。
特殊边缘案例
- 零面积:105个种子初始面积为0(出生点落在小湖上)。重新分析后,101个被确认为普通大陆,4个是极小的真实岛屿(面积3–6格²)。
- 精度边缘:
2098331609(16格²)和2888143787(32格²)两个岛屿的面积因不同实现间的微小浮点差异而存在不确定性,但仍计入确认总数。
数据来源:该数据集基于 ness056/fast-factorio-seed-finder 项目逆向工程的地图生成算法,并受 Reddit 用户 u/int_ua 的帖子 启发而创建。
数据文件与图片的绝对地址示例(根据仓库结构推断):
- 主数据文件:
https://github.com/Yambda/factorio_island_finder/blob/main/data/MASTER_all_fronts.csv - 直方图:
https://github.com/Yambda/factorio_island_finder/blob/main/data/island_area_histogram.png - 最大岛屿展示:
https://github.com/Yambda/factorio_island_finder/tree/main/leader_showcase




