×minecraft.pl-15%na hosting MinecraftDDoS · VPS · DedicatedKOD:MCPLAktywuj →
-15%na hosting dla minecraft.pl
DDoS · VPS · DEDICATED · skillhost.pl
MCPLAktywuj →
Discord
Wiki - Pluginy

Towny - plugin miast i narodów

Towny Advanced to jeden z najdojrzalszych pluginów do Minecrafta - pozwala graczom tworzyć miasta, claimować działki, zakładać narody, zbierać podatki i prowadzić wojny. Działa na Paper, Spigot i Purpur od wersji 1.16 wzwyż i jest aktywnie rozwijany od ponad 15 lat.

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

Co to jest Towny

Towny Advanced (znany po prostu jako Towny) to plugin land-protection, który wprowadza kompletny system polityczny i gospodarczy na serwer Minecraft. Zamiast indywidualnych claimów jak w GriefPrevention, Towny organizuje graczy wokół miast - każde miasto zbiorowo zarządza obszarem ziemi podzielonym na działki.

Historia pluginu sięga 2010 roku - jest to jeden z najdłużej rozwijanych pluginów w całej historii Minecrafta. Przez lata stał się standardem dla serwerów survival z elementami polityki i ekonomii. Znajdziesz go na zdecydowanej większości serwerów typu "towny survival" lub "economy survival" w Polsce i na świecie.

Towny wprowadza cztery poziomy struktury politycznej:

  • Rezydent (Resident) - każdy gracz na serwerze. Może dołączyć do miasta lub założyć własne
  • Miasto (Town) - grupa graczy na wspólnym obszarze pod przywódctwem burmistrza
  • Naród (Nation) - sojusz miast pod jednym królem. Daje premie i organizuje politykę między miastami
  • Świat (World) - każdy wymiar (Overworld, Nether, End) może mieć osobne ustawienia Towny

Plugin pobierasz za darmo z oficjalnego repozytorium GitHub. Wymaga Javy 17+ i działa na Paper/Spigot 1.16.5+. Do pełnej funkcjonalności ekonomicznej potrzebuje Vault oraz pluginu ekonomii (np. EssentialsX).

Tworzenie miasta

Założenie miasta to pierwszy krok każdego gracza, który chce mieć własny teren. Zanim wpiszesz komendę, upewnij się, że masz wystarczające saldo - admin może ustawić koszt założenia miasta (typowo 500-5000$).

/t new NazwaMiasta     # zakłada nowe miasto w obecnej lokalizacji
/t claim               # claimuje chunk, w którym stoisz (płatne)
/t unclaim             # oddaje chunk z powrotem do dziczy
/t claim outpost       # tworzy oddalony przyczółek (outpost)

Miasto powstaje w chunku, w którym stoisz w momencie wpisania komendy. Ten chunk staje się homeblock - sercem miasta. Tutaj automatycznie ustawiany jest spawn miasta (/t spawn). Homeblock nie może być przesunięty bez przeprowadzki całego spawn-pointu, więc wybierz lokalizację z głową.

Po założeniu miasta możesz stopniowo dokupywać sąsiednie chunki komendą /t claim. Każdy chunk kosztuje jednorazową opłatę (ustawianą przez admina) i liczy się do limitu działek miasta. Limit bazowy to zwykle 8-16 działek, ale rośnie wraz z liczbą mieszkańców - każdy nowy mieszkaniec dokłada bonus do puli dostępnych działek.

Formuła bazowa dla domyślnej konfiguracji:

Maksymalna liczba działek = (liczba_mieszkańców + 1) * bonus_per_mieszkańca

Na przykład miasto z 10 mieszkańcami przy bonusie 8 działek/mieszkańca może claimować 88 chunków. To ogromny teren - dlatego rekrutacja mieszkańców jest kluczową strategią.

Warto też zaplanować kształt miasta. Chunki muszą przylegać do siebie (lub być outpostami). Luźno rozrzucone wyspy claimów nie są możliwe - każdy nowy chunk musi sąsiadować z już claimowanym. Wyjątkiem są outposty (/t claim outpost), które mogą być daleko od reszty, ale kosztują znacznie więcej.

Zarządzanie działkami

Każdy claimowany chunk to jedna działka (plot). Domyślnie wszystkie działki w mieście należą do miasta i są zarządzane przez burmistrza. Możesz jednak przypisać działkę konkretnemu mieszkańcowi lub nadać jej specjalny typ.

Typy działek

