CMI - wszystko w jednym pluginie do serwera Minecraft

CMI (skrót od "Crazy Mobs Insane") to płatny plugin premium, który zastępuje dziesiątki osobnych pluginów: EssentialsX, HolographicDisplays, PortalCreator i wiele innych. Ponad 270 komend, wbudowane hologramy, portale, zaawansowane kity, ekonomia i pełna konfiguracja w jednym pakiecie. Jeden zakup, wszystko działa razem.
Co to jest CMI
CMI to rozbudowany plugin all-in-one dla serwerów Minecraft, tworzony przez dewelopera o nicku Zrips od 2015 roku. Nazwa pochodzi od oryginalnego projektu "Crazy Mobs Insane", choć dziś plugin nie ma nic wspólnego z mobami - to kompleksowe narzędzie administracyjne i rozrywkowe dla właścicieli serwerów.
Główna filozofia CMI jest prosta: jeden plugin zamiast dziesięciu. Zamiast instalować osobno EssentialsX, HolographicDisplays, PortalCreator, KitCreator, SignShop i kilka innych, dostajesz wszystko w jednym, dobrze zintegrowanym pakiecie. Każdy moduł "wie" o pozostałych - hologramy mogą wyświetlać saldo gracza z ekonomii CMI, portale mogą sprawdzać rangi z LuckPerms, kity mogą mieć warunki oparte o liczbę godzin na serwerze.
Plugin obsługuje bazy danych MySQL i SQLite, co czyni go odpowiednim zarówno dla małych serwerów hobbystycznych, jak i dużych sieci BungeeCord/Velocity. Dane graczy, ekonomia, domy i warpy mogą być synchronizowane między serwerami w sieci przez wspólną bazę MySQL.
CMI jest dostępny wyłącznie na SpigotMC. Działa na Paper, Spigot i Purpur w wersjach od 1.8 do 1.21.x.
Cena i licencja
CMI jest pluginem płatnym. Cena na SpigotMC wynosi około 15 EUR (cena może się nieznacznie zmieniać). To jednorazowy zakup - bez subskrypcji, bez opłat za aktualizacje. Po zakupie masz dostęp do wszystkich przyszłych wersji CMI na zawsze.
Licencja jest przypisana do konta SpigotMC kupującego, nie do konkretnego serwera. Oznacza to, że możesz zainstalować CMI na wielu serwerach w ramach jednej sieci (np. kilka serwerów podpiętych pod jeden BungeeCord) bez dodatkowych opłat. Nie możesz jednak odsprzedawać pluginu ani udostępniać go osobom trzecim.
Ważna uwaga: na internecie krążą "leaked" wersje CMI, czyli pirackie kopie skradzione z legalnych zakupów. Nie używaj takich wersji - poza aspektem etycznym (okradanie niezależnego dewelopera), pirackie pliki .jar często zawierają zmodyfikowany kod z backdoorami lub malware. Różnica 15 EUR to cena jednej kolacji - warto zapłacić za legalną wersję i spać spokojnie.
Nie istnieje darmowa wersja próbna CMI. Jeśli nie jesteś pewien zakupu, sprawdź porównanie z EssentialsX poniżej i zdecyduj, czy zaawansowane funkcje są warte ceny dla twojego serwera.
CMI vs EssentialsX - co wybrać?
To najczęściej zadawane pytanie przez adminów stawiających nowy serwer. Oba pluginy spełniają tę samą podstawową rolę - dostarczają zestaw komend do zarządzania serwerem - ale różnią się zakresem i ceną.
| Funkcja | CMI | EssentialsX |
|---|---|---|
| Cena | ~15 EUR (jednorazowo) | Darmowy (open-source) |
| Liczba komend | 270+ | 140+ |
| Hologramy | Wbudowane | Brak (potrzebny osobny plugin) |
| Portale | Wbudowany kreator portali | Brak |
| Kity - warunki | Zaawansowane (czas gry, ranga, statystyki) | Podstawowe (cooldown, uprawnienie) |
| Custom Commands | Wbudowane aliasy z warunkami | Proste aliasy przez config |
| Bossbar / Actionbar | Wbudowane | Brak |
| Baza danych | MySQL + SQLite | H2 (własny format) |
| Synchronizacja sieci | Przez MySQL (pełna) | Ograniczona |
| Placeholdery (PAPI) | Ponad 200 placeholderów | Standardowe placeholdery |
| Wsparcie | Aktywny deweloper (SpigotMC, Discord) | Społeczność + GitHub Issues |
Kiedy wybrać EssentialsX: Jeśli stawiasz serwer hobbystyczny lub masz ograniczony budżet, EssentialsX w zupełności wystarczy. Jest darmowy, dobrze udokumentowany i obsługiwany przez ogromną społeczność. Dla większości serwerów do 100 graczy to idealny wybór.
Kiedy wybrać CMI: Jeśli budujesz poważny serwer z ambicjami - sieć BungeeCord, duża baza graczy, spersonalizowane doświadczenia - CMI oferuje funkcje, których EssentialsX nie da nawet z dodatkowymi pluginami. Wbudowane hologramy, zaawansowane kity z warunkami i synchronizacja przez MySQL to realne przewagi.
Instalacja i CMILIB
CMI wymaga do działania biblioteki CMILIB - osobnego pliku .jar dostarczanego przez tego samego dewelopera (Zrips). CMILIB jest darmowy i dostępny na SpigotMC. Bez niego CMI nie uruchomi się w ogóle.
Kroki instalacji:
- Pobierz CMILIB ze SpigotMC (szukaj "CMILIB Zrips") i wrzuć do folderu
plugins/ - Pobierz CMI ze SpigotMC (wymaga zalogowania na konto, które kupiło plugin) i wrzuć do
plugins/ - Opcjonalnie: pobierz Vault dla integracji ekonomii z innymi pluginami
- Uruchom serwer. CMI wygeneruje folder
plugins/CMI/z plikami konfiguracyjnymi - Zatrzymaj serwer, skonfiguruj
config.ymlwedług potrzeb, uruchom ponownie
Jeśli używasz już EssentialsX i przechodzisz na CMI, możesz użyć wbudowanego importera danych. Komenda /cmi importessentials przeniesie domy, warpy, salda graczy i banki z EssentialsX do CMI.
CMI wymaga Javy 17 lub nowszej. Na starszych wersjach Javy (8, 11) plugin może nie działać poprawnie od wersji CMI 9.x wzwyż.
Komendy (270+)
CMI oferuje ponad 270 komend - prawie dwa razy więcej niż EssentialsX. Każda komenda ma oddzielne uprawnienie w stylu cmi.command.KOMENDA, co pozwala na precyzyjną kontrolę przez LuckPerms.
Najważniejsze komendy dla graczy:
| Komenda | Co robi | Uprawnienie |
|---|---|---|
/home [nazwa] | Teleportuje do zapisanego domu | cmi.command.home |
/sethome [nazwa] | Ustawia dom w obecnej lokalizacji | cmi.command.sethome |
/tpa Gracz | Wysyła prośbę o teleportację do gracza | cmi.command.tpa |
/warp [nazwa] | Teleportuje do warpu | cmi.command.warp |
/kit [nazwa] | Odbiera zestaw przedmiotów | cmi.command.kit |
/balance | Sprawdza saldo w portfelu | cmi.command.balance |
/pay Gracz kwota | Przelew do innego gracza | cmi.command.pay |
/msg Gracz tekst | Wysyła prywatną wiadomość | cmi.command.msg |
/back | Powrót do poprzedniej lokalizacji | cmi.command.back |
/spawn | Teleportuje na spawn serwera | cmi.command.spawn |
/playtime | Wyświetla czas gry na serwerze | cmi.command.playtime |
/seen Gracz | Sprawdza ostatnią aktywność gracza | cmi.command.seen |
Komendy administracyjne:
| Komenda | Co robi |
|---|---|
/cmi ban Gracz [powód] | Banuje gracza z opcjonalnym powodem i czasem |
/cmi mute Gracz [czas] | Wycisza gracza na podany czas |
/cmi kick Gracz [powód] | Wyrzuca gracza z serwera |
/cmi vanish | Ukrywa admina przed graczami |
/cmi fly [Gracz] | Włącza/wyłącza latanie |
/cmi god [Gracz] | Włącza tryb boga (nieśmiertelność) |
/cmi heal [Gracz] | Leczy gracza do pełnego zdrowia |
/cmi feed [Gracz] | Uzupełnia pasek głodu gracza |
/cmi tp Gracz [Cel] | Teleportuje gracza do celu lub lokalizacji |
/cmi invsee Gracz | Podgląd i edycja ekwipunku gracza |
/cmi broadcast tekst | Wysyła wiadomość do wszystkich graczy |
/cmi createkit nazwa | Tworzy kit z aktualnego ekwipunku |
Pełna lista komend dostępna jest w oficjalnej dokumentacji CMI. Każdą komendę można wyłączyć w pliku konfiguracyjnym, jeśli nie chcesz jej udostępniać.
Custom Commands - własne aliasy komend
Jedna z najbardziej przydatnych funkcji CMI to system Custom Commands - możliwość tworzenia własnych komend, które wykonują sekwencje poleceń z warunkami, zmiennymi i opóźnieniami. To w praktyce wbudowany mini-plugin do tworzenia komend.
Custom Commands definiuje się w pliku plugins/CMI/CustomAlias.yml. Przykładowy alias komendy /donate, która wysyła gracza na stronę sklepu:
Donate:
Cmds:
- tell: "&aDziękujemy za wsparcie serwera! Odwiedź nasz sklep:"
- tell: "&bhttps://sklep.mójserwer.pl"
Cost: 0.0
Perm: ''
World: '' Zaawansowany przykład - komenda /vip sprawdzająca czas gry przed przyznaniem nagrody:
vip:
Cmds:
- check: "[playtime]>10h|&cMusisz mieć minimum 10 godzin na serwerze!"
- check: "[hasPerm]vip.claimed|&cJuż odebrałeś nagrodę VIP!"
- eco: give %player% 500
- addperm: %player% vip.claimed
- tell: "&aOtrzymałeś 500 monet za 10 godzin gry!"
Cost: 0.0
Perm: 'cmi.customalias.vip' Custom Commands obsługują placeholdery CMI ([playtime], [balance], [world], [hasPerm]), warunkowe wykonanie z pipe (| jako komunikat błędu) i sekwencje wielu akcji. Możesz tworzyć mini-quest systemy, automaty nagród i interaktywne komendy bez żadnego dodatkowego pluginu.
Hologramy
CMI zawiera wbudowany system hologramów - unoszących się w powietrzu napisów widocznych dla graczy. Zastępuje to osobne pluginy jak HolographicDisplays czy DecentHolograms.
Hologramy tworzy się komendą /cmi holo:
# Stworzenie nowego hologramu
/cmi holo new NazwaHologramu
# Dodanie linii tekstu
/cmi holo addline NazwaHologramu &6Witaj na serwerze!
# Dodanie linii z placeholderem (np. czas gracza)
/cmi holo addline NazwaHologramu &eTwój czas gry: {cmi_user_playtime_days}
# Dodanie linii z obrazkiem (głowa gracza)
/cmi holo addline NazwaHologramu #HEAD:{player}
# Ustawienie interwału odświeżania (sekundy)
/cmi holo update NazwaHologramu 10 Hologramy CMI obsługują:
- PlaceholderAPI - wyświetlanie dynamicznych wartości (saldo, czas gry, ranga, statystyki)
- Głowy graczy - linia
#HEAD:NazwaGraczarenderuje głowę gracza nad hologramem - Animacje - zmiana tekstu w pętli (np. efekt pisania)
- Odświeżanie - konfigurowalne co ile sekund hologram aktualizuje wartości
- Warunkowe wyświetlanie - hologram widoczny tylko dla określonych rang lub w określonym świecie
Hologramy zapisywane są w folderze plugins/CMI/Holograms/ jako pliki YAML. Można je edytować ręcznie i przeładowywać komendą /cmi reload holograms.
Portale
CMI zawiera wbudowany kreator portali - obszarów, które po wejściu wykonują akcje: teleportują gracza, uruchamiają komendę, wyświetlają wiadomość lub odtwarzają dźwięk. To funkcja, którą w EssentialsX trzeba zastąpić pluginami jak CommandPortals czy MyCommand.
Tworzenie portalu odbywa się w dwóch krokach. Najpierw definiujesz region (obszar portalu) za pomocą magicznej różdżki (tool selection), następnie konfigurujesz akcje:
# Krok 1: Stworzenie portalu z aktualnego zaznaczenia (WorldEdit)
/cmi portal create NazwaPortalu
# Krok 2: Ustawienie akcji - teleportacja
/cmi portal setaction NazwaPortalu teleport:spawn
# Akcja - uruchomienie komendy
/cmi portal setaction NazwaPortalu cmd:tell Witaj w lobbiem!
# Akcja - teleportacja do innego świata
/cmi portal setaction NazwaPortalu teleport:nazwa_swiata:100:64:200
# Podgląd wszystkich portali
/cmi portal list Portale obsługują kierunkowe wejście (gracz musi wejść z konkretnej strony), warunki dostępu (uprawnienie, ranga, koszt w walucie) i cooldowny. Można tworzyć widoczne portale z efektami cząsteczek lub całkowicie niewidoczne strefy-pułapki.
Portale CMI nie wymagają WorldEdit - możesz też zaznaczyć region przez stanie w centrum i podanie promienia: /cmi portal createradius NazwaPortalu 3.
Kity
System kitów w CMI jest znacznie bardziej rozbudowany niż w EssentialsX. Kity mogą mieć zaawansowane warunki odbioru, różne cooldowny per ranga, losowe przedmioty i powiązanie z ekonomią.
Tworzenie kitu z aktualnego ekwipunku:
/cmi createkit StartKit Plik kitu powstaje w plugins/CMI/Kits/StartKit.yml. Przykładowa konfiguracja z warunkami:
StartKit:
Cooldown: 86400 # 24h cooldown (sekundy)
Cost: 0 # darmowy
MinimumPlaytime: 0 # brak wymaganego czasu gry
RequiredRanks: [] # dostępny dla wszystkich
Items:
- ==: org.bukkit.inventory.ItemStack
type: IRON_SWORD
amount: 1
meta:
enchants:
DAMAGE_ALL: 1
- ==: org.bukkit.inventory.ItemStack
type: COOKED_BEEF
amount: 16
- ==: org.bukkit.inventory.ItemStack
type: TORCH
amount: 32
Commands:
- tell: "&aOtrzymałeś StartKit! Miłej gry!" Cooldowny mogą być różne dla różnych rang - np. gracze z rangą VIP mogą odbierać kit co 12h, zwykli gracze co 24h. Konfiguruje się to przez uprawnienia: cmi.kit.cooldown.StartKit.43200 (cooldown 43200 sekund = 12h dla posiadacza tego uprawnienia).
CMI obsługuje też kity z losowymi przedmiotami - zamiast konkretnego itemu podajesz listę możliwych przedmiotów z szansami procentowymi. Idealne do skrzynek/lootboxów bez dodatkowego pluginu.
Warpy i domy
System warpów i domów w CMI działa podobnie do EssentialsX, ale z kilkoma istotnymi rozszerzeniami:
- Limit domów per ranga - przez uprawnienia
cmi.homes.Ngdzie N to liczba. Ranga "gracz" może mieć 3 domy, "VIP" 10, "Admin" nielimitowane - Domy publiczne - gracz może oznaczyć dom jako publiczny, by inni mogli się do niego teleportować przez
/home NazwaGracza:NazwaDomku - Warpy z ikonkami - każdy warp może mieć przypisaną ikonę (głowę gracza, przedmiot), widoczną w GUI menu warpów
- GUI warpów - komenda
/warpsotwiera interfejs graficzny z listą warpów, gdzie gracz klika na ikonę zamiast wpisywać nazwę - Grupy warpów - organizowanie warpów w kategorie (np. "pvp", "sklepy", "minigry") wyświetlane jako osobne zakładki w GUI
- Warpy z kosztem - teleportacja do warpu może kosztować walutę z ekonomii
GUI warpów to jedna z rzeczy, które gracze naprawdę doceniają po migracji z EssentialsX. Zamiast pamiętać nazwy warpów i wpisywać /warp sklep, klikają na ikonę z opisem. Znacznie lepsza UX, szczególnie na serwerach z wieloma warpami.
Ekonomia
CMI zawiera pełny silnik ekonomii kompatybilny z Vault. Obsługuje salda graczy, przelewy, banki i ranking najzamożniejszych. Dane ekonomii mogą być synchronizowane przez MySQL między serwerami w sieci.
Kluczowe komendy ekonomii:
/balance [Gracz]- własne saldo lub saldo innego gracza (admin)/pay Gracz kwota- przelew do innego gracza/baltop [strona]- ranking najzamożniejszych graczy/cmi eco give Gracz kwota- dodaj walutę (admin)/cmi eco take Gracz kwota- odbierz walutę (admin)/cmi eco set Gracz kwota- ustaw konkretne saldo (admin)
Konfiguracja ekonomii w config.yml:
Economy:
Enabled: true
StartBalance: 500 # saldo startowe nowego gracza
CurrencyName: Monety # nazwa waluty (mianownik)
CurrencyNamePlural: Monet # nazwa w liczbie mnogiej
CurrencySymbol: "M" # symbol (opcjonalny)
MaxBalance: 1000000 # maksymalne saldo
MinBalance: -100 # możliwy debet (ujemne saldo) CMI obsługuje też opłaty za komendy (charge per command use) - np. teleportacja przez /tpa może kosztować 10 monet. To świetny mechanizm odpływu pieniędzy z obiegu na serwerach z aktywną ekonomią.
Chat i tablist
CMI zarządza formatowaniem chatu i tablicy graczy (tablist). Integruje się z PlaceholderAPI i LuckPerms, dzięki czemu prefix rangi i kolory nicku wyświetlają się automatycznie.
Format chatu konfiguruje się w plugins/CMI/config.yml:
Chat:
Format: "&8[&r{cmi_user_prefix}&r&8] &r{displayname}&8: &r{message}"
LocalRange: -1 # -1 = zasięg globalny, N = bloki
FilterEnabled: true # filtr przekleństw
CapsFilter: true # blokowanie CAPS LOCKA
UrlFilter: true # blokowanie linków (nadpisywalne przez uprawnienie) Tablist pokazuje aktywnych graczy z ich prefiksami. CMI pozwala na podział tablicy na kolumny per świat, grupowanie graczy według rang oraz wyświetlanie niestandardowego header/footer z placeholderami (np. liczba graczy online, TPS serwera).
CMI obsługuje też kanały czatu: lokalny (zasięg N bloków), globalny, administracyjny i dowolne własne kanały. Gracze przełączają się między nimi przez prefiksy wiadomości (np. ! dla globalnego) lub dedykowane komendy.
Moderacja
CMI zawiera pełny zestaw narzędzi moderacyjnych. Wszystkie kary (bany, mute'y) są zapisywane w bazie danych z historią, datą i moderatorem, który karę wydał.
| Komenda | Opis |
|---|---|
/cmi ban Gracz [czas] [powód] | Ban stały lub czasowy. Czas: 1h, 7d, 30d itd. |
/cmi unban Gracz | Odblokowanie zbananowanego gracza |
/cmi ipban IP [czas] | Ban adresu IP (blokuje wszystkie konta z tego IP) |
/cmi mute Gracz [czas] [powód] | Wyciszenie gracza na czacie |
/cmi unmute Gracz | Cofnięcie wyciszenia |
/cmi kick Gracz [powód] | Wyrzucenie gracza bez bana |
/cmi jail Gracz [czas] | Uwięzienie gracza w zdefiniowanej lokalizacji |
/cmi warn Gracz [powód] | Ostrzeżenie widoczne dla gracza i moderatorów |
/cmi banlist | Lista aktywnych banów z datami |
/cmi check Gracz | Pełna historia kar danego gracza |
CMI obsługuje automaty kar - po określonej liczbie ostrzeżeń gracz automatycznie dostaje mute lub ban. Konfiguruje się to w config.yml w sekcji AutoPunish. Idealnie sprawdza się na serwerach z dużym ruchem, gdzie moderatorzy nie są online 24/7.
Konfiguracja
CMI generuje kilkanaście plików konfiguracyjnych w folderze plugins/CMI/. Główne pliki:
config.yml- główna konfiguracja (ekonomia, chat, teleportacja, moderacja)CustomAlias.yml- własne komendy i aliasyWarps.yml- lista warpówKits/- folder z plikami kitów (jeden plik = jeden kit)Holograms/- folder z hologramamiPortals.yml- portale teleportacyjneJail.yml- lokalizacje więzieńusers.dblub połączenie MySQL - dane graczy
Konfiguracja połączenia z MySQL (zamiast domyślnego SQLite):
DataBase:
type: MySQL # MySQL lub SQLite (domyślnie SQLite)
Host: localhost
Port: 3306
Name: cmi_database
User: cmi_user
Pass: haslo_bazy MySQL jest rekomendowany na serwerach produkcyjnych i sieciach BungeeCord. SQLite sprawdza się na małych serwerach hobbystycznych gdzie nie potrzebujesz synchronizacji danych między instancjami.
CMI ma wbudowany system przeładowywania poszczególnych modułów bez restartu serwera:
/cmi reload # pełny reload konfiguracji
/cmi reload holograms # reload tylko hologramów
/cmi reload kits # reload tylko kitów
/cmi reload aliases # reload Custom Commands Dokumentacja CMI jest dostępna na zrips.net/cmi - jest szczegółowa i regularnie aktualizowana przez dewelopera. Aktywna społeczność na Discord Zripsa (link w opisie zasobu na SpigotMC) odpowiada na pytania w ciągu kilku godzin.
Więcej o zarządzaniu uprawnieniami do komend CMI: LuckPerms. Integracja ekonomii z innymi pluginami przez Vault. Pełna lista pluginów w katalogu pluginów.