⚡ EndiLend ⚡

🟢 Сервер Minecraft стабильно работает

📡 Присоединяйся к игре!

🌐 IP-адрес: endi.work.gd
🎮 Версии: 1.16.5 — 1.21.11
⭐ Рекомендуемая версия: 1.21.11

🔥 Стабильная работа, уникальный плагин EndiLend, множество возможностей. Ждём тебя!

📜 История проекта

Пролог. Эра хаоса (конец 2023 – середина 2025)
Конец 2023. Я запускаю сервер на дешёвом/бесплатном хостинге Aternos. На сервере стоят 20–30 плагинов, которые еле‑еле работают вместе. Конфиги правятся вручную, конфликты возникают на пустом месте.
Середина 2024 – начало 2025. Сервер начинает скитаться по разным хостингам. Переезды, бэкапы, потерянные конфиги, вылеты. В какой‑то момент я теряю Telegram‑канал сервера – последнюю связь с игроками. Сообщество разбегается. Я замораживаю проект.
Середина 2025. Я возвращаюсь. Заново создаёшь Telegram‑канал, собираешь аудиторию. На сервере уже 35 плагинов – адская смесь. Я понимаю: так дальше нельзя. Нужен свой плагин.
Конец 2025 – январь 2026. Переход на стабильный платный хостинг. Сервер перестаёт вылетать. Но 35 плагинов по‑прежнему тянут вниз. Я твёрдо решаю: «Я напишу один плагин, который заменит их все».

Часть 1. Эра EndiMessage: первые кирпичики (февраль 2026)
Версия 1.0.0. Плагин называется EndiMessage. Скромный функционал: авто‑сообщения по расписанию, HEX‑цвета, кликабельные ссылки, отдельные команды для игроков (/discord, /site), поддержка часовых поясов. Уже тогда заложена совместимость с 1.12.2 – 1.21.11 и ядрами Spigot, Paper, Purpur, Folia.
Версия 1.3.0 (экспериментальная). Попытка добавить новые функции – провал. Вывод: не гнаться за количеством, делать качественно.
Версия 1.4.0. Первое расширение: полноценная система чата (локальный/глобальный чаты, /msg, /reply, /ignore, интеграция с LuckPerms), система наказаний (баны, муты, IP‑баны), блокировщик команд, авторестарт. Плагин начинает обрастать мясом.

Часть 2. Рождение EndiLend: версии 1.0.0 – 1.4.0 (после ребрендинга)
Я переименовываю плагин в EndiLend. Цель – заменить Essentials и десятки мелких плагинов.
В этих версиях добавляется огромный пласт: Телепортации (спавн, дома, варпы, tpa, rtp), Киты, Встроенная экономика (балансы, переводы, топ), Админские команды (/fly, /jump, /heal, /feed, /gm), Очистка предметов (ClearLag), Антирелог (AntiLogout) с боссбаром. Все модули тщательно протестированы. Плагин становится монстром.

Часть 3. Версия 1.5.0 – эпопея с NPC (самый большой провал)
Планировалось добавить NPC. Попытки: Рефлексивный подход – работало на старых версиях, на 1.21.11 вылетало. npc‑lib – недокументированное API, бесконечные ошибки. ProtocolLib – репозитории не работали, локальный JAR подключили, но NPC не появлялись. PacketEvents – почти заработало, но остались ошибки компиляции.
Вывод: для 1.21.11 нужен особый подход, время упущено. Принято мудрое решение – удалить NPC из плагина, заменив их функционалом создания своих команд (аналог MyCommand). Так версия 1.5.0 стала версией кастомных команд. NPC остались в истории как самый большой провал и урок.

Часть 4. Версия 1.6.0 – экономика и торговля
Аукцион (/ah) с меню, категориями, поиском, просроченными лотами. Скупщик (/sell) – продажа предметов из инвентаря. Интеграция с Vault (опционально). Аукцион получился на славу: таймеры для владельцев, поддержка русского и английского поиска.