Towny definiuje kilka typów działek, z których każdy ma inne domyślne uprawnienia:

  • Default - standardowa działka miejska. Uprawnienia kontrolowane przez ustawienia miasta
  • Shop (sklep) - działka handlowa. Oznaczona typem /plot set shop. Obcy gracze mogą tu handlować nawet jeśli reszta miasta jest zamknięta
  • Embassy (ambasada) - działka, którą może kupić lub wynająć gracz z innego miasta lub nawet bezdomny. Przydatne dla tworzenia handlowych dzielnic
  • Farm (farma) - działka rolnicza. Zewnętrzni gracze mogą zbierać plony, ale nie niszczyć struktury farmy
  • Arena (arena) - działka PvP. Na tej działce PvP jest zawsze włączone, niezależnie od ogólnych ustawień serwera i miasta
  • Wilds (dzikie) - działka traktowana jak teren poza miastem - pełna swoboda zniszczenia
  • Inn (gospoda) - umożliwia bezdomnym graczom ustawienie spawnu na tej działce
  • Jail (więzienie) - działka, do której trafią ukarani mieszkańcy miasta
/plot set shop         # zmienia typ działki na sklep
/plot set embassy      # zmienia typ działki na ambasadę
/plot set farm         # zmienia typ działki na farmę
/plot set arena        # zmienia typ działki na arenę PvP
/plot set name Nazwa   # nadaje działce własną nazwę
/plot forsale 500      # wystawia działkę na sprzedaż za 500$
/plot notforsale       # zdejmuje działkę z rynku

Uprawnienia na działkach

Każda działka ma niezależne uprawnienia dla czterech grup: Resident (mieszkańcy), Nation (gracze z tego samego narodu), Ally (sojusznicy) i Outsider (wszyscy pozostali). Uprawnienia dzielą się na cztery typy: Build, Destroy, Switch (używanie dźwigni, przycisków, skrzyń), ItemUse (używanie przedmiotów jak wiadra, grabie).

/plot perm set outsider build off    # blokuje budowanie obcym
/plot perm set resident switch on    # mieszkańcy mogą używać przycisków
/plot perm set ally destroy on       # sojusznicy mogą niszczyć na tej działce

Narody

Naród to wyższy poziom organizacji ponad miastami. Jeden gracz (król, ang. king) założył naród i zaprosił do niego inne miasta. Naród może prowadzić dyplomację - zawierać sojusze z innymi narodami, ogłaszać wrogów i organizować wspólne działania wojenne.

/n new NazwaNarodu       # zakłada naród (burmistrz płaci koszt założenia)
/n add NazwaMiasta       # zaprasza miasto do narodu
/n kick NazwaMiasta      # usuwa miasto z narodu
/n ally add NazwaNarodu  # wysyła propozycję sojuszu innemu narodowi
/n enemy add NazwaNarodu # ogłasza wroga (wymagane do wojny w niektórych trybach)
/n spawn                 # teleportuje do stolicy narodu
/n deposit kwota         # wpłaca do kasy narodu
/n withdraw kwota        # wypłaca z kasy narodu (tylko król)

Korzyści z przynależności do narodu są wymierne. Każde miasto w narodzie dostaje bonus do maksymalnej liczby działek - domyślnie +10 działek za przynależność do narodu i dodatkowe chunki za wielkość narodu. Duże narody z wieloma miastami mogą mieć premię rzędu 50-100 dodatkowych działek dla każdego z miast.

Naród ma wspólną kasę (nation bank), z której król może finansować wojny, dyplomację albo dotować mniejsze miasta. Utrzymanie narodu kosztuje codziennie pewną kwotę - jeśli kasa pustoszeje, naród upada i wszystkie miasta wracają do statusu niezależnych.

Struktura władzy w narodzie

  • Król (King) - założyciel lub mianowany przywódca narodu. Pełna kontrola nad kasą, dyplomacją i strukturą
  • Asystent narodu (Nation Assistant) - może zarządzać miastami i dyplomacją, ale nie ma dostępu do kasy
  • Stolica (Capital) - miasto króla. Daje premie do całego narodu. Zmiana stolicy komendą /n set capital NazwaMiasta

Rangi i uprawnienia

Towny ma wbudowany system rang niezależny od LuckPerms. Każde miasto może tworzyć własne niestandardowe rangi z dowolnym zestawem uprawnień Towny.

Domyślne rangi w mieście

  • Burmistrz (Mayor) - pełna kontrola nad miastem. Może claimować działki, pobierać podatki, wyrzucać graczy, mianować asystentów i rangi. Jeden na miasto
  • Asystent (Assistant) - może zarządzać mieszkańcami, działkami i ustawieniami miasta. Nie może claimować ani zwalniać działek poza obszarem przypisanym
  • VIP - przykładowa ranga niestandardowa. Admin może zdefiniować dowolne rangi z dowolnymi uprawnieniami
  • Nowy mieszkaniec (Nomad/default) - standardowy mieszkaniec bez specjalnych uprawnień poza tymi nadanymi przez miasto
