MythicMobs: гайд по кастомным мобам и боссам Minecraft
Если ванильный Эндер Дракон и Иссушитель давно не вызывают эмоций, MythicMobs превращает Paper/Spigot сервер в полигон для собственных боссов, элитных мобов и арен. Ниже разберу установку, формат YAML, систему скиллов и что реально работает на проде, а что съест TPS.
Что такое MythicMobs и зачем он нужен
MythicMobs - это де-факто стандарт для кастомных мобов на Bukkit-совместимых ядрах. Плагин даёт описать любого моба в YAML: ванильный тип за основу, своё имя, HP, урон, дроп, фракции и сложные скиллы с триггерами. Никакого кода писать не надо, всё конфигурируется.
На практике плагин используют для трёх задач:
- RPG-сервера с уникальными монстрами в каждом биоме
- одиночные боссы для эвентов на 50-100 игроков
- арены и dungeon-зоны с волнами противников
Главный плюс по сравнению с самописными решениями: огромная база готовых конфигов на mythiccraft.io и гигантская документация по skill-механикам.
Free vs Premium
Бесплатная версия MythicMobs покрывает 95 процентов того, что нужно типичному серверу. Платные расширения от того же автора:
- MythicCrucible - кастомные предметы (мечи, броня, амулеты) с triggered-скиллами при ударе или ношении
- MythicDungeons - готовый движок инстансов с чек-поинтами и наградами
- ModelEngine - кастомные модели мобов через ресурс-пак (без клиент-мода)
Если стоит вопрос "просто хочу босса с фаерболами" - бесплатной хватит. Если делаете полноценный RPG-сервер с лутом и подземельями, бюджет на премиум окупится.
Установка и первый запуск
Плагин ставится как обычный jar. Никаких внешних зависимостей не нужно, кроме Paper или Spigot 1.16+.
# на сервере
cd plugins/
wget https://www.spigotmc.org/resources/mythicmobs.5702/download -O MythicMobs.jar
# либо качай вручную с mythiccraft.io
Перезапускаем сервер (не /reload, нормальный stop/start), плагин создаёт папку plugins/MythicMobs/ со структурой:
plugins/MythicMobs/
├── config.yml
├── Mobs/
│ └── ExampleMobs.yml
├── Skills/
│ └── ExampleSkills.yml
├── Items/
├── Spawners/
├── RandomSpawns/
└── Stats/
После любых правок YAML вызываем:
/mm reload
Это перечитывает конфиги без рестарта сервера. Если в логах видите Could not load mob, значит где-то сломан YAML, проверьте отступы и кавычки.
Структура моба: первый кастомный скелет
Открываем plugins/MythicMobs/Mobs/ExampleMobs.yml или создаём свой файл, например BossMobs.yml. Внутри одного файла можно описать сколько угодно мобов.
SkeletalKnight:
Type: SKELETON
Display: '&6Skeletal Knight'
Health: 80
Damage: 6
Faction: undead
Options:
MovementSpeed: 0.28
PreventOtherDrops: true
PreventRandomEquipment: true
Equipment:
- iron_sword HAND
- iron_helmet HEAD
- iron_chestplate CHEST
Drops:
- diamond 1 0.05
- bone 2 1
- emerald{amount=2} 1 0.3
Skills:
- skill{s=KnightCharge} @target ~onAttack
Что здесь происходит:
- Type - ванильная база, от неё наследуется AI и хитбокс
- Display - имя над головой, поддерживает цветовые коды через
& - Faction - используется для AI (моб не атакует своих)
- Drops - формат
item amount chance, шанс от 0 до 1 - Skills - привязка к скиллу
KnightCharge(опишем дальше) на триггерonAttack
После /mm reload проверяем спавн:
/mm mobs spawn SkeletalKnight 1
Моб появится у вас под ногами. Если не появился, открывайте логи: tail -f logs/latest.log | grep -i mythic.
Skills: где живёт вся магия
Скиллы - сердце плагина. Любой скилл это набор из четырёх частей:
- Mechanic - что делать (urнать, пустить фаербол, наложить эффект)
- Targeter - на кого (
@target,@PIR{r=10}- игроки в радиусе 10,@self) - Condition - когда срабатывает (
?health < 0.5,?inCombat,?onGround) - Trigger - событие-источник (
~onTimer,~onAttack,~onDamaged,~onSpawn)
Описываем скилл в plugins/MythicMobs/Skills/BossSkills.yml:
KnightCharge:
Skills:
- message{m="<mob.name> бросается в атаку!"} @PIR{r=15}
- velocity{velocity=1.5,mode=ADD,relative=true} @self
- damage{amount=4} @target
FireballRain:
Skills:
- delay 10
- effect:sound{s=entity.blaze.shoot;v=1;p=0.5} @self
- shootfireball{velocity=1.0;yield=2} @PIR{r=20}
- shootfireball{velocity=1.0;yield=2} @PIR{r=20}
- shootfireball{velocity=1.0;yield=2} @PIR{r=20}
EnragePhase:
Conditions:
- health{h=<0.5} true
Skills:
- effect:particles{p=flame;amount=200;hS=2;vS=1} @self
- potion{type=INCREASE_DAMAGE;duration=600;level=1} @self
- message{m="&c<mob.name> ВПАДАЕТ В ЯРОСТЬ!"} @PIR{r=30}
Связываем скиллы с боссом:
DungeonLord:
Type: WITHER_SKELETON
Display: '&4&lDungeon Lord'
Health: 5000
Damage: 12
Options:
MovementSpeed: 0.32
Knockback: 5
Equipment:
- netherite_sword HAND
Skills:
- skill{s=FireballRain} @self ~onTimer:100 ?health<0.7
- skill{s=EnragePhase} @self ~onDamaged ?health<0.5
- skill{s=KnightCharge} @target ~onAttack
Drops:
- netherite_ingot 1 0.5
- diamond 5 1
- emerald 10 1
Логика: каждые 100 тиков (5 секунд) при HP ниже 70 процентов босс кастует огненный дождь, при падении HP ниже половины разово включает режим ярости, и в ближнем бою делает рывок к цели.
Drops, лут-таблицы и DropTables
Простой синтаксис item amount chance хорош для пары предметов. Для серьёзного лута используйте отдельные DropTables в plugins/MythicMobs/DropTables/:
BossLoot:
Conditions:
- playersinradius{r=30}{c=>1} true
Drops:
- netherite_scrap 1 0.3
- diamond 3-5 1
- enchanted_book{enchants=SHARPNESS:5} 1 0.1
- exp 500 1
Привязываем к мобу через DropTable: BossLoot вместо инлайн-секции Drops. Плюс таблицы: можно переиспользовать одну таблицу на десятках мобов и менять баланс в одном месте.
Spawning: ручной, авто и Mythic Spawners
Три варианта появления кастомных мобов на карте:
1. Ручной спавн через команду - подходит для эвентов и тестов:
/mm mobs spawn DungeonLord 1
/mm mobs spawn DungeonLord 1 world,100,64,200
2. RandomSpawns - заменяют ванильный спавн в биомах. Файл plugins/MythicMobs/RandomSpawns/example.yml:
NetherSkeletonSpawn:
Type: SkeletalKnight
Chance: 0.3
Priority: 5
Cooldown: 30
Conditions:
- biome SOUL_SAND_VALLEY,WARPED_FOREST
- timeofday NIGHT
3. Mythic Spawners - именованные спавн-точки на карте. Создаём в игре:
/mm spawners create BossSpawner_1 DungeonLord
/mm spawners set BossSpawner_1 Cooldown 7200
/mm spawners set BossSpawner_1 MaxMobs 1
Спавнер с кулдауном 7200 секунд (2 часа) даст одного босса максимум, и пока его не убьют, новый не появится. Удобно для арен и подземелий.
Кастомные модели через ItemsAdder и Oraxen
Хочется не просто переименованный скелет, а уникальную модель дракона? Без клиентских модов это решается двумя путями:
- ModelEngine (премиум, но есть бесплатная R3 версия) - наиболее популярный вариант, работает напрямую с MythicMobs через
Model: dragon_model - ItemsAdder или Oraxen - подменяют моделей через ресурс-пак, привязка идёт через CustomModelData в Equipment
Для ItemsAdder в YAML моба прописываем:
CustomDragon:
Type: ENDER_DRAGON
Display: '&5Crystal Dragon'
Health: 3000
Equipment:
- itemsadder:custom.dragon_skin HEAD
Игрок при первом коннекте качает ресурс-пак и видит уникальную модель. Никаких форджей и фабриков не нужно, только ванильный клиент с принятым ресурс-паком.
Производительность: где упрётесь в TPS
Из практики на Paper-сервере с 8 ядрами и 12 ГБ хипа:
- до 50 кастомных мобов одновременно в одном чанке-радиусе - TPS не дрожит
- 100-200 мобов - заметно при сложных скиллах (особенно partikле-эффекты по PIR с большим радиусом)
- 500+ мобов - падение TPS до 15-17 даже на пустых скиллах
Что реально жрёт производительность:
- частые
~onTimerс маленьким интервалом (1-5 тиков) - большие PIR-таргетеры (
@PIR{r=50}) на скиллах в timer - partikле-эффекты с
amount=500+
Оптимизация: ставьте таймеры от 20 тиков (1 секунда) и выше, ограничивайте радиус до 15-20 блоков, partikле держите в районе 50-100 на эффект. Команда /mm test damage помогает прогнать скилл в изоляции и увидеть его стоимость.
Dungeon-арены и волны мобов
Бесплатный MythicMobs даёт инструменты для своих арен через скиллы и спавнеры. Реализация на пальцах:
ArenaWave1:
Skills:
- summon{type=SkeletalKnight;a=5;r=10} @self
- message{m="&aВолна 1 началась!"} @PIR{r=50}
ArenaWave2:
Skills:
- delay 200
- summon{type=DungeonLord;a=1;r=5} @self
- message{m="&4БОСС!"} @PIR{r=50}
Скиллы можно триггерить из контрольного моба-невидимки или через MythicCommands и репитеры. Если нужны полноценные инстансы с разными игроками в своих копиях арены, тут уже без MythicDungeons не обойтись.
Faction system и AI
По умолчанию кастомные мобы агрятся на игроков и не трогают друг друга. Через фракции это поведение настраивается тоньше. В config.yml:
Factions:
undead:
Allies:
- undead
Enemies:
- players
- villagers
guardians:
Allies:
- players
Enemies:
- undead
Теперь моб с Faction: guardians будет атаковать любых undead мобов и защищать игрока. Удобно для союзных NPC-стражей или питомцев.
Полезные команды для отладки
Без debug-инструментов первые конфиги будут болеть:
/mm reload # перечитать все YAML
/mm mobs spawn <name> [count] # заспавнить моба
/mm mobs list # список загруженных мобов
/mm mobs kill <name> # убить всех мобов с этим именем
/mm test skill <skill> # тестовый каст скилла
/mm test damage <amount> # тест damage-механики
/mm items get <item> # получить кастомный предмет (с MythicCrucible)
Если скилл не срабатывает, добавьте в начало - message{m="DEBUG: skill fired"} @self - сразу видно, доходит ли исполнение.
FAQ
MythicMobs работает на Folia?
Частично. Folia с её региональным многопоточным тиком ломает многие плагины, и MythicMobs до версии 5.6 проблемы тоже есть. Свежие билды получают патчи под Folia, но если у вас 1.20+ и Folia, проверяйте конкретную версию плагина и читайте changelog. На Paper всё работает стабильно.
Где брать готовых боссов и мобов?
Главный источник - MythicCraft Marketplace на mythiccraft.io, там есть и бесплатные, и платные конфиги. На SpigotMC и BuiltByBit десятки готовых паков боссов с моделями. Для старта возьмите любой бесплатный pack, разберите его YAML и поймёте 80 процентов синтаксиса.
Нужен ли клиентский мод игрокам?
Нет, ванильный клиент работает со всем что предлагает MythicMobs. Если используете кастомные модели через ModelEngine или ItemsAdder, игрок при коннекте качает ресурс-пак (примерно 5-30 МБ) и видит модели. Обязательная установка ресурс-пака настраивается в server.properties через require-resource-pack=true.
MythicMobs vs Citizens vs Denizen?
Это разные инструменты. Citizens - про NPC-персонажей с диалогами и квестами, без сложных боевых скиллов. Denizen - мощный скриптовый язык для всего сразу (NPC, квесты, кастомная логика), требует обучения. MythicMobs заточен под боевых мобов, боссов и арены. На сервере часто стоят все три плагина одновременно, каждый отвечает за своё.
Сколько весит конфиг 50 мобов на диске?
Меньше мегабайта. YAML очень компактный, средний моб с 3-4 скиллами занимает 30-50 строк. Узким местом становится не размер, а количество одновременно работающих скилл-таймеров.
Можно ли сделать моба боссом с фазами?
Да, через триггер ~onDamaged и условие ?health<X. Описываете несколько скилл-блоков с разными порогами HP и каждый активирует свой набор атак. Для фаз с физическим преображением (новая модель, телепорт в центр арены) пишут отдельный скилл с summon и remove на смене фазы.
Можно ли импортировать мобов из других плагинов?
Прямого импорта нет. Если у вас был EpicBosses или BossesPlus, конфиги придётся переписать руками. На том же Marketplace часто выкладывают порты популярных боссов под MythicMobs.
Что дальше
Соберите одного работающего босса с двумя скиллами и DropTable, прежде чем браться за RPG-арку с двадцатью мобами. Реалистичный путь:
- первая неделя: пара кастомных мобов в одном файле, ручной спавн, отладка скиллов
- вторая неделя: RandomSpawns по биомам, нормальная DropTable, интеграция с экономикой
- дальше: Mythic Spawners, фракции, кастомные модели через ModelEngine
Перед запуском на проде обязательно сохраняйте бэкапы папки plugins/MythicMobs/ через систему бэкапов хостинга. Один сломанный YAML после /mm reload не положит сервер, но криво описанные таймеры с partikле могут уронить TPS до 10. И защитите сервер от DDoS заранее: один популярный кастомный босс собирает 80-150 онлайна, и атакующие приходят следом.
Protégez votre serveur contre les attaques DDoS
Protection gratuite avec configuration en 5 minutes. 1 To de bande passante inclus.
Essayer gratuitementArticles connexes
Как создать Minecraft сервер с нуля
Пошаговое руководство по созданию Minecraft сервера: выбор версии Java, скачивание серверного jar, настройка server.properties, проброс портов, принятие EULA, первый запуск, установка плагинов и базовая оптимизация.
Почему игровые серверы - цель номер один для DDoS-атак
Игровая индустрия получает более 46% всех DDoS-атак в мире. Разбираемся, почему атакуют именно игровые серверы, кто за этим стоит, сколько стоит атака и почему Minecraft страдает больше всех.
Whitelist через Discord-бот: форма заявки и авто-вайтлист для SMP
Discord-бот с формой заявки, кнопками accept/deny и авто-вайтлистом через RCON или DiscordSRV. Готовые боты, кастом на discord.js, защита от фейков.