CommunityMarket

A professional, production-ready GUI-only marketplace plugin for Minecraft Paper 1.21+.

91

CommunityMarket

A professional, production-ready GUI-only marketplace plugin for Minecraft Paper 1.21+.

Players can create fixed-price listings and auctions, browse, buy, bid, claim items, and withdraw earnings — all through intuitive GUIs. No complex commands to learn!

✨ Features

🛒 Fixed-Price Market

- Create listings with custom prices and durations - Browse paginated listings with sorting - Safe atomic purchases to prevent double-buying - Configurable taxes on sales

🔨 Auction System

- Start auctions with minimum bid and optional buyout price - Anti-snipe protection extends auction when bids arrive near the end - Bid history and automatic outbid notifications - Safe handling of auction endings and payouts

📦 Claim Storage

- Items from expired listings go to claim storage - Won auction items are safely delivered - Handles full inventories gracefully

💰 Earnings Management

- Pending earnings from sales accumulate - Withdraw all earnings at once - Complete transaction history

🔐 Admin Features (GUI-based)

- View all listings and auctions - Remove any listing or cancel auctions - Force-end auctions - Reload configuration in-game

🎮 Intuitive GUI Flow

The creation flow for listings and auctions: 1. Confirm - Central hub for all actions 2. Confirm - Click an item from your inventory 3. Confirm - Choose how many to sell (for stackable items) 4. Confirm - Set price and duration with easy click-to-adjust controls 5. Confirm - Review and create your listing/auction

📋 Requirements

| Requirement | Version | |-------------|---------| | OR | Paper 1.21+ (or Purpur, Folia-compatible forks) | | OR | Java 21+ | | OR | Vault + economy plugin OR EssentialsX |

Economy Support

CommunityMarket supports two economy configurations:

1. Vault + Economy Plugin (Recommended) - Install Vault + Economy Plugin - Install an economy plugin: %%MD1%%, CMI, or any Vault-compatible economy

2. EssentialsX Standalone (Fallback) - Install EssentialsX Standalone with economy enabled - CommunityMarket will use EssentialsX directly if Vault is not present

📥 Installation

1. Download the latest `CommunityMarket-x.x.x.jar` from Modrinth 2. Place it in your server's `plugins/` folder 3. Ensure you have an economy system installed (see above) 4. Start or restart your server 5. Edit `plugins/CommunityMarket/config.yml` as needed 6. Use `/market` to open the marketplace!

🎮 Commands

| Command | Alias | Description | Permission | |---------|-------|-------------|------------| | `/market` | `/cmarket` | Opens the main market GUI | `communitymarket.use` |

That's it! Everything else is done through GUIs.

🔒 Permissions

| Permission | Description | Default | |------------|-------------|---------| | `communitymarket.*` | All permissions | op | | `communitymarket.use` | Access the market GUI | everyone | | `communitymarket.sell` | Create fixed-price listings | everyone | | `communitymarket.auction` | Create auctions | everyone | | `communitymarket.buy` | Purchase from the market | everyone | | `communitymarket.bid` | Bid on auctions | everyone | | `communitymarket.claim` | Claim items from storage | everyone | | `communitymarket.withdraw` | Withdraw earnings | everyone | | `communitymarket.admin` | Access admin functions | op | | `communitymarket.admin.viewall` | View all listings/auctions | op | | `communitymarket.admin.remove` | Remove any listing/auction | op | | `communitymarket.admin.reload` | Reload configuration | op |

⚙️ Configuration

config.yml Highlights

```yaml

Language setting (available: en_US, pt_PT)

language: en_US

Database: sqlite (default) or mysql

database: type: sqlite

Economy settings

economy: currency-format: "$#,##0.00" taxes: market-tax: 5.0 # Tax on fixed-price sales auction-tax: 7.5 # Tax on auction sales

Fixed-Price Market

market: max-listings-per-player: 20 default-duration-hours: 168 # 7 days min-price: 1.0 max-price: 1000000000.0

Auctions

auction: max-auctions-per-player: 10 default-duration-hours: 24 anti-snipe: enabled: true trigger-seconds: 30 extension-seconds: 30

GUI Settings

gui: show-help-button: true # Toggle help button visibility sounds: click: UI_BUTTON_CLICK success: ENTITY_PLAYER_LEVELUP error: ENTITY_VILLAGER_NO ```

Available Languages

- `en_US` - English (default) - `pt_PT` - Portuguese

Language files are located in `plugins/CommunityMarket/lang/` and can be customized.

🔧 Troubleshooting

"No compatible economy provider found!"

This error appears when CommunityMarket cannot find an economy system.

Install Vault + an economy plugin: 1. Install Vault + an economy plugin: - Download Install Vault + an economy plugin: - Download %%MD1%% or another economy plugin - Restart your server

2. Using EssentialsX without Vault: - Make sure EssentialsX is installed and enabled - Check that `economy` is not disabled in EssentialsX's `config.yml`

Items stuck in claim storage

If a player's inventory was full when they purchased an item or won an auction, the item goes to their claim storage. They can retrieve it from the main menu → "Claim Items".

Auctions not ending

Auctions are checked periodically (every 5 seconds by default). If auctions seem stuck: - Check server console for errors - Verify the database is working properly - Try `/market admin` → View Auctions to see auction status

Database issues

By default, CommunityMarket uses SQLite (no setup required). For larger servers, MySQL is recommended:

```yaml database: type: mysql mysql: host: localhost port: 3306 database: communitymarket username: your_user password: your_password ```

📜 License

This project is licensed under the MIT License - see the LICENSE) file for details.

ADS