/t rank add Gracz MaiorName      # nadaje graczowi rangę w mieście
/t rank remove Gracz MaiorName   # odbiera rangę
/t set mayor Gracz               # przekazuje tytuł burmistrza innemu graczowi

Rangi niestandardowe konfiguruje się w pliku plugins/Towny/settings/townyperms.yml. Możesz tworzyć rangi jak "Builder", "Guard", "Merchant" każda z własnym zestawem komend Towny, które gracz może wykonywać.

Uprawnienia wobec działek własnych vs cudzych

Każdy mieszkaniec może ustawiać uprawnienia na działkach, które należą bezpośrednio do niego (przypisane przez burmistrza). Na działkach miejskich (nieprzypisanych) uprawnienia ustawia tylko burmistrz lub asystent. To ważna różnica - gracz może mieć "swoją" działkę i pełną kontrolę nad nią, mimo że formalnie jest własnością miasta.

Ekonomia i podatki

Towny wprowadza rozbudowany system finansowy. Każde miasto ma własny bank, do którego trafiają podatki od mieszkańców i wpłaty manualne. Z kasy miejskiej opłacane są koszty utrzymania miasta (codzienny upkeep) i ewentualne wydatki wojenne.

Podatki

/t set taxes 50          # ustawia dzienny podatek na 50$ od każdego mieszkańca
/t set taxes 5%          # podatek procentowy od salda gracza (zamiast stałej kwoty)
/t set plottax 10        # podatek za każdą przypisaną działkę (dziennie)
/t set plotprice 200     # cena zakupu działki przez mieszkańca
/t set shoptax 20        # dodatkowy podatek za działki typu shop

Podatki są pobierane automatycznie raz na dobę (w momencie "nowego dnia" Towny, konfigurowalnym przez admina). Jeśli gracz nie ma środków na zapłacenie podatku, może zostać automatycznie wyrzucony z miasta - to ustawienie zależne od konfiguracji admina.

Bank miejski i wpłaty

/t deposit 1000          # wpłaca 1000$ do kasy miejskiej z własnego portfela
/t withdraw 500          # wypłaca z kasy (tylko burmistrz lub asystent)
/t balance               # sprawdza stan kasy miejskiej

Bank miejski jest oddzielny od portfeli graczy. Pieniądze w kasie należą do miasta - nawet jeśli burmistrz odejdzie, kasa pozostaje. Przy przejęciu miasta przez nowego burmistrza kasa przechodzi razem z miastem.

Koszty utrzymania (upkeep)

Każde miasto płaci codzienny upkeep proporcjonalny do liczby działek lub flat rate ustalony przez admina. Jeśli kasa miejska nie ma środków na upkeep, miasto upada - wszystkie działki wracają do dziczy, a mieszkańcy stają się bezdomni. To mechanizm wymuszający aktywność i kontribuowanie do kasy.

Podobnie narody płacą własny upkeep. Duże narody z wieloma miastami płacą więcej - to naturalne ograniczenie ekspansji i motywacja do tworzenia aktywnych, a nie martwych imperiów.

Wojna (Towny War)

Towny oferuje kilka trybów wojennych. Domyślnie serwery uruchamiają Towny bez aktywnych wojen, a admin wybiera mechanikę pasującą do koncepcji serwera.

Tryby konfliktu

  • Brak wojen (Off) - pełna ochrona, żadnego PvP związanego z systemem politycznym. Odpowiednie dla serwerów family-friendly
  • Towny War Event - cykliczne wydarzenia wojenne ogłaszane przez admina lub automatycznie. Przez określony czas (np. weekend) klany mogą atakować działki wroga
  • Town Sieges - nowoczesny tryb z oficjalnego dodatku Towny-Sieges. Gracze oblegają miasto przez wyznaczony czas, a wynik oblężenia decyduje o tym, kto przejmuje kontrolę
  • Flag War - tryb flagi: atakujący muszą postawić flagę na działce wroga i jej bronić przez określony czas, by ją przejąć

Mechanika Siege War

