Skip to main content

Official Shop, Player Market, and Order System

In This Page
  • Official Shop
  • Player Market
  • Order System
  • Others

1. Official Shop

The official shop is a server-admin-managed B2C trading system. Unlike the player market, it is usually used to stabilize server economy, sell core materials, or deliver limited special items. It supports unlimited stock, listing schedules, and products such as commands and potion effects.

Product Types

Type IDNameDescription
COMMANDCommand ExecutionExecutes predefined commands via console or player identity after purchase.
GIVE_ITEMItem DeliveryDirectly generates physical items and puts them in player inventory.
POTION_EFFECTPotion EffectApplies specific potion effects after purchase.
RECYCLE_ITEMRecycle/ExchangeBuys back specific player items at configured prices.
GROUP_BUY_VOUCHERGroup Voucher/Redeem CodeDelivers serials or vouchers, supports group redemption.

2. Player Market

The player market is a player-driven C2C trading system. Players can list items, publish buy orders, and create auction listings to circulate surplus resources. It is a core part of the server's internal circular economy.

(1) Three Dimensions

Player market supports multiple trade styles as combinations of three dimensions (for example: seller stock + fixed price + manual stock = regular listing).

Note

Not every combination is valid. See details below.

DimensionEnum ValuesDescription
Trade SideSELL / BUYSELL: seller provides goods; BUY: buyer publishes demand.
Trade ModeDIRECT / AUCTIONDIRECT: instant fixed-price trade; AUCTION: bidding mode.
Stock SourceMANUAL / SUPPLYMANUAL: manually listed stock; SUPPLY: auto-restock from linked supply chest.

(2) Supported Listing Modes

Listing ModeSideTradeModeSourceModeTypical Scenario
Regular ListingSELLDIRECTMANUALList specific items from inventory until sold out.
Supply ListingSELLDIRECTSUPPLYAutomated shop with stock auto-refilled from linked chest.
AuctionSELLAUCTIONMANUALRare items with time-limited server-wide bidding.
Buy OrderBUYDIRECTMANUALBuyer posts demand; trade completes when sellers provide matching items.

3. Order System

The order system is the logical core of market trading, recording and processing the full flow from "trade initiation" to "item delivery." It supports real-time status tracking and includes refund and cooldown logic to protect both buyer and seller in asynchronous scenarios.

(1) Order States

StateMeaning
PENDINGPending
WAIT_CLAIMWaiting for manual claim
DELIVEREDDelivered
REFUNDEDRefunded
RECYCLEDRecycle completed (recycle-type product)
ACTIVETradable
PAUSEDTrading paused
SOLDSold out
UNLISTEDUnlisted
SUPPLY_EMPTYOut of stock

(2) Trade Fee Fields

FieldMeaning
buyerTotalTotal paid by buyer
sellerReceiveNet received by seller
feeAmountHandling fee (paid by seller)
taxAmountTax amount (paid by seller)

These values are affected by server owner's market_economy configuration (fee and tax rates).

(3) Refund Conditions

Policy is affected by three factors: whether undelivered refunds are enabled, order cooldown period, and refund deadline.

Refund Is Not Unconditional

After order status becomes DELIVERED, refund is usually unavailable. If refund deadline is exceeded, refund fails with refund_expired / "refund expired".

4. Others

(1) Dynamic Pricing

Dynamic pricing is a real-time pricing mechanism based on supply-demand algorithms. The system automatically recalculates and updates baseline unit prices from trade frequency, remaining stock, and traded volume within a time window.

Main entries:

ModuleType / ModeSupportedDriver Logic
Player MarketSell itemsYesDynamic pricing algorithms
Buy orderNot yetFixed price
AuctionNoAuction algorithms
Official ShopSell itemsYesDynamic pricing algorithms
Recycle itemsYesDynamic pricing algorithms
Command / Potion / VoucherNoFixed price

(2) Auctions

Main entry:

Auction is a special trade form based on bidding logic. It fits items with uncertain or extremely scarce value. Seller sets starting price and bid increments, then buyers compete within limited time. The order system locks top bidder funds and transfers ownership automatically at settlement.

(3) Listing Capacity Limits

The system combines three layers (priority high to low):

  1. User-specific override: configured in admin web page
  2. Permission node: webshop.market.limit.<n> (deprecated soon, use web settings instead)
  3. Global default: marketMaxActiveListings