Structure Explorer
Отслеживает структуры, обнаруженные игроками, а также позволяет просматривать отслеживание себя, других игроков и таблицу лидеров
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 1,4 тыс.
- Подписчиков на Modrinth
- 9
- версий
- 14
- Обновлён
- 16 сентября 202616 сент.
- Опубликован
- в 2026
Коротко о моде
Ставится только на сервер; игрокам ставить не нужно
Structure Explorer
Этот мод мотивирует игроков попытаться найти все структуры, которые есть в мире!
Я хотел сделать сервер, который стимулировал бы исследовать все уголки мира, тем более что каждые несколько месяцев добавляются новые структуры, но не смог найти ни одного мода, который отслеживал бы найденные структуры. Много лун назад я пытался сделать такой сам, но потерпел неудачу, а потом попробовал снова и управился всего за два дня.
Работает это так: каждые 5 секунд (по умолчанию) мод автоматически проверяет всех движущихся игроков — находятся ли они внутри структуры, — и добавляет её в список найденных структур для этого игрока. 
⌨ Команды
Основная команда: /explorer — псевдоним: /discoveries
| Команда | Описание |
|---|---|
| `/explorer page? ` | Ваши найденные структуры. Страница необязательна |
| `/explorer player page? ` | Посмотреть находки другого игрока. Страница необязательна |
| `/explorer structure ` | Кто нашёл конкретную структуру |
| `/explorer instances page? ` | Ваши зафиксированные случаи посещения конкретной структуры. Страница необязательна |
/explorer here | Показать инфопанель для структуры, в которой вы сейчас стоите |
| `/explorer leaderboard page? ` | Топ игроков по количеству находок. Страница необязательна |
| `/explorer playerinstances ` | [OP] Посмотреть случаи посещения любого игрока |
/explorer reload | [OP] Перезагрузить конфиг и переводы |
📝 Файл конфига — structure_explorer.json
Расположен по пути: config/structure_explorer/structure_explorer.json
| Ключ | По умолчанию | Описание |
|---|---|---|
checkIntervalMs | 5000 | Как часто (в мс) мод проверяет, вошёл ли игрок в структуру. Меньше = отзывчивее, но чуть больше нагрузка на сервер. |
showNthDiscoverer | true | Показывать ли значки первооткрывателя в уведомлениях чата, например [First Discoverer!] или [3rd Discoverer]. |
useMonthDayYear | false | Формат времени. false = ДД/ММ/ГГГГ ЧЧ:ММ:СС — true = ММ/ДД/ГГГГ ЧЧ:ММ:СС |
trackInstances | true | Записывать ли координаты и время для каждого посещённого случая структуры. При false отслеживаются только типы найденных структур. |
sounds.newDiscoverySound | true | Проигрывать звук при новой находке. |
sounds.newInstanceSound | true | Проигрывать звук при новом случае посещения. |
🛠 Для создателей модов
Structure Explorer может подхватывать названия структур двумя способами — выбирайте тот, что удобнее.
Вариант 1 — Lang-файл (проще всего)
Если у вашего мода уже есть lang-файл, Structure Explorer читает его автоматически. Просто добавьте записи в таком формате ключа:
"structure.<namespace>.<path>": "Display Name"Пример в assets/mymod/lang/en_us.json:
{
"structure.mymod.cool_dungeon": "Cool Dungeon"
}Никаких дополнительных файлов не нужно — названия подхватываются автоматически (точнее о том, как именно они отображаются, см. в сценариях ниже).
Примечание: Это работает только для lang-файлов, встроенных прямо в JAR мода (`assets//lang/en_us.json`). Structure Explorer работает на стороне сервера и не может читать lang-файлы ресурспаков — они существуют только на клиенте и никогда не видны серверу. Если ваши lang-записи лежат в отдельном ресурспаке, а не в JAR мода, используйте вместо этого Вариант 2 ниже.
Вариант 2 — translations.json (полный контроль)
Для полного контроля над префиксом, суффиксом, цветами и точными названиями положите файл внутрь JAR вашего мода по пути data/<your_modid>/structure_explorer/translations.json, используя тот же формат файла переводов, что и в конфиге администратора сервера. Он загружается раньше файлов из config/translations/, так что администраторы сервера всегда могут его переопределить.
Как они взаимодействуют
Допустим, в языковом файле Katter's Structures есть "structure.kattersstructures.sky_dungeo": "Sky Dungeon". Вот как определяется итоговое отображаемое имя:
Сценарий 1 — нет ни записи в языковом файле, ни записи в переводах
например, для
kattersstructures:ancient_ruins, где ничего нигде не задано Результат: Ancient Ruins [Kattersstructures] И путь структуры, и пространство имён автоматически приводятся к читаемому виду (подчёркивания → пробелы, каждое слово с заглавной буквы) и объединяются — это запасной вариант по умолчанию.
Сценарий 2 — имя в языковом файле есть, записи в переводах для пространства имён нигде нет (ни в моде, ни в конфиге сервера)
Результат: Sky Dungeon [Kattersstructures] Пространство имён автоматически приводится к читаемому виду и добавляется в скобках, так как ничто его не настраивает.
Сценарий 3 — запись в переводах переопределяет имя конкретной структуры
{
"translations": {
"kattersstructures": {
"suffix": " [Katter's Structures]",
"suffix_color": "gray",
"structures": { "sky_dungeo": "Big Sky Fortress" }
}
}
}Результат: Big Sky Fortress [Katter's Structures] Используется переопределённое имя, применяется оформление, а автоматические скобки исчезают.
Сценарий 4 — запись в переводах оформляет пространство имён, но не переопределяет эту структуру
{
"translations": {
"kattersstructures": {
"prefix": "Katter's: ",
"prefix_color": "red"
}
}
}Результат: Katter's: Sky Dungeon Для
sky_dungeoпереопределения нет, поэтому за основу берётся имя из языкового файла — с оформлением и без автоматических скобок.
Если кто-то хочет сделать неофициальную поддержку других модов, подойдут датапаки — просто добавьте data/<your_namespace>/structure_explorer/translations.json, как в варианте 2 выше. Они загружаются до файлов из config/translations/, так что админы серверов всегда могут их переопределить.
🗣 Переводы
Названия ванильных структур переводятся по умолчанию — например, minecraft:fortress ➡ Nether Fortress. Чтобы настроить имена для любого пространства имён, положите JSON-файлы в:
config/structure_explorer/translations/ — файлы могут называться как угодно (например, minecraft.json, custom.json) и загружаются после встроенных переводов и переводов из модов, так что всегда побеждают. Перезагрузить можно в любой момент командой /explorer reload (требуются права OP).
Формат файла переводов
{
"replace": false,
"translations": {
"namespace": {
"prefix": "",
"prefix_color": "",
"suffix": "",
"suffix_color": "",
"name_color": "",
"structures": {
"structure_path": "Display Name"
}
}
}
}Вот пример с использованием Minecraft Vanilla Locations
| Ключ | По умолчанию | Описание |
|---|---|---|
replace | false | false — объединяет с существующими переводами (новый файл побеждает при конфликте, prefix/suffix/цвета переопределяются только если не пустые). true — отбрасывает все встроенные и предыдущие переводы для этого пространства имён — останется только то, что вы зададите здесь. |
prefix / suffix | "" | Текст, отображаемый до/после имени структуры, например "prefix": "Minecraft: " → Minecraft: Stronghold |
prefix_color / suffix_color / name_color | (gold) | Цвет, применяемый к каждой части отдельно. См. Цвета. |
structures | (нет) | Сопоставление пути структуры → отображаемому имени. Путь — это часть после двоеточия в ID структуры — например, minecraft:stronghold → путь stronghold |
Цвета
Именованные цвета (регистр не важен): black dark_blue dark_green dark_aqua dark_red dark_purple gold gray dark_gray blue green aqua red light_purple yellow white
Шестнадцатеричные цвета (в стиле CSS, с префиксом #): "#FF5500" "#00AAFF" "#FFFFFF"
Отказ от ответственности: при создании этого мода в разной степени использовался ИИ.
Я не смог бы начать делать этот мод без изменения и изучения мода WITS от TelepathicGrunt
Частые вопросы
Как установить Structure Explorer?
Установите Fabric под свою версию Minecraft, скачайте Structure Explorer под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Structure Explorer?
У Structure Explorer есть сборки для Minecraft 1.21.11–26.3.
Нужен ли Structure Explorer на сервере?
Ставится только на сервер; игрокам ставить не нужно