Siege War (dostępny jako oddzielna wtyczka do Towny) jest najpopularniejszym trybem wojennym na nowoczesnych serwerach. Oblężenie przebiega tak:

  1. Atakujący gracz (musi być z narodu będącego wrogiem) stawia baner w pobliżu centrum atakowanego miasta
  2. Zaczyna się odliczanie oblężenia (domyślnie 3 dni). Oba obozy mogą punktować przez zabijanie wrogów w strefie oblężenia
  3. Po upływie czasu, jeśli atakujący mają więcej punktów, miasto płaci odszkodowanie wojenne. Opcjonalnie może zostać wcielone do narodu atakującego
  4. Oblężenie można odeprzeć - obrońcy muszą uzbierać więcej punktów niż atakujący

Siege War nie usuwa automatycznie miast - jest bardziej politycznym narzędziem nacisku (wymuszanie odszkodowań, zmiana sojuszy) niż mechanizmem całkowitego podboju. To sprawia, że serwery z Siege War są dynamiczne bez bycia destrukcyjnymi.

Komendy

Komendy gracza - miasto

Komenda Opis
/t Wyświetla informacje o własnym mieście
/t NazwaMiasta Wyświetla informacje o dowolnym mieście
/t new NazwaMiasta Zakłada nowe miasto
/t join NazwaMiasta Dołącza do otwartego miasta
/t leave Opuszcza obecne miasto
/t add Gracz Zaprasza gracza do miasta (burmistrz)
/t kick Gracz Wyrzuca gracza z miasta (burmistrz)
/t claim Claimuje chunk, w którym stoisz
/t unclaim Zwalnia chunk z claimów
/t spawn Teleportuje do spawnu miasta
/t spawn NazwaMiasta Teleportuje do spawnu innego miasta (jeśli publiczny)
/t set spawn Ustawia spawn miasta w obecnej lokalizacji (burmistrz)
/t set board Tekst Ustawia opis miasta widoczny przy wejściu na działkę
/t toggle open Przełącza tryb otwarty (gracze mogą dołączać bez zaproszenia)
/t toggle pvp Włącza/wyłącza PvP w mieście
/t toggle fire Włącza/wyłącza rozprzestrzenianie ognia w mieście
/t delete Usuwa miasto (nieodwracalne, tylko burmistrz)

Komendy gracza - naród

Komenda Opis
/n Informacje o własnym narodzie
/n new NazwaNarodu Zakłada naród (musisz być burmistrzem)
/n add NazwaMiasta Zaprasza miasto do narodu (król)
/n ally add NazwaNarodu Proponuje sojusz innemu narodowi
/n enemy add NazwaNarodu Ogłasza naród wrogiem
/n spawn Teleportuje do stolicy narodu

Komendy admina

/ta town new NazwaMiasta Gracz    # tworzy miasto dla gracza bez kosztów
/ta town delete NazwaMiasta       # usuwa miasto
/ta nation new NazwaNarodu Gracz  # tworzy naród
/ta givebonus NazwaMiasta 20      # daje miastu bonus +20 działek
/ta regenerate NazwaMiasta        # przywraca teren po zniszczeniu
/ta unclaim circle 5              # zwalnia działki w promieniu 5 chunków
/ta reload                        # przeładowuje konfigurację Towny

Konfiguracja

Towny trzyma konfigurację w katalogu plugins/Towny/settings/. Główne pliki to:

  • config.yml - centralna konfiguracja: koszty, limity, podatki, okresy, mechaniki
  • townyperms.yml - uprawnienia Towny dla grup graczy i rang w miastach/narodach
  • language/ - wszystkie teksty pluginu, dostępne do edycji

Najważniejsze parametry config.yml

# Koszty
new_town_price: 1000.0           # koszt założenia miasta
new_nation_price: 5000.0         # koszt założenia narodu
claim_price: 200.0               # cena za claimowanie jednego chunku
claim_price_per_plot: true       # czy cena rośnie z każdym claimem

# Utrzymanie (upkeep) - pobierane raz dziennie
town_upkeep: 100.0               # bazowy koszt utrzymania miasta
town_upkeep_multiplied: false    # jeśli true: upkeep * liczba_działek
nation_upkeep: 1000.0            # koszt utrzymania narodu

# Limity działek
max_plots_per_resident: 8        # ile działek może przypisać sobie jeden mieszkaniec
default_town_plots: 8            # startowa liczba działek dla nowego miasta
plots_per_resident: 8            # bonus działek za każdego mieszkańca

# Nowy dzień Towny (kiedy pobierane są podatki i upkeep)
new_day_time: "0:00"             # czas serwera dla nowego dnia

# Ochrona
prevent_explosions: true         # blokuje wybuchy na terenie miast
prevent_fire_spread: true        # blokuje rozprzestrzenianie ognia
prevent_mob_damage_blocks: true  # moby nie niszczą bloków w miastach

