Features
Real GrzybcioRynek 1.0.3 features and config keys that are loaded but unused.
Based on GrzybcioRynek 1.0.3 and web 0.1.0 source.
Below is only what exists in the 1.0.3 code. If a key is loaded but does not control behavior anywhere, that is called out explicitly.
Fixed-price market
The player holds an item and lists it for an amount in the range settings.min-price … settings.max-price (defaults 1.0 … 1000000.0). Active listing limit: settings.max-listings-per-player (default 10). Listings expire after settings.listing-expiry-days days (default 7); a timer clears expired listings every 30 minutes.
Purchase goes through the GUI: browse → details (Detail) → confirmation (Confirm). Payment is only through Vault, deposit by UUID (no nickname fallback).
/aukcje does not start auctions. It opens the same browse GUI as /market.
Player commands
Required permission when a command starts: market.use (enforced). Listing: additionally market.sell (enforced). /wystaw requires both.
| Command | Aliases / variants | Permission |
|---|---|---|
/market | ah, rynek | market.use |
/market sell <cena> | sprzedaj | market.sell |
/market browse | przegladaj | market.use |
/market remove <id> | usun | market.use (admin can remove any) |
/market reload | — | market.reload or 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 and market.sell |
/aukcje | rynek-gui, ah-gui | market.use |
Chat input can be cancelled with the words cancel or anuluj.
Admin tools
/market admin (market.admin):
listinspect <id>remove <id>forceexpire <id>refund <tx-id> [reclaim]selftest [seller] [buyer]— may create a FakePlayer (SellerBot/BuyerBot)reload
Reload is blocked when reserved listings exist (a purchase is in progress).
GUI and data
- Browsing, categories, my listings, favorites, history, stats, mailbox, alerts, seller profile, details, purchase confirmation.
- Browse size comes from
gui.yml→browse.size(default54). - The browse action bar (slots 45–53) is hardcoded in
MarketBrowseGUI, not in YAML. - Purchase confirmation slots are in
gui.yml→confirm.slots.
Data: plugins/GrzybcioRynek/listings.yml and market-data.yml.
Fees and anti-abuse
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 controls transaction logging.
Features toggled by an enabled flag
| Key | Default | What it actually does |
|---|---|---|
favorites.enabled | true | Disables /market favorites (message favorites.disabled) |
price-alerts.enabled | true | Disables /market alerts (alerts.disabled); limit max-per-player: 10 |
mailbox.enabled | true | Gates the mailbox |
ratings.enabled | true | Gates seller ratings |
anti-abuse.enabled | true | Gates purchase limits / cooldown / max value |
market-fee.enabled | true | When false, both fees = 0 |
history.enabled | true | Only the /market history command — not the History button in the browse GUI |
stats.enabled | true | Loaded, never checked in Java |
settings.gui-rows: 6 is loaded (ConfigManager.guiRows) but unused. GUI size is set by gui.yml.
Integrations
- Vault — required.
ServicesManager+Economy. Amount format:$Xor$X.XX. - Nexo — optional, reflection
com.nexomc.nexo.api.NexoItems(idFromItem,itemFromId.build()). - Oraxen — optional,
io.th0rgal.oraxen.api.OraxenItems(getIdByItem,exists,getItemById.build()). - PlaceholderAPI — expansion
grybciorynek, cache 20 ticks (8 placeholders). - Essentials — only a
softdependfor late Vault; no direct API.
CustomItemsHook first clones the saved ItemStack. Rebuild from pack ID only when the saved item is AIR.
Permissions from plugin.yml vs Java
Enforced: market.use, market.sell, market.reload, market.admin.
Not checked in Java (present in plugin.yml, default: true): market.history, market.mailbox, market.alerts. market.admin has them as children, but the commands still only require market.use.
What is missing
- Real auctions / bids.
- An HTTP API and a live connection to
Strona/. - A
messages.ymlfile. - Vault nickname fallback.