OreGenerator
Data-driven ore generation framework for Hytale
4.1 тысяч загрузок
Обновлён 14 дней назад
Описание

Структура генератора руды
Структура генерации руды на основе данных с переопределениями на зону и на биом.
Как это работает
- Фреймворк загружает каждый
Сервер/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)

Ore Generator Framework
Data-driven ore generation framework with per-zone and per-biome overrides.
How it works
- The framework loads every
Server/OreGeneration/*.jsonit finds in mods/packs. - Each config maps replaceable rock blocks to ore variants.
- Zone/biome keys must match engine names (use
/player zoneto 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/*.jsonto 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
heightcontrols the min/max Y range.heightExponentcontrols vertical bias:1.0is uniform,> 1.0skews lower,< 1.0skews higher.
Surface vs cave blocks
surfaceis the biome/overground pass (lower density, biome-tuned).caveis the cave pass (repeat-style attempts, denser underground).
Информация
Авторы:
Категории:
Версии игры:
Early Access
Создан: 18.01.2026