НАЖМИ, чтобы запустить свой Сервер Майнкрафт + 8🎁
OtterLib

OtterLib

Библиотечный мод OtterLib для Minecraft - упрощает разработку модов и плагинов для Fabric, Spigot и Paper. Встроенные инструменты для чата, локализации, конфигов и GUI экранов настроек.

Оцените первым
Открыть в FateLauncher
182.8K
71

Что такое OtterLib

OtterLib - библиотечный мод для Майнкрафт, написанный специально для разработчиков. Если вы обычный игрок и увидели этот проект в списке зависимостей какого-то мода - не пугайтесь, OtterLib просто должна стоять в папке mods, чтобы основной мод заработал. Сами по себе библиотеки вроде этой ничего не меняют в геймплее, они дают функционал другим модам.

А вот если вы разработчик - тут начинается самое интересное. OtterLib решает сразу несколько рутинных задач, которые обычно приходится писать с нуля для каждого проекта.

Поддерживаемые загрузчики

Мод работает сразу на трёх платформах:

  • Fabric - для клиентских и серверных модов
  • Spigot - для плагинов
  • Paper - для плагинов на улучшенном ядре Paper

Это удобно, если вы пишете кросс-платформенный проект. Один API - три платформы. Не нужно дублировать код под каждый загрузчик.

Возможности библиотеки

Простой Chat Builder

Встроенный конструктор чат-сообщений. Позволяет программно создавать цветные, жирные, перечёркнутые, радужные тексты без возни с JSON-форматированием Minecraft.

Пример использования:

java player.sendMessage(new CTxT("Hello").color(Color.BLUE).bold(true).strikethrough(true) .append(new CTxT("World!!!!!!!!!").✨(new ✨(true)).underline(true).italic(true)).b());

По факту - обёртка над ванильной системой компонентов, но сильно упрощает жизнь. Особенно если вам нужен радужный текст или сложная цепочка стилей.

Серверная локализация

OtterLib даёт кастомный ридер языковых файлов. Главная фишка - серверная локализация работает на всех поддерживаемых загрузчиках, включая Spigot и Paper. В ванильном Bukkit с этим обычно проблемы.

Есть поддержка вторичной директории для языковых файлов. Это значит, что игроки могут переопределять переводы без редактирования основного файла мода.

Сохранение и загрузка файлов

Библиотека добавляет интерфейс для создания конфиг-файлов с поддержкой сохранения, загрузки и обновления версий. Если вы когда-то писали систему конфигов для мода - знаете, какая это боль. Особенно когда нужно мигрировать старый конфиг на новую версию.

OtterLib решает это через метод обновления:

java @Override public void update(JsonElement Element) { JsonObject file = Element.getAsJsonObject(); if (file.get("version").getAsDouble() == 1.0) { this.version = 1.1; this.test = file.get("test-bool").getAsBoolean(); } }

Проверяете версию в JSON, при необходимости переносите значения из старых ключей в новые. Просто и понятно.

Экран настроек

Отдельная фишка OtterLib - кастомный экран конфигурации для клиентской части. Можно создать GUI с кнопками для редактирования нескольких конфиг-файлов, ссылками на соцсети, баннерами и прочими элементами оформления.

Пример создания экрана:

java client.setScreen(new ConfigScreen(client.currentScreen, Text.of("test"), new CustomImage(Identifier.of(FabricTest.MOD_ID, "textures/gui/banner.png"),240, 60), List.of( SimpleButton.Templates.fileEditor(new CTxT("Test File"), FabricTest.testFile, new CustomImage(Identifier.of(FabricTest.MOD_ID, "button/server_button"),246,26)).build(), SimpleButton.Templates.fileEditor(new CTxT("Test File No Image"), FabricTest.testFile).build(), SimpleButton.Templates.wiki(new CTxT("Help")).openLink("https://oth3r.one").size(30,30).build(), SimpleButton.Templates.wiki(new CTxT("Help")).openLink("https://oth3r.one").size(30,30).build(), SimpleButton.Templates.warning(new CTxT("Help")).openLink("https://oth3r.one").size(150,15).hideText(false).build() ), List.of( new SimpleButton.Builder(new CTxT("Donate")) .miniIcon(new CustomImage(Identifier.of(Assets.ID, "icon/donate"),15,15)).build(), SimpleButton.Templates.donate(new CTxT("Donate")).openLink(URI.create("https://ko-fi.com/oth3r")).build(), SimpleButton.Templates.done(new CTxT("Done")).build(), SimpleButton.Templates.wiki(new CTxT("Wiki")).openLink("https://oth3r.one").build() )));

