OreGenerator

OreGenerator

Data-driven ore generation framework for Hytale

4.1 тысяч загрузок
Обновлён 14 дней назад

Описание

alt text

Структура генератора руды

Структура генерации руды на основе данных с переопределениями на зону и на биом.

Как это работает

  • Фреймворк загружает каждый Сервер/OreGeneration*.json Он встречается в модах/пакетах.
  • Каждая конфигурация отображает сменные каменные блоки на варианты руды.
  • Зональные/биомные ключи должны совпадать с названиями двигателей (использование) / Игровая зона проверить).

Добавить руды через пакет (только JSON)

  • Создайте пакет с Server/OreGeneration/our_ore.json.
  • Бросьте пакет в модс/ и перезапустить.
  • Фреймворк автоматически загружает все конфигурации из пакетов при запуске.

Добавить руды через плагин (Java + JSON)

  • Добавьте фреймворк в качестве зависимости в манифест плагина: "LYIVX:OreGenerator": "*"
  • Соедините конфигурации в src/main/resources/Server/OreGeneration/.
  • Вариант: использование Config/OreGenerator/*.json Переопределить конфигурации во время выполнения.

Runtime Overrides (фреймворк)

  • Оверрайды создаются на первом ходу: Config/OreGenerator/*.json
  • Дополнительные конфигурации могут быть добавлены к: Config/OreGenerator/ores/

Пример конфигурирования (новый формат: поверхность + пещера)

{
"по умолчанию": {
"поверхность": {
"высота": { "мин": 60, "макс": 120},
"veinsPerChunk": 2,
"veinSize": { "min": 5, "max": 10},
"высотный показатель": 1.0,
"spawnChance": 0,8
?
"пещера": {
"высота": { "мин": 10, "макс": 60},
"повторить": { "мин": 15, "макс": 20},
"veinSize": { "min": 5, "max": 10},
"высотный показатель": 1.0,
"spawnChance": 1.0
?
?
"oreByBlock": {
"Rock_Stone": "Ore_Coal_Stone",
"Rock_Sandstone": "Ore_Coal_Sandstone",
"Rock_Slate": "Ore_Coal_Slate",
"Rock_Shale": "Ore_Coal_Shale",
"Rock_Basalt": "Ore_Coal_Basalt",
"Rock_Volcanic": "Ore_Coal_Volcanic"
?
?

Пример конфигурирования (формат наследия)

{
"по умолчанию": {
"мини": 10,
"максимум": 60,
"veinsPerChunk": 2,
"minVeinSize": 3,
"maxVeinSize": 7,
"spawnChance": 0.6,
"сменные блоки":
«Rock_Stone»
"Rock_Stone_Cobble"
«Rock_Stone_Mossy»
«Rock_Sandstone»
"Rock_Sandstone_Cobble"
"Rock_Slate"
"Rock_Slate_Cobble"
«Rock_Shale»
«Rock_Basalt»
"Rock_Basalt_Cobble"
«Rock_Volcanic»
]
?
"oreByBlock": {
"Rock_Stone": "Ore_Coal_Stone",
"Rock_Sandstone": "Ore_Coal_Sandstone",
"Rock_Slate": "Ore_Coal_Slate",
"Rock_Shale": "Ore_Coal_Shale",
"Rock_Basalt": "Ore_Coal_Basalt",
"Rock_Volcanic": "Ore_Coal_Volcanic"
?
"Зоны": {
"Зона 1": {
"Plains1_Oak":
"Plains1_Gorges":
"Plains1_Deeproot": {
"spawnChance": 0,4
?
?
?
?

Распределение высоты

  • высота Управляет диапазоном min/max Y.
  • высота экспонент контроль вертикального смещения: 1.0 является однородным, > 1.0 опускаться ниже, <1,0> Искажённее.

Поверхность vs пещерные блоки

  • поверхность Биом/надземный проход (более низкая плотность, биом-настроенный).
  • пещера Пещерный проход (повторные попытки, более плотное под землей).
Показать оригинальное описание (English)

alt text

Ore Generator Framework

Data-driven ore generation framework with per-zone and per-biome overrides.

How it works

  • The framework loads every Server/OreGeneration/*.json it finds in mods/packs.
  • Each config maps replaceable rock blocks to ore variants.
  • Zone/biome keys must match engine names (use /player zone to check).

Add ores via a pack (JSON only)

  • Create a pack with Server/OreGeneration/your_ore.json.
  • Drop the pack into mods/ and restart.
  • The framework auto-loads all configs from packs at startup.

Add ores via a plugin (Java + JSON)

  • Add the framework as a dependency in your plugin manifest: "LYIVX:OreGenerator": "*"
  • Bundle your configs in src/main/resources/Server/OreGeneration/.
  • Optional: use config/OreGenerator/*.json to override configs at runtime.

Runtime overrides (framework)

  • Overrides are created on first run: config/OreGenerator/*.json
  • Extra configs can be added to: config/OreGenerator/ores/

Example config (new format: surface + cave)

{
  "defaults": {
    "surface": {
      "height": { "min": 60, "max": 120 },
      "veinsPerChunk": 2,
      "veinSize": { "min": 5, "max": 10 },
      "heightExponent": 1.0,
      "spawnChance": 0.8
    },
    "cave": {
      "height": { "min": 10, "max": 60 },
      "repeat": { "min": 15, "max": 20 },
      "veinSize": { "min": 5, "max": 10 },
      "heightExponent": 1.0,
      "spawnChance": 1.0
    }
  },
  "oreByBlock": {
    "Rock_Stone": "Ore_Coal_Stone",
    "Rock_Sandstone": "Ore_Coal_Sandstone",
    "Rock_Slate": "Ore_Coal_Slate",
    "Rock_Shale": "Ore_Coal_Shale",
    "Rock_Basalt": "Ore_Coal_Basalt",
    "Rock_Volcanic": "Ore_Coal_Volcanic"
  }
}

Example config (legacy format)

{
  "defaults": {
    "minY": 10,
    "maxY": 60,
    "veinsPerChunk": 2,
    "minVeinSize": 3,
    "maxVeinSize": 7,
    "spawnChance": 0.6,
    "replaceableBlocks": [
      "Rock_Stone",
      "Rock_Stone_Cobble",
      "Rock_Stone_Mossy",
      "Rock_Sandstone",
      "Rock_Sandstone_Cobble",
      "Rock_Slate",
      "Rock_Slate_Cobble",
      "Rock_Shale",
      "Rock_Basalt",
      "Rock_Basalt_Cobble",
      "Rock_Volcanic"
    ]
  },
  "oreByBlock": {
    "Rock_Stone": "Ore_Coal_Stone",
    "Rock_Sandstone": "Ore_Coal_Sandstone",
    "Rock_Slate": "Ore_Coal_Slate",
    "Rock_Shale": "Ore_Coal_Shale",
    "Rock_Basalt": "Ore_Coal_Basalt",
    "Rock_Volcanic": "Ore_Coal_Volcanic"
  },
  "zones": {
    "Zone1": {
      "Plains1_Oak": {},
      "Plains1_Gorges": {},
      "Plains1_Deeproot": {
        "spawnChance": 0.4
      }
    }
  }
}

Height distribution

  • height controls the min/max Y range.
  • heightExponent controls vertical bias: 1.0 is uniform, > 1.0 skews lower, < 1.0 skews higher.

Surface vs cave blocks

  • surface is the biome/overground pass (lower density, biome-tuned).
  • cave is the cave pass (repeat-style attempts, denser underground).

Последние версии

OreGenerator-0.2.1.jar

Early Access 19.01.2026 110.2 КБ
Скачать

OreGenerator-0.2.0.jar

18.01.2026 108.1 КБ
Скачать

OreGenerator-0.1.1.jar

Early Access 18.01.2026 103.1 КБ
Скачать

OreGenerator-0.1.0.jar

Early Access 18.01.2026 102.9 КБ
Скачать