Features
Rzeczywiste funkcje GrzybcioRynek 1.0.3 oraz klucze konfiguracji, które są ładowane, ale nieużywane.
Na podstawie kodu GrzybcioRynek 1.0.3 i web 0.1.0.
Poniżej wyłącznie to, co jest w kodzie 1.0.3. Jeśli klucz jest wczytywany, ale nigdzie nie steruje zachowaniem, jest to zaznaczone wprost.
Rynek stałocenowy
Gracz trzyma przedmiot i wystawia go za kwotę z zakresu settings.min-price … settings.max-price (domyślnie 1.0 … 1000000.0). Limit aktywnych ofert: settings.max-listings-per-player (domyślnie 10). Oferty wygasają po settings.listing-expiry-days dniach (domyślnie 7); timer czyści wygasłe oferty co 30 minut.
Kupno idzie przez GUI: przegląd → szczegóły (Detail) → potwierdzenie (Confirm). Płatność wyłącznie przez Vault, depozyt po UUID (bez fallbacku na nick).
/aukcje nie uruchamia aukcji. Otwiera to samo GUI przeglądania co /market.
Komendy gracza
Wymagane uprawnienie przy starcie komendy: market.use (egzekwowane). Wystawianie: dodatkowo market.sell (egzekwowane). /wystaw wymaga obu.
| Komenda | Aliasy / warianty | Uprawnienie |
|---|---|---|
/market | ah, rynek | market.use |
/market sell <cena> | sprzedaj | market.sell |
/market browse | przegladaj | market.use |
/market remove <id> | usun | market.use (admin może każdą) |
/market reload | — | market.reload lub market.admin |
/market my | moje | market.use |
/market search | szukaj | market.use |
/market favorites | ulubione | market.use |
/market history | historia | market.use |
/market stats | statystyki | market.use |
/market mailbox | skrzynka | market.use |
/market alerts | alert | market.use |
/market alerts add <fraza> <max-cena> | — | market.use |
/market admin … | — | market.admin |
/wystaw <cena> | — | market.use i market.sell |
/aukcje | rynek-gui, ah-gui | market.use |
Wpisywanie na czacie można przerwać słowami cancel lub anuluj.
Narzędzia admina
/market admin (market.admin):
listinspect <id>remove <id>forceexpire <id>refund <tx-id> [reclaim]selftest [seller] [buyer]— może stworzyć FakePlayer (SellerBot/BuyerBot)reload
Reload jest blokowany, gdy istnieją zarezerwowane oferty (trwa zakup).
GUI i dane
- Przeglądanie, kategorie, moje oferty, ulubione, historia, statystyki, skrzynka, alerty, profil sprzedawcy, szczegóły, potwierdzenie zakupu.
- Rozmiar przeglądarki bierze się z
gui.yml→browse.size(domyślnie54). - Pasek akcji przeglądarki (sloty 45–53) jest zahardkodowany w
MarketBrowseGUI, nie w YAML. - Sloty potwierdzenia zakupu są w
gui.yml→confirm.slots.
Dane: plugins/GrzybcioRynek/listings.yml oraz market-data.yml.
Prowizje i antynadużycia
market-fee:
enabled: true
listing-fee-percent: 0.0
sale-fee-percent: 5.0
minimum-fee: 0.0
maximum-fee: 0.0 # 0 = brak limitu górnego
sink-account: "" # puste = spalenie prowizjianti-abuse:
enabled: true
max-purchases-from-same-player: 20
purchase-window-seconds: 86400
max-transaction-value: 10000000
listing-cooldown-seconds: 5transactions.logging: true steruje logowaniem transakcji.
Funkcje przełączane flagą enabled
| Klucz | Domyślnie | Co naprawdę robi |
|---|---|---|
favorites.enabled | true | Wyłącza /market favorites (komunikat favorites.disabled) |
price-alerts.enabled | true | Wyłącza /market alerts (alerts.disabled); limit max-per-player: 10 |
mailbox.enabled | true | Bramkuje skrzynkę |
ratings.enabled | true | Bramkuje oceny sprzedawców |
anti-abuse.enabled | true | Bramkuje limity zakupów / cooldown / max wartość |
market-fee.enabled | true | Przy false obie prowizje = 0 |
history.enabled | true | Tylko komenda /market history — nie przycisk Historii w GUI przeglądania |
stats.enabled | true | Wczytywane, nigdy nie sprawdzane w Javie |
settings.gui-rows: 6 jest ładowane (ConfigManager.guiRows), ale nieużywane. Wielkość GUI ustawia gui.yml.
Integracje
- Vault — wymagane.
ServicesManager+Economy. Format kwot:$Xalbo$X.XX. - Nexo — opcjonalne, refleksja
com.nexomc.nexo.api.NexoItems(idFromItem,itemFromId.build()). - Oraxen — opcjonalne,
io.th0rgal.oraxen.api.OraxenItems(getIdByItem,exists,getItemById.build()). - PlaceholderAPI — expansion
grybciorynek, cache 20 ticków (8 placeholderów). - Essentials — tylko
softdependpod późny Vault; brak bezpośredniego API.
CustomItemsHook najpierw klonuje zapisany ItemStack. Przebudowa z ID packa tylko gdy zapisany item to AIR.
Uprawnienia z plugin.yml vs Java
Egzekwowane: market.use, market.sell, market.reload, market.admin.
Niesprawdzane w Javie (są w plugin.yml, default: true): market.history, market.mailbox, market.alerts. market.admin ma je jako children, ale komendy i tak wymagają tylko market.use.
Czego nie ma
- Prawdziwych aukcji / bidów.
- HTTP API i live-połączenia ze
Strona/. - Pliku
messages.yml. - Fallbacku Vault po nicku.