Príručka
Ako vytvoriť plugin na ekonomiku pre Minecraft
Aktualizované 18. októbra 2026
Plugin na ekonomiku drží zostatok každého hráča a umožňuje hráčom posielať si peniaze, zarábať ich a míňať v obchodoch. Najdôležitejšie nie sú príkazy, ale napojenie na Vault: práve vďaka nemu môžu pluginy na obchody, práce a aukcie používať tvoje peniaze. Táto príručka rozoberá návrh, ukladanie dát a to, ako plugin zostaviť a otestovať.
Začni od tohto príkladu a uprav pravidlá podľa seba.
Vygeneruj to v CodexeKrok za krokom
1.Rozhodni, čím plugin bude
Buď ekonomikou je (ukladá zostatky a registruje sa ako ekonomika vo Vaulte), alebo existujúcu ekonomiku cez Vault používa (obchod, odmeny za hlavy, plugin na práce). Väčšina serverov potrebuje od každého jeden, nie dve ekonomiky.
2.Vyber server a verziu
Napíš serverový softvér a verziu, napríklad Paper 1.21.4. Plugin sa zostaví pre API a úroveň Java tejto verzie.
3.Vypíš príkazy a pravidlá
/balance,/pay <player> <amount>,/baltopa príkazy pre adminov, napríklad/eco give|take|set. Pridaj počiatočný zostatok, názov meny, počet desatinných miest a minimálnu platbu.4.Vyber, kam sa budú zostatky ukladať
SQLite pre jeden server, MySQL, ak musí viac serverov zdieľať rovnaké zostatky. Peniaze musia prežiť reštarty aj pády, preto sa nikdy nedržia iba v pamäti.
5.Nechaj Codexe, nech ho napíše a zostaví
Opíš plugin a výslovne spomeň Vault, aby sa pridal ako závislosť. Codexe napíše kód v jazyku Java,
plugin.ymlaconfig.yml, skompiluje ho a opraví chyby buildu skôr, než je projekt v stave Pripravené.6.Otestuj platby v hre
Stlač Vyskúšaj teraz a pripoj sa na testovací server. Pošli peniaze medzi dvoma účtami, skús príliš veľké, záporné aj nečíselné sumy, potom server reštartuj a skontroluj, či zostatky zostali.
7.Nainštaluj ho
Daj Vault a svoj .jar do priečinka
plugins/na serveri a reštartuj ho. Odstráň ostatné pluginy na ekonomiku alebo rozhodni, ktorý má Vault používať.
Ako do toho zapadá Vault
Vault je most, nie ekonomika. Plugin na ekonomiku implementuje rozhranie Economy z Vaultu a zaregistruje ho v správcovi služieb servera; ostatné pluginy si ho vyžiadajú cez getServer().getServicesManager().getRegistration(Economy.class) a volajú metódy ako getBalance, withdrawPlayer a depositPlayer.
Plugin na obchod teda nikdy nemusí vedieť, akú ekonomiku používaš. V plugin.yml použi depend: [Vault], ak plugin bez neho nefunguje, alebo softdepend, ak je Vault voliteľný. Vault API treba iba na kompiláciu; samotný Vault sa inštaluje na server.
Rozhodnutia, ktoré patria do zadania
- Formát peňazí: názov meny v jednotnom a množnom čísle, symbol, počet desatinných miest.
- Limity: počiatočný zostatok, maximálny zostatok, či môže ísť zostatok do mínusu.
- Offline hráči: či
/paya/ecofungujú aj na hráčov, ktorí nie sú online. - Záznamy: denník transakcií v databáze alebo v súbore, aby tím mohol preveriť spory.
- Zarábanie peňazí: zabíjanie mobov, odmeny za odohraný čas, predaj predmetov alebo iba príkazy pre adminov.
Kam ukladať zostatky
| Úložisko | Vhodné pre | Na čo si dať pozor |
|---|---|---|
| Súbor YAML | Veľmi malé servery, ľahko sa číta | Pomalé pri veľa hráčoch, pri páde sa ľahko poškodí |
| SQLite | Jeden server, bez nastavovania | Nedá sa zdieľať medzi servermi |
| MySQL / MariaDB | Siete so spoločným zostatkom | Potrebuje databázový server a prihlasovacie údaje v config.yml |
Príklad popisu
„Plugin na ekonomiku pre Paper 1.21.4 s názvom Coins, ktorý sa registruje ako ekonomika vo Vaulte. /balance [player], /pay <player> <amount> s minimom 1, /baltop s top 10 a /eco give|take|set pre hráčov s coins.admin. Noví hráči začínajú so 100 mincami. Dve desatinné miesta. Každá platba sa zaznamená s dátumom, odosielateľom, príjemcom a sumou. Zostatky uložené v SQLite. Názvy meny a všetky správy v config.yml.“
Ak nepožiadaš o niečo iné, Codexe štandardne použije SQLite. Ak požiadaš o MySQL, plugin sa napíše s nastavením storage-type a testovací server mu počas skúšania pridelí vlastnú databázu MySQL.
Otázky
Potrebujem Vault?
Nie pre samostatnú ekonomiku, ktorú nič iné nepoužíva. Potrebuješ ho, len čo musia zostatky čítať alebo meniť iné pluginy (obchody, práce, aukcie), pretože práve toto API hľadajú.
Môžem ho spustiť vedľa EssentialsX?
EssentialsX má vlastnú ekonomiku a tiež ju registruje vo Vaulte. Používaj naraz iba jednu ekonomiku alebo vypni tú, ktorú nechceš, inak môžu iné pluginy používať iný zostatok, než aký ukazujú tvoje príkazy.
Môže viac serverov zdieľať rovnaké zostatky?
Áno, s úložiskom MySQL alebo MariaDB a rovnakou databázou v config.yml každého servera. Uveď to v zadaní, aby plugin čítal zostatky z databázy a nedržal ich príliš dlho v cache.
Ako to otestujem bez skutočného servera?
Cez Vyskúšaj teraz: spustí sa súkromný server Paper tvojej verzie so skompilovaným pluginom a nainštalujú sa k nemu pluginy uvedené v depend a softdepend, napríklad Vault. Plán Free má 3 testovacie servery denne, každý na 10 minút.
Vytvor ekonomiku pre svoj server
Toto zadanie sa otvorí pripravené na odoslanie:
“Plugin na ekonomiku pre Paper 1.21.4 s názvom Coins, ktorý sa registruje ako ekonomika vo Vaulte: /balance, /pay s minimom 1, /baltop top 10, /eco give|take|set pre coins.admin, počiatočný zostatok 100, dve desatinné miesta, každá platba zaznamenaná, zostatky v SQLite, názvy meny a správy v config.yml.”
Vygeneruj to v Codexe