Есть готовые шаблоны кнопок: fileEditor для редактирования конфигов, wiki для ссылок, donate для донатов, done для закрытия экрана. Кнопки можно кастомизировать иконками, размерами и поведением.

Интеграция в проект

Чтобы использовать OtterLib в своём моде, добавьте репозиторий и зависимость в build.gradle:

repositories {
    maven {
        name "oth3rMavenSnapshots"
        url "https://maven.oth3r.one/snapshots"
    }
}

Подключение под каждый загрузчик, где ${project.otterlib_version} - текущая версия OtterLib для конкретного загрузчика (например 0.2.0.0+1.21.6, 0.2.0.0+1.20-1.21.6):

// fabric
modImplementation "one.oth3r:otterlib:${project.otterlib_version}-fabric"
// spigot
implementation "one.oth3r:otterlib:${project.otterlib_version}-spigot"
// paper
implementation "one.oth3r:otterlib:${project.otterlib_version}-paper"

Версии библиотеки привязаны к версиям Minecraft. Проверяйте актуальную версию в maven-репозитории перед обновлением.

Кому это нужно

Если вы игрок - OtterLib просто должна лежать в папке mods, если этого требует другой мод. Скачайте OtterLib для нужной версии Minecraft и положите в папку mods вместе с основным модом.

Если вы разработчик модов или плагинов для Майнкрафт - библиотека сэкономит вам время на рутине. Чат-билдер, локализация, конфиги, GUI - всё в одном месте. Особенно полезно, если вы пишете под несколько платформ одновременно.

Совместимость и нюансы

Библиотека нетребовательна к ресурсам и не влияет на FPS. Конфликты с другими модами маловероятны, поскольку OtterLib не меняет игровой процесс. Если основной мод требует конкретную версию OtterLib - ставьте именно её, более старые или новые версии могут не подойти.

Для серверов на Spigot и Paper библиотека ставится как плагин в папку plugins. Для Fabric - как обычный мод в папку mods. Убедитесь, что версия библиотеки совпадает с версией Minecraft сервера.

Скриншоты OtterLib

file config demo
2 мая 2025 г.
CTxT demo
2 мая 2025 г.
config screen demo
2 мая 2025 г.

Часто задаваемые вопросы

Совместимость

Зависимости

Создатели

Детали

Лицензия:
Опубликован:1 год назад
Обновлён:2 недели назад

Версии плагина OtterLib

Доступно 52 версий. Сначала показаны самые популярные и самые свежие.

16 из 50 версий
Самые популярные
B
0.2.2.1+1.21.110.2.2.1+1.21.11 [Fabric]
1.21.11
B
0.3.0.1+26.10.3.0.1+26.1 [Fabric]
26.1.x
B
0.2.2.1+1.21.100.2.2.1+1.21.10 [Fabric]
1.21.9–1.21.10
B
0.2.2.0+1.20.10.2.2.0+1.20.1 [Fabric]
1.20.1
B
0.2.2.0+1.21.10.2.2.0+1.21.1 [Fabric]
1.21–1.21.1
B
0.4.0.0+26.20.4.0.0+26.2 [Fabric]
26.2
Самые Новые
B
0.4.0.1+26.20.4.0.1+26.2 [Spigot]
26.126.2
B
0.4.0.1+26.20.4.0.1+26.2 [Paper]
26.2
B
0.4.0.0+26.20.4.0.0+26.2 [Paper]
26.2
B
0.4.0.0+26.20.4.0.0+26.2 [Spigot]
26.126.2
B
0.3.0.1+26.20.3.0.1+26.2 [Fabric]
26.2
B
0.3.0.0+26.1.10.3.0.0+26.1.1 [Fabric]
26.1–26.1.1
B
0.3.0.0+26.10.3.0.0+26.1 [Fabric]
26.1
B
0.2.2.1+1.21.90.2.2.1+1.21.9 [Fabric]
1.21.9
B
0.2.2.1+1.21.80.2.2.1+1.21.8 [Fabric]
1.21.6–1.21.8
B
0.2.2.0+1.20.40.2.2.0+1.20.4 [Fabric]
1.20.4
Главная