Discord
Wiki - Pluginy

MythicMobs - tworzenie bossów i custom mobów

MythicMobs

MythicMobs to najpotężniejszy plugin do tworzenia niestandardowych mobów i bossów na serwerze Minecraft. Definiujesz wszystko w YAML: statystyki, umiejętności, fazy, loot, warunki spawnowania. Działa na Paper i Spigot od 1.12 do 1.21.x.

Czas czytania: ~8 min Platforma: Paper / Spigot / Purpur

Co to jest MythicMobs

MythicMobs to plugin serwerowy dla Minecraft, który pozwala tworzyć w pełni niestandardowe moby i bossów poprzez pliki konfiguracyjne YAML. Zamiast polegać na domyślnych mechanikach waniliowych mobów, dostajesz kompletny framework do projektowania dowolnych stworzeń - od prostych ulepszeń Zombiego po wielofazowego smoka z dziesiątkami umiejętności, fazami walki, reakcją na stan zdrowia i własnym systemem łupów.

Plugin tworzony jest przez zespół MythicCraft od 2014 roku i pozostaje de facto standardem na serwerach RPG, dungeon-crawlerach i serwerach survival z zaawansowaną mechaniką walki. Darmowa wersja dostępna na SpigotMC zawiera większość podstawowych funkcji - wersja Premium rozbudowuje ją o fazy bossów, zaawansowane drzewa umiejętności i obsługę addonów MythicDungeons oraz MythicCrucible.

Plugin jest dostępny na SpigotMC (wersja darmowa) oraz oficjalnej stronie MythicCraft (wersja Premium). Dokumentacja znajduje się na oficjalnym wiki.

Tworzenie moba (YAML)

Wszystkie niestandardowe moby definiujesz w plikach .yml w katalogu plugins/MythicMobs/Mobs/. Struktura definicji moba wygląda następująco:

SkeletonBoss:
  Type: SKELETON
  Display: "&cKostny Rycerz"
  Health: 500
  Damage: 8
  Options:
    MovementSpeed: 0.3
    FollowRange: 40
    KnockbackResistance: 0.5
  Equipment:
  - IRON_SWORD HAND
  - CHAINMAIL_HELMET HEAD
  - CHAINMAIL_CHESTPLATE CHEST
  Skills:
  - damage{a=20} @target ~onTimer:100
  - potion{t=SLOW;d=60;l=1} @target ~onTimer:200
  - message{m="&cKostny Rycerz krzyczy: Nie ujdziesz!"} @target ~onAttack
  Drops:
  - DIAMOND 1-3 0.5
  - EMERALD 2-5 1.0
  - BossChest 1 1.0

Kluczowe pola definicji moba:

Pole Opis Przykład
Type Bazowy typ moba Minecraft SKELETON, ZOMBIE, ENDER_DRAGON
Display Wyświetlana nazwa (obsługuje kolory &) "&cBoss Jaskini"
Health Maksymalne punkty życia 500 (= 250 serc)
Damage Bazowe obrażenia w ataku 8 (= 4 serca)
Options.MovementSpeed Prędkość poruszania się 0.3 (domyślny zombie: 0.23)
Equipment Ekwipunek na slotach DIAMOND_SWORD HAND
Skills Lista umiejętności z triggerami mechanika@cel ~trigger
Drops Co upada po śmierci moba DIAMOND 1-3 0.5 (50% szansa)

Po edycji pliku YAML możesz przeładować wszystkie moby komendą /mm reload bez restartu serwera. Spawning ręczny odbywa się przez /mm mobs spawn NazwaMoba.

System umiejętności (Skills)

System umiejętności MythicMobs to najbardziej rozbudowana część pluginu. Każda umiejętność składa się z trzech elementów:

  • Mechanika (Mechanic) - co się dzieje, np. damage, potion, message
  • Targeter - w kogo jest wymierzona, np. @target, @PlayersInRadius
  • Trigger - kiedy się aktywuje, np. ~onTimer:100, ~onDamaged, ~onDeath

Pełna składnia linii umiejętności wygląda tak:

- mechanika{parametry} @targeter ~trigger ?warunek

Najczęściej używane triggery:

Trigger Kiedy się aktywuje
~onTimer:X Co X ticków (20 ticków = 1 sekunda)
~onSpawn Przy pierwszym spawnie moba
~onDeath Gdy mob umiera
~onDamaged Gdy mob otrzymuje obrażenia
~onAttack Gdy mob atakuje cel
~onCombat Gdy mob wchodzi w stan walki
~onHealthPercent:X Gdy HP spada poniżej X% (np. 50%)
~onEnterCombat Przy pierwszym wejściu w walkę