# PvP
town_pvp: false                  # domyślne PvP w nowych miastach (OFF)
nation_zone_pvp: false           # PvP w strefie narodu

Ustawienie walut i integracja z Vault

Towny automatycznie wykrywa Vault i używa podłączonego pluginu ekonomii. Upewnij się, że Vault jest zainstalowany przed Towny. Kolejność ładowania pluginów ma znaczenie - Towny sprawdza Vault przy starcie serwera.

# W server.properties lub paper-plugin.yml możesz wymusić kolejność:
# (alternatywnie użyj pluginchaos order lub sprawdź logi startu)

Towny Chat

Towny zawiera wbudowany system chatu z kanałami:

  • /tc - chat miejski (tylko mieszkańcy twojego miasta go widzą)
  • /nc - chat narodowy (wszystkie miasta w narodzie)
  • /ac - chat globalny (wszyscy gracze na serwerze)
  • /atc - admin town chat (widoczny dla adminów)

Format wiadomości w każdym kanale konfiguruje się w chatconfig.yml. Możesz dodawać placeholder'y jak {townname}, {nationname}, {rank} do formatek chatu.

Porady dla adminów

Pierwsze uruchomienie

Zanim gracze wejdą na serwer, przejdź przez config.yml i ustaw koszty pasujące do twojej ekonomii. Najczęstsze błędy to zbyt niskie koszty (każdy gracz zakłada miasto w pierwszym dniu) lub zbyt wysokie (nikt nie zakłada miast przez tydzień). Dobry balans to koszt założenia miasta równy 2-3 dniom aktywnej gry.

  • Ustaw upkeep większy niż zero - bez upkeep'u martwe miasta zaśmiecają mapę na zawsze. Upkeep wymusza aktywność lub rozpad nieaktywnych miast
  • Włącz deny_unclaim_when_bankrupt - bez tego gracze mogą zwalniać działki kiedy kasa pusta, by uniknąć długu. Zablokuj to
  • Postaw limit claimowania od granicy - parametr min_distance_from_town_homeblock wymusza minimalną odległość między miastami. Domyślnie 5 chunków to minimum - zwiększ do 10-15 dla większych bufferów
  • Włącz town_ruin_time - zamiast natychmiastowego usunięcia zbankrutowanego miasta, może ono przejść w stan "ruiny" przez kilka dni, zachowując struktury. Gracze mogą je odkupić lub zostaną usunięte po czasie
  • Użyj ta regenerate ostrożnie - regeneracja terenu po zniszczeniu jest nieodwracalna. Zawsze rób backup

Integracje z innymi pluginami

  • Vault - obowiązkowy. Bez niego ekonomia Towny nie działa
  • EssentialsX - najczęściej używany silnik ekonomii kompatybilny z Vault
  • LuckPerms - integruje się z rangami Towny przez kontekst towny_rank. Możesz dawać rangi LuckPerms automatycznie na podstawie rangi Towny (np. burmistrz dostaje prefix "Mayor")
  • Dynmap-Towny - wtyczka do Dynmapy, która rysuje granice miast i narodów na mapie online. Bardzo popularna na serwerach z Towny - gracze mogą widzieć politykę świata bez wchodzenia do gry
  • ShopGUI+ / QuickShop Hikari - sklepy działające na ekonomii Vault doskonale współpracują z podatkami Towny. Gracze zarabiają w sklepach i wydają na utrzymanie miast

Typowe problemy i rozwiązania

  • Gracze nie mogą claimować - sprawdź limit działek (/t pokazuje used/max). Zwiększ bonus przez /ta givebonus lub obniż max_plots_per_resident żeby dać więcej miejsca
  • Podatki nie są pobierane - upewnij się, że serwer działa w godzinie ustawionej jako new_day_time. Jeśli serwer restartuje się w tym czasie, może ominąć pobieranie
  • Miasto znika po restarcie - to prawdopodobnie problem z bazą danych. Towny może używać flatfile (pliki yml) lub MySQL/MariaDB. Na dużych serwerach zawsze używaj MySQL - flatfile może się korumpować
  • Błędy "Town already exists" - sprawdź czy nie ma starych danych w plugins/Towny/data/. Czasem zostają pliki po usuniętych miastach

Backup danych Towny

Dane Towny (jeśli flatfile) trzymane są w plugins/Towny/data/. Backupuj ten katalog razem z resztą serwera. Jeśli używasz MySQL, standardowe dumpy bazy wystarczą. Towny sam tworzy backupy w plugins/Towny/backups/ - liczba przechowywanych backupów konfiguruje się przez backup_count.

Powiązane artykuły: EssentialsX, Vault, LuckPerms, katalog pluginów.