Discord
RYJON - nowy polski serwer KitPvP na Minecraft 1.21.4, graj na ryjon.pl
Wiki - Pluginy

Vault - most między pluginami ekonomii i uprawnień

Vault

Vault to plugin-API, który sam nie dodaje żadnych widocznych funkcji, ale jest wymagany przez większość pluginów serwerowych. Łączy systemy ekonomii, uprawnień i chatu, pozwalając pluginom komunikować się ze soba bez bezpośredniej zależności.

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

Czym jest Vault

Vault to biblioteka posredniczaca (API), która definiuje standardowy interfejs do trzech systemów serwerowych: ekonomii (salda, przelewy), uprawnień (rangi, grupy) i chatu (prefixy, sufixy). Vault nie implementuje żadnego z tych systemów sam - zamiast tego łączy pluginy, które je dostarczają, z pluginami, które z nich korzystaja.

Analogia: Vault to jak gniazdko elektryczne. Sam z siebie nie produkuje prądu ani nie zasilacza urzadzenia. Ale bez niego lodówka (plugin sklepu) nie może podłączyć się do elektrowni (plugin ekonomii). Vault standaryzuje "kształt wtyczki", żeby dowolny plugin ekonomii działał z dowolnym pluginem sklepu.

Plugin istnieje od 2011 roku i jest instalowany na praktycznie każdym serwerze Minecraft, który używa ekonomii lub systemu rang. Pobierasz go z SpigotMC i wrzucasz do folderu plugins/ - to cała "konfiguracja".

Dlaczego każdy serwer potrzebuje Vault

Bez Vault każdy plugin ekonomiczny musiałby bezpośrednio wspierać każdy plugin sklepowy. Jeżeli istnieje 5 silników ekonomii i 10 pluginów sklepów, potrzeba 50 indywidualnych integracji. Z Vault każdy silnik ekonomii implementuje jeden interfejs Vault, a każdy sklep również - i wszystko działa ze wszystkim. 5 + 10 = 15 integracji zamiast 50.

W praktyce Vault jest wymagany przez:

  • Pluginy sklepów - ShopGUI+, QuickShop Hikari, EconomyShopGUI, ChestShop, AuctionHouse
  • Pluginy minigier - BedWars1058, SkyWars - nagrody pieniężne za wygrana
  • Pluginy chatu - ChatManager, DeluxeChat - odczytuja prefixy rang z Vault
  • Pluginy zawodów - Jobs Reborn - wypłaty za aktywności
  • Pluginy narzędzi - PlaceholderAPI - zmienne %vault_eco_balance%, %vault_prefix%
  • Pluginy claim - GriefPrevention, Towny - koszty claimow i miast

Jeśli probujesz zainstalować ktorykolwiek z powyższych pluginów bez Vault, zobaczysz błąd w logach: "Vault not found" lub "Economy provider not registered". Rozwiazanie jest zawsze takie samo: zainstaluj Vault.

Jak działa Vault

Vault operuje na trzech "usługach" (service providers):

Usługa Co robi Kto dostarcza
Economy Salda, przelewy, sprawdzanie stanu konta EssentialsX, CMI, TheNewEconomy, iConomy
Permissions Grupy, rangi, sprawdzanie uprawnień LuckPerms, UltraPermissions (dawniej: PEX, GroupManager)
Chat Prefixy, sufixy, metadata czatu LuckPerms (przechowuje prefixy), EssentialsX Chat (wyświetla)

Po starcie serwera Vault skanuje zainstalowane pluginy i rejestruje dostępnych dostawców uslug. Następnie, gdy inny plugin (np. ShopGUI+) chce sprawdzić saldo gracza, pyta Vault, a Vault przekazuje pytanie do aktualnie zarejestrowanego silnika ekonomii (np. EssentialsX). Cały proces jest przezroczysty - gracz nie widzi różnic.