Umiejętności można grupować w osobne pliki Skills/*.yml i wywoływać jako skill{s=NazwaSkilla}. Dzięki temu możesz tworzyć wieloetapowych bossów z fazami zdefiniowanymi jako oddzielne zestawy umiejętności.

Przykład bossa z fazami walki:

DragonBoss:
  Type: ENDER_DRAGON
  Display: "&4Smok Zagłady"
  Health: 2000
  AIGoalSelectors:
  - clear
  Skills:
  - skill{s=Phase1Skills} @self ~onStart
  - skill{s=Phase2Skills} @self ~onHealthPercent:50
  - message{m="&4Faza 2 - jestem wściekły!"} @world ~onHealthPercent:50
  Drops:
  - DragonLoot 1 1.0

Typy mechanik (Mechanic Types)

MythicMobs dostarcza kilkadziesiąt wbudowanych mechanik. Oto najważniejsze z nich:

Mechanika Co robi Przykład
damage Zadaje obrażenia celowi damage{a=20} @target
potion Nakłada efekt potion na cel potion{t=SLOW;d=60;l=2} @target
message Wysyła wiadomość do gracza lub świata message{m="Zginiesz!"} @target
command Wykonuje komendę serwera lub gracza command{c="give @target diamond 1"}
projectile Strzela pociskiem w kierunku celu projectile{t=FIREBALL;s=5} @target
summon Przywołuje innego Mythic Moba summon{t=MinionMob;a=3} @self
particles Rysuje efekt cząsteczkowy particles{p=FLAME;a=30;r=2} @self
heal Leczy moba o podaną wartość HP heal{a=50} @self
stun Ogłusza cel na X ticków stun{d=60} @target
teleport Teleportuje moba lub cel teleport{} @self
explosion Tworzy wybuch w lokalizacji celu explosion{p=3;f=false} @target
lightning Uderza piorunem w cel lightning{} @target

Mechaniki można łączyć w umiejętnościach grupowych (meta/skill), sekwencjach (meta/sequence) - gdzie każda mechanika jest odpalana po sobie z opóźnieniem - lub losowo (meta/random), gdzie tylko jedna z listy jest wybierana losowo. To pozwala tworzyć nieprzewidywalne wzorce ataku bossów, co znacząco zwiększa trudność i immersję rozgrywki.

Targetery

Targetery określają, kto otrzymuje efekt umiejętności. MythicMobs posiada bogaty zestaw targeterów:

Targeter Cel
@target Aktualny cel ataku moba
@self Sam mob (np. do leczenia siebie)
@trigger Podmiot, który wyzwolił trigger (np. gracz, który uderzył)
@PlayersInRadius{r=X} Wszyscy gracze w promieniu X bloków
@NearestPlayer{r=X} Najbliższy gracz w promieniu X
@RandomPlayer Losowy gracz na serwerze
@MobsInRadius{r=X;t=Typ} Inne moby w promieniu (do leczenia sojuszników)
@world Broadcast do wszystkich graczy w świecie
@Location{x=X;y=Y;z=Z} Konkretna lokalizacja w świecie

Przykłady użycia targeterów w praktyce:

# Celowanie w gracza atakującego moba
Skills:
- damage{a=10} @trigger ~onDamaged

# Celowanie we wszystkich graczy w promieniu 15 bloków
Skills:
- potion{t=SLOW;d=40;l=1} @PlayersInRadius{r=15} ~onTimer:100

# Celowanie w losowego gracza na serwerze
Skills:
- message{m="&eZnajdę cię..."} @RandomPlayer ~onTimer:200

Targetery można łączyć z warunkami (Conditions), co pozwala na umiejętności celowane tylko w graczy spełniających konkretne kryteria - na przykład boss, który atakuje mocniej graczy z pełnym zdrowiem, albo leczy się wyłącznie gdy nie ma w pobliżu żadnego gracza.

Warunki (Conditions)

Warunki to opcjonalne filtry umieszczane na końcu linii umiejętności po znaku ?. Umiejętność odpala się tylko jeśli warunek jest spełniony. To kluczowa mechanika do tworzenia inteligentnych bossów reagujących na otoczenie:

Skills:
- skill{s=NightSkills} @self ~onTimer:100 ?isNight
- skill{s=DaySkills} @self ~onTimer:100 ?isDay
- damage{a=50} @target ~onTimer:60 ?targetWithin{d=5}
- potion{t=REGENERATION;d=100;l=2} @self ~onTimer:200 ?hpBelow{hp=0.3}

Najczęściej używane warunki:

  • ?isNight / ?isDay - pora dnia w świecie gry
  • ?hpBelow{hp=0.5} - HP moba poniżej 50%
  • ?hpAbove{hp=0.8} - HP moba powyżej 80%
  • ?targetWithin{d=5} - cel jest bliżej niż 5 bloków
  • ?distanceFromSpawn{d=30} - mob jest dalej niż 30 bloków od spawnu
  • ?onGround - mob stoi na ziemi
  • ?playerInRadius{r=10} - jakiś gracz jest w promieniu 10 bloków
  • ?wearing{slot=HEAD;type=DIAMOND_HELMET} - gracz nosi diamentowy hełm
  • ?holding{type=SWORD} - gracz trzyma miecz

Warunki można negować za pomocą ?! - na przykład ?!isDay oznacza "jeśli nie jest dzień". Można też łączyć wiele warunków w jednej linii, oddzielając je spacją - wszystkie muszą być spełnione jednocześnie.

Droptable i loot

MythicMobs posiada własny system łupów niezależny od waniliowych dropów Minecraft. Droptable definiujesz w osobnych plikach w katalogu plugins/MythicMobs/Items/ lub bezpośrednio w sekcji Drops definicji moba.

BossChest:
  Items:
  - DIAMOND_SWORD{name="Miecz Bossa";enchants=[SHARPNESS:5,UNBREAKING:3]} 1 0.1
  - GOLDEN_APPLE 1-3 0.5
  - EXPERIENCE_BOTTLE 5-20 1.0
  Exp: 500
  MinItems: 2
  MaxItems: 4

Format linii dropu to: PRZEDMIOT ilość szansa, gdzie:

  • Ilość może być zakresem: 1-5 oznacza losowo od 1 do 5 sztuk
  • Szansa to wartość od 0.0 do 1.0, gdzie 1.0 = 100%, 0.5 = 50%
  • Możesz odwoływać się do MythicItems (przedmiotów stworzonych w MythicCrucible)
  • Możesz odwoływać się do innych Droptable po nazwie

Zaawansowane opcje droptable:

  • Exp: 500 - ilość doświadczenia z pluginów leveling (np. AureliumSkills)
  • MinItems / MaxItems - gwarantowana minimalna i maksymalna liczba przedmiotów
  • ActualDrops: true - moby upuszczają normalne waniliowe dropy ANI loot table (domyślnie Mythic zastępuje je)

MythicMobs integruje się z MythicCrucible (addon Premium) do tworzenia całkowicie niestandardowych przedmiotów z własnymi statystykami, umiejętnościami, levelingiem i skórkami. To sprawia, że można zbudować kompletny system RPG - niestandardowy mob upuszcza niestandardowy miecz, który ma własne skille aktywowane w walce.

Spawnowanie mobów

MythicMobs oferuje trzy sposoby spawnowania własnych mobów na serwerze:

1. Spawnowanie naturalne

Moby spawną się automatycznie zamiast (lub obok) waniliowych mobów Minecraft. Konfigurujesz to w sekcji Spawn definicji moba lub w pliku config.yml pluginu:

SkeletonBoss:
  Spawn:
    Worlds:
    - world
    - world_nether
    Biomes:
    - PLAINS
    - FOREST
    Cooldown: 3600
    Radius: 30
    MaxNearby: 1
    RequireNoPlayerNearby: false

2. Spawners (MythicMobs Spawners)

Tworzysz spawner komendą /mm spawners create NazwaSpawnera w miejscu, gdzie stoisz. Spawner można skonfigurować przez plik YAML: typ moba, cooldown, zasięg, maksymalna liczba mobów jednocześnie, warunki aktywacji. Spawnery są idealne do dungeonów i areny PVP.

3. Spawnowanie ręczne (komendy)

Admin lub plugin może spawnować moby komendami:

  • /mm mobs spawn SkeletonBoss - spawni moba w miejscu, gdzie stoisz
  • /mm mobs spawn SkeletonBoss 3 - spawni 3 sztuki
  • /mm mobs spawn SkeletonBoss 1 world,100,64,200 - spawni w konkretnych koordynatach
  • /mm mobs egg SkeletonBoss - daje jajko spawnowania tego moba

MythicMobs integruje się z WorldGuard - możesz ograniczyć spawnowanie konkretnych mobów do zdefiniowanych regionów lub je w nich całkowicie blokować. Wystarczy ustawić flagę mythic-mobs: deny lub mythic-mobs: allow na regionie WorldGuard.

MythicDungeons

MythicDungeons to osobny addon (Premium) tworzony przez ten sam zespół, który rozszerza MythicMobs o kompletny system dungeonów instancowych. Każda grupa graczy dostaje własną kopię (instancję) dungeonu - nie kolidują ze sobą, nie ma wyścigu do bossów.

Co oferuje MythicDungeons:

  • Instancje dungeonów - każda drużyna ma własną kopię mapy dungeonu, zresetowaną po ukończeniu lub po określonym czasie
  • Checkpointy - gracze nie zaczynają od początku po śmierci, jeśli admin umieścił punkty kontrolne
  • Roomy i triggery - pokoje aktywują się gdy gracze do nich wchodzą, spawniąc fale wrogów lub uruchamiając mechaniki
  • Timery i warunki sukcesu - ograniczenie czasowe, wymagania do przejścia, warunki porażki
  • Własne nagrody - po ukończeniu dungeonu gracze otrzymują skonfigurowany loot i doświadczenie
  • Integracja z drużynami - obsługuje popularne pluginy drużynowe (mcMMO, MMOCore, AureliumSkills)

MythicDungeons jest popularnym wyborem na serwerach RPG jako alternatywa dla statycznych dungeonów ze wspólnymi bossami. Instancje eliminują problem "boss już zabity" i pozwalają każdej grupie przeżyć pełne doświadczenie.

Premium vs Free

MythicMobs posiada dwie wersje - darmową na SpigotMC i płatną Premium na mythiccraft.io. Oto porównanie:

Funkcja Free Premium
Tworzenie custom mobów Tak Tak
System umiejętności (skills) Tak (podstawowy) Tak (pełny)
Fazy bossa (onHealthPercent) Ograniczone Pełna obsługa
Droptable Tak Tak + zaawansowane opcje
Spawnery Tak Tak
Mechaniki Aura Nie Tak
Skill Trees Nie Tak
MythicDungeons (addon) Nie Tak (osobny zakup)
MythicCrucible (addon) Nie Tak (osobny zakup)
MythicEnchants (addon) Nie Tak (osobny zakup)
Wsparcie techniczne Forum społeczności Discord Premium

Na większości serwerów survival i RPG wersja Free jest w zupełności wystarczająca do tworzenia kilku bossów z ciekawymi umiejętnościami. Wersja Premium warto rozważyć gdy planujesz pełny system RPG z dungeonami instancowymi, niestandardowymi przedmiotami i rozbudowanym drzewem umiejętności.

Kompatybilność i integracje

MythicMobs integruje się natywnie z szeroką gamą popularnych pluginów serwerowych:

  • WorldGuard - kontrola spawnowania per region, flagi dla custom mobów
  • PlaceholderAPI - użycie placeholderów z innych pluginów w wiadomościach i imionach mobów
  • Vault - nagrody pieniężne po zabiciu custom moba (wymaga pluginu ekonomii)
  • mcMMO - niestandardowe doświadczenie mcMMO z zabójstwa Mythic Moba
  • AureliumSkills / AuraSkills - punkty umiejętności, integracja z systemem leveling
  • Citizens / NPCs - możliwość przypisania Mythic Mob do Citizens NPC
  • Denizen - wywołanie skryptów Denizen jako mechaniki MythicMobs
  • LibsDisguises - maskowanie wyglądu moba jako inny typ, blok lub gracz
  • ProtocolLib - zaawansowane efekty wizualne i pakiety sieciowe
  • ModelEngine - własne modele 3D dla custom mobów (wymaga Premium)

Integracja z LuckPerms nie jest bezpośrednia, ale przez command mechanic możesz wykonywać dowolne komendy LuckPerms w momencie śmierci moba - na przykład nadawać rangę lub uprawnienia graczowi, który zabił bossa po raz pierwszy.

MythicMobs działa na Paper, Spigot, Purpur i większości forków od wersji 1.12 do 1.21.x. Nie obsługuje Fabric ani Forge (nie jest modem, jest pluginem Bukkit). Zalecany jest Paper dla najlepszej wydajności i kompatybilności - szczególnie przy dużej liczbie custom mobów spawnowanych jednocześnie.

Powiązane strony: WorldGuard, LuckPerms, katalog pluginów.