Boris Lib
Библиотека для моих серверных модов на Fabric. Содержит кучу всего очень полезного для меня и других моддеров!
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 2,6 тыс.
- Подписчиков на Modrinth
- 4
- версии
- 53
- Обновлён
- 14 октября 202614 окт.
- Опубликован
- в 2025
Коротко о моде
Ставится только на сервер; игрокам ставить не нужно
BorisLib
**Серверный тулкит для Fabric, на котором работают Arcana Novum и Ancestral Archetypes.
Создавайте моды с настоящими GUI, конфигами, сохранёнными данными и кастомными эффектами. Игрокам не нужны никакие моды.**
Попали сюда, потому что мод попросил установить это? Положите jar в папку mods вашего сервера рядом с Fabric API и переходите к разделу Настройка сервера. Больше ничего не нужно.
Делаете мод? Читайте дальше.
Зачем нужен BorisLib
Серверные моды работают на ванильных клиентах, а это значит, что меню, конфиги, сохранённые данные и эффекты статуса приходится делать вручную. BorisLib — это набор систем, которые я построил для этого во время работы над Arcana Novum, магическим модом с 80+ предметами, боями с боссами и внутриигровым меню для всего. Каждая система используется на живых серверах, и вы можете подключить их к своему моду одной строкой в Gradle.
Что вы получаете
- Сундучные GUI с постраничной навигацией, сортировкой и фильтрацией. Передайте
PagedGuiсписок — он сам разберётся со страницами и кнопками. В комплекте более 60 текстурных и красящихся иконок, а игроки без ресурспака увидят вместо них ванильные предметы. - Конфиг в пару строк. Объявите типизированные настройки и получите
.properties-файл с комментариями, команду/yourmod configс автодополнением и валидацией, а также ноду прав для каждой настройки. - Сохранённые данные для игроков, миров и сервера. Зарегистрируйте один ключ и читайте или записывайте свой объект где угодно. Работает для офлайн-игроков, и у каждой области есть устойчивые к крашам бэкапы.
- Conditions: эффекты статуса, которые складываются как атрибуты. Любое число источников может наложить один и тот же эффект, противоположные эффекты взаимно гасятся, а величины могут доходить до бесконечности для полного иммунитета или полного обездвиживания. Встроен 31 condition — от урона и скорости до гравитации, лечения и радиуса обнаружения мобов.
- Катсцены. Ведите камеру игрока по пути из ключевых кадров с easing и сплайнами, в его собственном измерении или в другом, оставляя вместо него заглушку там, где он стоял. Его состояние восстанавливается даже после отключения или краша.
- Таймеры и колбэки входа. Выполняйте код с задержкой, через интервал или при следующем входе игрока.
- Фигуры из частиц. Линии, круги, сферы и анимированные молнии, видимые на большом расстоянии.
- Большой набор утилит. Рейкасты по нескольким сущностям, взвешенный рандом, безопасные проверки телепортации, хелперы для инвентаря и данных предметов, разметка текста, форматирование чисел и звуки.
Быстрый взгляд
Постраничное сортируемое меню для любого списка:
PagedGui<Item> gui = new PagedGui<>(MenuType.GENERIC_9x6, player, items);
gui.itemElemBuilder((item, index) -> GuiElementBuilder.from(item.getDefaultInstance()));
gui.elemClickFunction((item, index, click) -> player.sendSystemMessage(Component.translatable(item.getDescriptionId())));
gui.curSort(ItemSort.ALPHABETICAL);
GuiHelper.outlineGUI(gui, 0x1155dd, Component.literal("Items"));
gui.buildPage();
gui.open();
Бафф урона, который складывается с любым другим источником:
```java
// +50% наносимого урона на 10 секунд
Conditions.addCondition(server, player, new ConditionInstance(Conditions.MIGHT, id, 200, 0.5f));Данные, которые следуют за игроком, в сети он или нет:
Wallet wallet = DataAccess.getPlayer(uuid, Wallet.KEY);
wallet.coins += 5;
DataAccess.setPlayer(uuid, Wallet.KEY, wallet);Катсцена с камерой:
CameraPath path = CameraPath.builder()
.add(CameraKeyframe.at(0.0).pos(0, 80, 0).rot(0, 20).build())
.add(CameraKeyframe.at(1.0).pos(60, 80, 0).rot(90, 0).interp(InterpolationType.EASE_IN_OUT).build())
.build();
SequenceManager.start(player, new CutsceneSequence(player.getUUID(), path, 200, true));Добавление в свой мод
repositories {
maven { url = "https://maven.borisshoes.net/releases" }
maven { url = "https://maven.nucleoid.xyz" }
}
dependencies {
implementation "net.borisshoes:BorisLib:4.0.0+26.3"
}Используй версию со страницы версий, подходящую твоей версии Minecraft. Чтобы встроить BorisLib в свой jar, чтобы владельцам серверов не пришлось ничего дополнительно устанавливать, оберни строку в include(...).
Руководство по API на GitHub описывает каждую систему с примерами, а классы повсюду снабжены Javadoc. Если застрянешь, спрашивай в Discord.
Моды, созданные с BorisLib
Установи один из них, чтобы увидеть, на что способна библиотека, прежде чем писать код.
Arcana Novum
Крупнейший серверный мод на магию для Minecraft: 80+ предметов Arcana, многоблочные алтари, 190+ аугментаций, исследования, достижения и бои с боссами. Его меню Tome и Compendium — это GUI на BorisLib, его 400+ настроек — конфиг BorisLib, а эффекты предметов используют Conditions.
| Ковка в Starlight Forge | Алтарь Starpath | Поздняя экипировка |
|---|---|---|
![]() | ![]() | ![]() |
Ancestral Archetypes
Мод в стиле Origins, где каждый игрок выбирает архетип на основе моба и получает его способности. Он очень гибко настраивается и сбалансирован для соревновательных серверов, а работает на конфиге, хранилище данных и Conditions из BorisLib.
Другие моды, созданные с BorisLib
Все — серверные моды на Fabric, установка на клиент не требуется.
|
| Limited AFK | Обнаружение и управление AFK с настраиваемыми порогами кика для серверов. |
|
Сделал что-то с BorisLib? Расскажи мне в Discord, и я добавлю это сюда.
Настройка сервера
- Установи Fabric Loader и Fabric API на свой сервер, затем положи jar-файл BorisLib в папку
mods. Все остальные библиотеки уже включены, а игрокам ничего устанавливать не нужно. - Запусти сервер один раз, чтобы сгенерировались конфиги.
- Открой
config/polymer/auto-host.jsonи измени"enabled": falseнаtrue. Теперь сервер генерирует ресурспак для BorisLib и модов на его основе и отправляет его игрокам при подключении. - (Необязательно) В том же файле можно сделать ресурспак обязательным или задать
"message", который увидят игроки при запросе на скачивание.
Некоторые моды, включая Arcana Novum и Ancestral Archetypes, уже включают BorisLib в свой jar. Эта загрузка нужна только тогда, когда мод указывает BorisLib как отдельное требование.
Админы могут просматривать и применять условия через /borislib condition, и у каждой команды есть узел Fabric Permissions API с запасным вариантом в виде ванильного уровня прав. Полный справочник на GitHub: команды и узлы прав.
Поддержка
Вопросы — в Discord, а баг-репорты и предложения — в GitHub Issues.
Переводы: русский от Reset1712 и испанский от Llama303.
Уведомление о лицензии
Используя этот проект в любой форме, вы тем самым даёте своё «явное согласие» с условиями лицензии этого проекта и подтверждаете, что я, BorisShoes, выполнил своё обязательство по лицензии «приложить разумные усилия в данных обстоятельствах для получения явного согласия получателей с условиями данной Лицензии».
Частые вопросы
Как установить Boris Lib?
Установите Fabric под свою версию Minecraft, скачайте Boris Lib под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Boris Lib?
У Boris Lib есть сборки для Minecraft 1.21.8–26.3.
Нужен ли Boris Lib на сервере?
Ставится только на сервер; игрокам ставить не нужно