W konsoli serwera po starcie zobaczysz komunikaty potwierdzajace, ze Vault znalazł dostawcow:

[Vault] [Economy] EssentialsX Economy found: Linked
[Vault] [Permission] LuckPerms found: Linked
[Vault] [Chat] LuckPerms found: Linked

Jeśli zamiast "Linked" widzisz "No compatible plugins found", oznacza to, ze brakuje silnika ekonomii lub uprawnien. Zainstaluj EssentialsX (ekonomia) i LuckPerms (uprawnienia).

Integracje z popularnymi pluginami

Typowy zestaw pluginów korzystających z Vault na serwerze survival:

  • EssentialsX - dostarcza silnik ekonomii (salda, /pay, /baltop) i rejestruje się w Vault jako Economy provider
  • LuckPerms - dostarcza system uprawnień i rang, rejestruje się jako Permission i Chat provider (prefixy)
  • ShopGUI+ / QuickShop - pluginy sklepów, które pytaja Vault o saldo gracza przy każdej transakcji
  • Jobs Reborn - wypłaca zarobki przez Vault Economy API
  • AuctionHouse - pobiera opłaty i prowizje przez Vault
  • PlaceholderAPI - udostępnia zmienne Vault innym pluginom: %vault_eco_balance%, %vault_eco_balance_fixed%, %vault_prefix%

Jeżeli zmienisz silnik ekonomii (np. z EssentialsX na CMI), wystarczy zainstalować nowy plugin i usunąć stary. Vault automatycznie przełącza się na nowego dostawce, a wszystkie pluginy sklepów, minigier i zawodów działają dalej bez zmian w ich konfiguracji.

Instalacja i konfiguracja

Vault to jeden z najprostszych pluginów do zainstalowania:

  1. Pobierz plik Vault.jar ze SpigotMC
  2. Umieść go w folderze plugins/ na serwerze
  3. Zainstaluj przynajmniej jeden silnik ekonomii (np. EssentialsX) i uprawnień (np. LuckPerms)
  4. Zrestartuj serwer
  5. Sprawdź logi - powinienes zobaczyć komunikaty "Linked" dla Economy, Permission i Chat

Vault nie wymaga konfiguracji. Nie ma pliku config.yml, nie ma komend w grze (poza /vault-info i /vault-convert). Po instalacji działa w tle, posredniczac między pluginami.

Kolejność ładowania pluginów ma znaczenie: Vault musi załadować się przed pluginami, które go używają. W większości przypadków serwer automatycznie rozwiązuje zależności, ale jeśli masz problemy, upewnij się, ze w pliku plugin.yml Twoich pluginów Vault jest wymieniony w sekcji depend lub softdepend.

Częste pytania

Czy Vault jest wymagany, jeśli uzywam tylko LuckPerms?

Jeśli nie masz ekonomii ani pluginów chatu korzystających z Vault - technicznie nie. Ale wiele pluginów sprawdza obecność Vault nawet jeśli nie korzysta bezpośrednio z ekonomii. Bezpieczniej jest zawsze mieć Vault zainstalowany, bo nie zużywa praktycznie żadnych zasobow.

Czy mogę mieć dwa silniki ekonomii jednocześnie?

Vault obsługuje tylko jednego dostawce na raz. Jeśli masz EssentialsX i CMI, Vault wybierze jednego (zazwyczaj tego ladowanego później). To prowadzi do nieprzewidywalnych zachowań - nie instaluj dwóch silników ekonomii.

Vault nie łączy się z ekonomia - co robić?

Sprawdź kolejnosc: (1) Vault musi być zainstalowany, (2) silnik ekonomii (np. EssentialsX) musi być zainstalowany i poprawnie skonfigurowany, (3) zrestartuj serwer (nie /reload). Sprawdź logi pod katem błędów.

Powiązane: EssentialsX (silnik ekonomii), LuckPerms (system uprawnień), serwer z ekonomia (pełna konfiguracja ekonomii).