GrzybcioRynek

Features

Real GrzybcioRynek 1.0.3 features and config keys that are loaded but unused.

Compatible with: GrzybcioRynek 1.0.3Minecraft 26.2Web 0.1.0

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-pricesettings.max-price (defaults 1.01000000.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).

Warning

/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.

CommandAliases / variantsPermission
/marketah, rynekmarket.use
/market sell <cena>sprzedajmarket.sell
/market browseprzegladajmarket.use
/market remove <id>usunmarket.use (admin can remove any)
/market reloadmarket.reload or market.admin
/market mymojemarket.use
/market searchszukajmarket.use
/market favoritesulubionemarket.use
/market historyhistoriamarket.use
/market statsstatystykimarket.use
/market mailboxskrzynkamarket.use
/market alertsalertmarket.use
/market alerts add <fraza> <max-cena>market.use
/market admin …market.admin
/wystaw <cena>market.use and market.sell
/aukcjerynek-gui, ah-guimarket.use

Chat input can be cancelled with the words cancel or anuluj.

Admin tools

/market admin (market.admin):

  • list
  • inspect <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.ymlbrowse.size (default 54).
  • The browse action bar (slots 45–53) is hardcoded in MarketBrowseGUI, not in YAML.
  • Purchase confirmation slots are in gui.ymlconfirm.slots.

Data: plugins/GrzybcioRynek/listings.yml and market-data.yml.

Fees and anti-abuse

yaml
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 prowizji
yaml
anti-abuse:
  enabled: true
  max-purchases-from-same-player: 20
  purchase-window-seconds: 86400
  max-transaction-value: 10000000
  listing-cooldown-seconds: 5

transactions.logging: true controls transaction logging.

Features toggled by an enabled flag

KeyDefaultWhat it actually does
favorites.enabledtrueDisables /market favorites (message favorites.disabled)
price-alerts.enabledtrueDisables /market alerts (alerts.disabled); limit max-per-player: 10
mailbox.enabledtrueGates the mailbox
ratings.enabledtrueGates seller ratings
anti-abuse.enabledtrueGates purchase limits / cooldown / max value
market-fee.enabledtrueWhen false, both fees = 0
history.enabledtrueOnly the /market history command — not the History button in the browse GUI
stats.enabledtrueLoaded, never checked in Java
Warning

settings.gui-rows: 6 is loaded (ConfigManager.guiRows) but unused. GUI size is set by gui.yml.

Integrations

  • Vault — required. ServicesManager + Economy. Amount format: $X or $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 softdepend for 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.yml file.
  • Vault nickname fallback.