Nether Garden Generation
基本信息
| 属性 |
值 |
| 类型 |
IWorldGenerator — 仅下界维度 |
| 触发阶段 |
FMLPostInitializationEvent(依据 FetherConfig.gardenRarity/glowFlowerRarity/treeRarity 注册) |
| 3 个生成源 |
Nether Garden、Glow Flower、Nether Tree |
行为
WorldGeneratorNether 在 Fether.postInit 中按 0 优先级注册(先于玩家生成),每 chunk 重复多次调用底层生成器:
gardenRarity > 0 → WorldGeneratorNether(FetherConfig.gardenRarity, new WorldGenNetherFlowers(false, FetherBlocks.blockNetherGarden)) —— 每 chunk 最多 4 次(默认)调用 WorldGenNetherFlowers.generate。generate 内部循环 8 次,每次尝试在 ±15×±7×±15 内、flower.canPlaceBlockAt 通过的空气块放置 1 个 Nether Garden。所有位置 rng.setSeed(rng.nextLong() ^ this.salt) 防止相同位置生成相同状态(salt = hash(flower.delegate.name()) 两次)。
glowFlowerRarity > 0 → 同上但目标是 blockGlowFlower。
treeRarity > 0 → WorldGeneratorNether(FetherConfig.treeRarity, new WorldGenNetherTree(false)) —— 调用 WorldGenNetherTree.generate:高度 5–7、原木 meta 在 0 与 1 之间随机 1/8 替换,leaves 球半径 1/2/3;每片叶子的下方有 25% 概率生成 1 个 Ignis Fruit(要求下方 2 空气)。
数值
| 类别 |
键 |
默认 |
范围 |
| Garden |
gardenRarity |
4 |
[0, 1000] |
| Garden |
gardenSpreadRate |
100 |
[0, MAX_INT] |
| Glow Flower |
glowFlowerRarity |
4 |
[0, 1000] |
| Glow Flower |
glowFlowerSpreadRate |
100 |
[0, MAX_INT] |
| Tree |
treeRarity |
15 |
[0, 1000] |
相关条目