GrzybcioRynek

Expiration

Listing expiry configuration — listing-expiry-days, 30 min timer, outbox and pending-returns.

Compatible with: GrzybcioRynek 1.0.3Minecraft 26.2Web 0.1.0

Based on GrzybcioRynek 1.0.3 and web 0.1.0 source.

Only lifetime key:

yaml
settings:
  listing-expiry-days: 7
Typeint
Default7
EffectListing expires when now - timestamp > N days.

When checked

  • MarketPlace.onEnable (after managers are assembled)
  • every 30 minutes (20 * 60 * 30 ticks)
  • after /market reload / /market admin reload

Reserved listings (purchase in progress) are skipped.

Item path

  1. Entry expiry-outbox.<id> in listings.yml (seller, item, price, reason: expired)
  2. Remove listing + clear favorites
  3. processExpiryOutbox:
    • online + space → inventory, expiry.returned
    • otherwise → MailboxService.deposit (expired) or pending-returns when mailbox off

/market admin forceexpire <id> forces the same reason expired immediately.

Mailbox dependency

mailbox.enabledOffline seller
truemarket-data.yml mailbox
falselistings.yml pending-returns.<uuid>

What is missing

  • Per-listing timer (one global scheduler).
  • Extending a listing via command.
  • A “warn X hours before expiry” key.