NexusAI: асинхронный AI-мост для серверов Minecraft
Если вы админ Paper или Purpur сервера и давно хотели оживить меню, голограммы и чат живым текстом от нейросети, но не знаете, с чего начать, — обратите внимание на NexusAI. Это не чат-бот для игроков и не очередной «умный» помощник в общем чате. NexusAI — это плагин-мост между вашим сервером и AI-провайдером, который отдаёт сгенерированный текст прямо в плейсхолдеры PlaceholderAPI. Проще говоря, вы вставляете переменную в конфиг меню, а игрок видит уникальную фразу, сгенерированную моделью.
Что умеет NexusAI для Minecraft
Плагин работает асинхронно, поэтому генерация текста не тормозит основной поток сервера. Основная механика строится вокруг двух типов плейсхолдеров:
- %ainexus_generate_<prompt>% — уникальный пул ответов. Каждое чтение забирает один сохранённый ответ, а пул пополняется в фоне. Идеально для вариативных подсказок и реплик.
- %ainexus_cached_<prompt>% — общий TTL-кэш. Один ответ на всех в течение заданного времени, что отлично подходит для голограмм и табличек.
Длинные промпты удобно держать в prompts.yml под коротким идентификатором. Например, вместо громоздкой строки вы пишете %ainexus_cached_survival_tips%, а весь текст промпта лежит в конфиге. Поддерживаются встроенные переменные {player}, {world}, {biome}, {time}, {weather}, которые работают даже без PlaceholderAPI, а также prewarm-переменные вроде {player_name}, подставляемые через %player_name% для каждого игрока отдельно.
Для каждого промпта можно задать формат-пресет: chat, gui, name, hologram, actionbar, bossbar — с ограничением длины и автоматической очисткой markdown. Ответы проходят очистку от цветовых кодов, hex-цветов и тегов MiniMessage, прежде чем попасть в меню, скорборды или чат-плагины.
Провайдеры, очередь моделей и защита
NexusAI поддерживает OpenAI-совместимые провайдеры: openai, groq, cerebras, gemini, deepseek, openrouter, ollama и любой кастомный URL. Можно указать несколько ключей на провайдера, использовать ${ENV_VAR} в ключах, а сами ключи маскируются в логах. Локальные эндпоинты не требуют API-ключа.
Очередь моделей переключается на следующего провайдера или модель при 429, ошибках, низком бюджете rate-limit или достижении дневного лимита, а после кулдауна возвращается обратно. Есть лимиты на сервер и на игрока, per-prompt backoff и пауза провайдера при HTTP 401/402/429. Если вся очередь недоступна, срабатывает fallback-модель, а папка knowledge/*.md хранит лор и правила для контекста.
Отдельного внимания заслуживает защита от prompt-injection: значения от игроков санитизируются и ограждаются, а ответы, которые утекли или последовали за инъекцией, отбрасываются. Параметр sanitize.allow-markup по умолчанию выключен — включайте его только если понимаете риск, ведь теги click и hover тогда дойдут до плагина, показывающего плейсхолдер.
Диалоги, действия и модерация
Команда /nai talk <id> запускает диалог с персонажем из prompts.yml: с памятью и лимитами на игрока. NPC-плагины могут вызывать её из консоли. Персонаж способен запускать только те команды, которые вы определили, с кулдаунами, дневными лимитами и правами. Опциональная модерация чата (по умолчанию выключена) отправляет флаги персоналу, но никого не наказывает автоматически.
Для тех, кто ценит время, лаунчер foxygame.net позволяет поставить NexusAI в один клик и сам подтянет совместимую сборку, чтобы не возиться с ручной загрузкой jar-файла. Управление собрано в командах /nai help, version, reload, status, test, prompts и talk, а интерфейс переведён на 15 языков.
Как установить NexusAI
Установка простая и не требует глубоких знаний:
- Возьмите Paper или Purpur версии 1.20.6–26.2 и Java 21 или новее.
- Установите PlaceholderAPI 2.11.6+ — он нужен для плейсхолдеров %ainexus_*%.
- Поместите jar в папку plugins/.
- Задайте NEXUSAI_API_KEY или providers.<id>.api-key (поддерживается ${ENV_VAR}). Для Ollama и локальных эндпоинтов ключ не нужен.
- Перезапустите сервер или выполните /nai reload после правки конфига.
Один jar подходит для всех поддерживаемых версий. Важно: NexusAI не работает на Spigot, CraftBukkit и чистом Bukkit, а Folia не поддерживается. На CurseForge плагин лежит в разделе Bukkit Plugins, потому что это секция для серверных плагинов, а не признак совместимости со Spigot.
Данные, ограничения и вывод
NexusAI отправляет текст промпта (плюс системный промпт, текст из knowledge и инструкцию формата) по HTTP на указанный вами эндпоинт. Это может быть сторонний сервис вроде OpenAI или ваш локальный Ollama. Всё, что вы кладёте в промпт, уходит на этот эндпоинт, включая имя игрока при использовании {player} и реплики в /nai talk. При включённой модерации каждая проверяемая строка публичного чата тоже отправляется, но без имени игрока. Без API-ключа удалённые провайдеры не вызываются, а плейсхолдеры возвращают заданный fallback-текст. Телеметрии у NexusAI нет.
Из известных проблем: граница пользовательского ввода и фильтр ответов снижают риск инъекций, но не устраняют его полностью. Ставьте более сильную модель позже в model-queue, чтобы отброшенный ответ заменялся. Малые модели часто отвечают слабо и не годятся как единственная модель. JSON-компоненты в ответе не удаляются — NexusAI их не парсит, но плагин, разбирающий JSON после вставки плейсхолдера, может на них среагировать. У бесплатного аккаунта Groq есть поминутная квота на выходные токены, поэтому держите api.max-tokens на 256 и увеличивайте cache.ttl.
Итог: NexusAI — узкоспециализированный, но мощный инструмент для админов и разработчиков, которым нужен управляемый AI-текст в интерфейсе сервера без риска для производительности. Если вам нужны уникальные ответы в меню, живые голограммы и аккуратные диалоги с NPC — это ваш вариант. Лицензия MIT, документация и исходники доступны на GitHub, а также на Hangar и SpigotMC.
--- **Обновление 05.10.2026:** Добавлено 1 файл для версии 26.2, 26.1.2, 26.1.1, 26.1, 1.21.9, 1.21.8, 1.21.7, 1.21.6, 1.21.5, 1.21.4, 1.21.3, 1.21.11, 1.21.10, 1.21.1, 1.21, 1.20.6.