LibJF — технічний мод-бібліотека та ядро для підтримки роботи сторонніх модифікацій у Minecraft
LibJF — технічний мод-бібліотека та ядро для підтримки роботи сторонніх модифікацій у Minecraft
Версія Minecraft, на якій тестувалося і написано статтю: 26.1.2
Діапазон підтримуваних версій: 1.16.5 – 26.1.2
Залежності: Fabric API (для Fabric-збірок)
LibJF — це модульна бібліотека від автора JFronny, що містить набір спільних компонентів для його ж модів. На комп'ютер гравця цей мод зазвичай ставлять не сам по собі, а як обов'язкову залежність — без нього відповідні моди не запустяться. До Minecraft LibJF не додає рецептів, мобів чи нових блоків. Його задача інша: винести повторювану функціональність — формат конфігів, систему перекладу, локальний HTTP-сервер, два службові теги — в окремий проєкт і використовувати її повторно в різних модах одного розробника.
Призначення у збірці
Бібліотека поділена на окремі модулі, кожен з яких відповідає за свою задачу: формат конфіг-файлів і їхнє внутрішньоігрове меню, теги для предметів, переклад, мережеві компоненти. Моди, що залежать від LibJF, підвантажують лише ті модулі, які реально використовують. Тому після першого запуску гри в папці config/ з'являється не один файл, а кілька — по одному на активний модуль.
Один із базових ефектів, який гравець помітить одразу — автоматичне перезавантаження конфігів. Параметр watchForChanges за замовчуванням увімкнено: якщо змінити будь-який конфіг-файл, що працює через LibJF, правки підхопляться без перезапуску гри.
Універсальні теги для предметів і броні
LibJF додає два теги, які доступні як іншим модам, так і ванільним датапакам:
Тег | Поведінка |
| Якщо істота одночасно носить чотири або більше предметів броні з цим тегом, вона стає невразливою до пошкоджень. |
| Предмети з цим тегом не можна класти всередину Шалкерової скрині. Тег задуманий для модованих предметів-«рюкзаків», щоб не дозволяти вкладати їх один в одного. |
Самі теги порожні — наповнення робить датапак або сторонній мод. Щоб у виживанні зробити, наприклад, повний шкіряний набір «непробивним», достатньо створити невеликий датапак, який додасть minecraft:leather_helmet, minecraft:leather_chestplate, minecraft:leather_leggings і minecraft:leather_boots у файл тегу libjf:overpowered.
Підсистема перекладу
Модуль libjf-translate-v1 дає іншим модам розробника доступ до сервісу перекладу рядків. Сама бібліотека нічого не перекладає в чаті чи інтерфейсі — вона лише визначає, через який зовнішній сервіс підуть запити, якщо мод-споживач їх викличе. Підтримується чотири варіанти провайдера:
Google — публічний інтерфейс перекладача Google (значення за замовчуванням).
DeepLX — відкрита реалізація API DeepL.
LibreTranslate — самохостингове рішення з відкритим кодом; вимагає окремо вказати адресу інстансу.
Noop — заглушка, яка повертає вхідний текст без змін; зручно для тестів і для повного вимкнення перекладу.
Окремий параметр throttleMillis задає мінімальну паузу між викликами сервісу. Це обмеження потрібне, щоб не отримати тимчасове блокування з боку безкоштовного API при частих запитах від мода-споживача.
Локальний веб-сервер
Модуль libjf-web-v1 піднімає всередині гри невеликий HTTP-сервер. Він використовується іншими модами автора тоді, коли треба віддати клієнтові щось більше за звичайний мережевий пакет — наприклад, статичну сторінку або файл попереднього перегляду. На стандартному робочому місці гравця цей модуль зазвичай мовчить: порт відкрито лише локально (127.0.0.1), а роздачу файлів вимкнено.
Адміни приватних серверів можуть увімкнути роздачу довільних файлів із папки config/wwwroot як статичних ресурсів через окремий параметр конфігу — це опційна можливість, не активована за замовчуванням.
Перш ніж міняти serverIp або вмикати enableFileHost, треба переконатися, що відповідний порт справді відкрито на брандмауері й (за потреби) проброшено через NAT. Інакше клієнт побачить помилку з'єднання при спробі звернутися до сервера.
Висновок
LibJF — це бібліотека-залежність, потрібна тоді, коли у збірці присутній мод того ж розробника або датапак, який використовує теги libjf:overpowered чи libjf:shulker_boxes_illegal. На фоні інших бібліотек подібного класу його відрізняє модульна архітектура та наявність локального HTTP-сервера разом із перекладацьким шаром, чого більшість допоміжних бібліотек не пропонує. Для звичайної ванільної збірки Minecraft Java Edition LibJF встановлювати немає сенсу; для збірок із модами JFronny — це обов'язковий компонент.
Встановлення
Типове встановлення займає близько 5 хвилин. Порядок однаковий; відрізняються лише лоадер і відповідна збірка.
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











