SDM Ore Stages
SDM Ore Stages — это современная переработка классического мода Ore Stages, адаптированная для новых версий Minecraft (1.21 и выше) и полностью интегрированная в экосистему SDM Stages.
Мод позволяет ограничивать доступ к блокам поэтапно — скрывать, заменять или делать их недоступными до тех пор, пока игрок не достигнет желаемой стадии прогресса.
Основные возможности
- Поэтапная система прогрессии через SDM Stages — больше не требуется GameStages.
 - Сокрытие и замена блоков: Например, 
diamond_oreможно превратить вstoneдо открытия стадии. - Поддержка CraftTweaker и KubeJS для гибкой настройки.
 - Полная поддержка 
BlockState— могут быть установлены состояния (snowy=false,axis=yи т.д.). 
Требования
⚠️ Поддерживаются только версии Minecraft 1.21 и выше.
Старые версии (1.20.x и ниже) не поддерживаются и не будут работать. (Возможно, портирование будет позже.)
Как это работает?
Если игрок **не имеет требуемой стадии**:
- Блок выглядит как замена (например, 
stoneвместоdiamond_ore). - Игрок не может взаимодействовать с ним (PCM, разрушение, активация).
 - При разрушении блок выпадает предметы своей замены.
 - Скорость копания такая же, как у замены.
 - Если блок разрушается без участия игрока (взрыв, жидкость, машина), используется "поведение по умолчанию".
 
Примеры: KubeJS
// server_scripts/example.js
// Заменяет траву на дубовое бревно до открытия стадии "one"
OreStages.addOreStageBlockReplaced("one", "minecraft:grass_block", "minecraft:oak_log");
// Заменяет железную руду на камень до открытия стадии "two"
OreStages.addOreStageBlockReplaced("two", "minecraft:iron_ore", "minecraft:stone");
// Скрывает алмазную руду до стадии "three"
OreStages.addOreStageBlockState("three", "minecraft:diamond_ore");
/*
OreStages.addOreStageBlock(stage as String, hidden as Block);            // По умолчанию используется камень или глубинный сланец.        
OreStages.addOreStageBlockState(stage as String, hidden as BlockState);  // По умолчанию используется камень или глубинный сланец.       
OreStages.addOreStageBlockReplaced(stage as String, hidden as Block, replaced as Block);
OreStages.addOreStageBlockStateReplaced(stage as String, hidden as BlockState, replaced as BlockState);
*/Примеры: CraftTweaker
import mods.orestages.OreStages;
// Заменяет траву на дубовое бревно до открытия стадии "one"
OreStages.addOreStage("one", , );
// Заменяет железную руду на камень до открытия стадии "two"
OreStages.addOreStage("two", , );
// Скрывает алмазную руду до стадии "three"
OreStages.addOreStage("three", 
       ); /* OreStages.addOreStage(stage as string, hidden as Block); // По умолчанию используется камень или глубинный сланец. OreStages.addOreStage(stage as string, hidden as BlockState); // По умолчанию используется камень или глубинный сланец. OreStages.addOreStage(stage as string, hidden as Block, replaced as Block); OreStages.addOreStage(stage as string, hidden as BlockState, replaced as BlockState); */     Интеграции
| Мод | Описание | 
|---|---|
| SDM Stages | Система стадий и прогрессии игрока | 
| CraftTweaker | Настройка через ZS-скрипты | 
| KubeJS | Настройка через JS-скрипты | 
Заметка для создателей модпаков
Мод идеально подходит для:
- RPG/квестовых сборок с постепенным открытием руд и ресурсов.
 - Образовательных модпаков, где новые игроки изучают механику шаг за шагом.
 - Серверов с прогрессией или балансом tech-tree.
 
										
        
