Revelationary - это мод для Minecraft, который вводит систему постепенного раскрытия блоков и предметов. Вместо того чтобы показывать всё сразу, он скрывает новые ресурсы, пока игрок не выполнит определённые условия (advancements). Всё лишнее маскируется под другие блоки или получает загадочные названия.
Зачем это нужно? В больших модпаках игрок с самого начала видит десятки новых руд, растений и предметов - это сбивает с толку. Revelationary плавно вводит контент: сперва вы копаете обычный камень, а после победы над драконом Края обнаруживаете, что это была ценная руда. И так для каждого игрока индивидуально, без потери производительности.
Revelationary - это система раскрытия блоков и предметов, управляемая датапаками. Открывайте новое по мере прохождения!
Мод позволяет скрывать появление новых блоков через датапаки или API (для других модов). С его помощью вы можете построить прогрессию так, чтобы игрок не чувствовал себя перегруженным. Он увидит только те блоки, которые уже открыл - тогда блок становится для него видимым.
Пример: игрок видит руду как камень. Как только он побеждает дракона, руда становится видимой - и её можно добывать. На самом деле она была там с самого начала. Система работает индивидуально и шустро.
"[revelation] - это раскрытие или обнаружение некоторой истины или знания".
Если вы создаёте мод или модпак с прогрессией, вы пришли по адресу. С Revelationary вы можете с помощью датапаков или API постепенно открывать блоки в мире по мере продвижения игрока. Обычный каменный разлом может оказаться полным жизни и руды, как только игрок победит босса или достигнет важной вехи.
Пока игрок не выполнил условия, блоки и предметы, зарегистрированные через API или датапак, будут иметь загадочные названия, а блоки в мире будут выпадать как замаскированный блок. Это даёт плавный опыт без потока неизвестных ресурсов, которые нельзя использовать в начале. Вместо этого вы вводите ресурсы именно тогда, когда они нужны.
Кроме визуала и дропа, замаскированные блоки сохраняют все свойства оригинала: хитбокс, пропускание света и всё остальное. Учитывайте это при выборе подходящих кандидатов. Идеальная маскировка для руды - камень или глубинный сланец, так как у них много общего. Неуловимое растение можно замаскировать под мак: у обоих маленький хитбокс, игроки проходят сквозь них.
Если вы программист, используйте API Revelationary для динамического изменения свойств блока в зависимости от того, видит ли его игрок. Например, замаскируйте цветок под воздух: когда он скрыт, у него пустой хитбокс - игроки даже не знают, что он там, пока не увидят его.
JSON-файл кладётся в папку resources/data/<<mod_id>>/revelations:
{
"advancement": "spectrum:milestones/reveal_quitoxic_reeds",
"block_states": {
"minecraft:grass": "minecraft:beacon",
"minecraft:tall_grass": "minecraft:obsidian",
"minecraft:tall_grass[half=upper]": "minecraft:netherite_block"
},
"items": {
"minecraft:nether_star": "minecraft:gunpowder"
}
}
public class CloakedItem extends Item implements RevelationAware {
Identifier cloakAdvancementIdentifier;
Item cloakItem;
public CloakedItem(Settings settings, Identifier cloakAdvancementIdentifier, Item cloakItem) {
super(settings);
this.cloakAdvancementIdentifier = cloakAdvancementIdentifier;
this.cloakItem = cloakItem;
registerCloak();
}
@Override
public Identifier getCloakAdvancementIdentifier() {
return cloakAdvancementIdentifier;
}
@Override
public Hashtable<BlockState, BlockState> getBlockStateCloaks() {
return new Hashtable<>();
}
@Override
public Pair<Item, Item> getItemCloak() {
return new Pair<>(this, cloakItem);
}
@Override
public void onCloak() { }
@Override
public void onUncloak() { }
}
RevelationHolder.registerRevelationCallback(new RevelationHolder.UncloakCallback() {
@Override
public void trigger(List<Identifier> advancements, List<Block> blocks, List<Item> items) {
for(Block block : blocks) {
if(Registry.BLOCK.getId(block).getNamespace().equals(MOD_ID)) {
// Здесь можно показать всплывающее окно или что-то ещё
break;
}
}
}
});
Множество примеров для датапаков и API помогут разобраться. Если вы делаете модпак с сюжетом или технический модпак, Revelationary - must-have. Скачайте мод и настройте прогрессию так, как вам нужно!

Мод Revelationary добавляет систему поэтапного раскрытия блоков и предметов через датапаки. Скрывайте новые ресурсы до выполнения достижений. Идеально для модпаков с прогрессией.