Часть 5. Версия 1.7.0 – кастомизация и контент
Кастомные рецепты крафта (свои рецепты через YAML, замена ванильных). Расширение кастомных команд (звуки, эффекты, телепортация, массовые сообщения). Команды /craft и /enderchest. Поддержка HEX‑цветов и новых синтаксисов (<#RRGGBB>текст</#RRGGBB>).

Часть 6. Версия 1.8.0 – кланы и территории (масштаб)
Система друзей (заявки, чат, телепортация). Система кланов (создание, роли, казна, чат, дома). Интеграция с WorldGuard – кланы занимают регионы, автоматическое управление доступом. Команды /clan territory, /clan rg. Лимиты на регионы и дома в конфиге. Интеграция с WorldGuard потребовала усилий из‑за разных версий API, но добились стабильности. Кланы стали любимой функцией игроков.

Часть 7. Версия 1.9.0 – визуальная кастомизация
Кастомизация таб‑листа (формат ника, пинг, сортировка по группам). Настройка намтагов (префиксы/суффиксы над головой) – ещё не работали на 1.21.11, но код был заложен. Скорборд с динамическими плейсхолдерами. Статистика игроков (убийства, смерти, время). Плейсхолдеры времени (Москва, Киев), поддержка CSS‑цветов. Всё работало на собственных плейсхолдерах, без PlaceholderAPI. Скорборд перестал мерцать благодаря кэшированию.

Часть 8. Версия 2.0.0 – кейсы и голограммы (прорыв)
Два огромных модуля: Система кейсов (настраиваемые кейсы через YAML; ключи, шансы, призы; анимация открытия с вращающимися предметами вокруг сундука; меню с кнопками «Открыть» и «Шансы»; размещение сундуков командой /case spawn). Система голограмм (создание голограмм с текстом и предметами; команды /holo; автоматические голограммы над сундуками кейсов). Проблемы: несовместимость звуков между версиями, отсутствие STAINED_GLASS_PANE в новых версиях. Решены с помощью класса CompatMaterial. Анимация кейсов прошла несколько итераций и наконец стала идеальную.

Часть 9. Версия 2.1.0 – эпопея с неймтегами (апрель 2026)
Самая тяжёлая и долгая битва. Неймтеги не отображались на Paper 1.21.11, хотя в табе и скорборде префиксы были видны.
Попытки: стандартный Bukkit API (Team, setPrefix) – не работает на 1.21.11. Рефлексия и сырые пакеты (PacketPlayOutScoreboardTeam, ClientboundSetPlayerTeamPacket) – пакеты уходят, клиент игнорирует. Библиотека scoreboard-library – TeamManager, createDisplay(), team.display() – логи показывают отправку, в игре пусто. Удаление старых Bukkit‑тим через /team remove – старый префикс («Создатель») наконец исчезает. Инвалидация кэша LuckPerms – но неймтегов всё нет. Отказ от персональных скорбордов (player.setScoreboard()) – не помогает.
Ключевой момент. Разработчик библиотеки даёт совет: «Попробуй defaultDisplay() вместо createDisplay()».
В чём разница: createDisplay() – создаёт новый экземпляр, нужно явно привязывать через team.display(). defaultDisplay() – возвращает стандартное отображение команды, которое применяется автоматически ко всем игрокам в TeamManager.
Победа. После замены одной строки кода неймтеги заработали на всех ядрах (Spigot, Paper, Purpur, Folia) и всех версиях (1.12.2 – 1.21.11). Префиксы и суффиксы стали отображаться мгновенно и обновляться при смене группы.
Дополнительные исправления в 2.1.0: удалена неработающая команда /anvil; добавлены утилитарные команды (/repair, /hat, /vanish, /invsee, /ecsee, /suicide, /ext, /delspawn, /delwarp, /delhome, /homes); исправлена анимация кейсов (уникальные предметы, названия над ними); решена проблема восстановления кейсов и голограмм после перезагрузки (отложенные задачи, проверка загрузки миров, авто‑reload через 15 секунд); устранено мерцание скорборда (кэширование строк, обновление только по событиям); настройка смещения голограмм через конфиг (hologram-offset).
Итог версии 2.1.0. Плагин заменил 23 из 35 плагинов на сервере. Полностью стабилен. Кейсы, голограммы, кланы, экономика, чат, телепортации – всё работает без нареканий. Неймтеги – побеждены.