{"id":137035,"date":"2026-06-08T05:21:18","date_gmt":"2026-06-08T02:21:18","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/"},"modified":"2026-06-08T05:21:18","modified_gmt":"2026-06-08T02:21:18","slug":"sellgui","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/","title":{"rendered":"SellGUI"},"content":{"rendered":"<p># SellGUI v3<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"200\" alt=\"2028end\" src=\"https:\/\/github.com\/user-attachments\/assets\/14beab6b-c27b-4777-96fc-c91bbe6e82ae\" \/><\/p>\n<p>A quick announcement: This project was originally By Aoov, but after realizing its potential, I took over updating this plugin. You can support me through donations :3 as that&#8217;s how your donations help me and this project.<\/p>\n<p>SellGUI is a Minecraft selling plugin with a configurable GUI, `\/sellall`, autosell, price setting tools, price evaluation, and support for custom item plugins. Version 3 focuses on cleaner configuration, multiple sell menus, menu-specific item rules, and safer item stacking behavior.<\/p>\n<p>Current branch: `v3.0`<\/p>\n<p>WIKI<\/p>\n<p>Plugin version: `3.0.2`<\/p>\n<p>## What&#8217;s New In v3<\/p>\n<p>&#8211; Added multiple sell menus through the `gui\/sell_menus\/` folder.<br \/>\n&#8211; Each sell menu can live in its own YAML file, for example `default.yml` and `fishing.yml`.<br \/>\n&#8211; Added `\/sellgui <\/p>\n<menu>` to open a specific menu.<br \/>\n&#8211; Added `\/sellgui <player>\n<menu>` so admins can open a specific menu for another player.<br \/>\n&#8211; Added per-menu item filters:<br \/>\n  &#8211; `allowed-items` allows only specific items.<br \/>\n  &#8211; `denied-items` blocks specific items.<br \/>\n  &#8211; `exclusive: true` locks listed items to that menu only.<br \/>\n&#8211; `\/sellall` and autosell now skip items locked to exclusive menus.<br \/>\n&#8211; Split the old root `gui.yml` into a cleaner `gui\/` folder.<br \/>\n&#8211; Added item stack normalization to fix items not stacking after smelting, joining, leaving, or server restart.<br \/>\n&#8211; Bundled `libs\/shopgui-api-3.1.0.jar` so Maven builds work from a fresh clone.<\/p>\n<p>## Requirements<\/p>\n<p>### Required<\/p>\n<p>| Component | Notes |<br \/>\n| &#8212; | &#8212; |<br \/>\n| Java | Java 21 recommended for modern Paper\/Spigot 1.20.6+ servers |<br \/>\n| Server | Paper\/Spigot `1.20.6+`, optimized for `1.21+` |<br \/>\n| Vault | Required for economy support |<br \/>\n| Economy plugin | EssentialsX, CMI, or any Vault-compatible economy plugin |<br \/>\n| NBTAPI | Required dependency in `plugin.yml` |<\/p>\n<p>### Optional<\/p>\n<p>| Plugin | Purpose |<br \/>\n| &#8212; | &#8212; |<br \/>\n| EssentialsX | Use Essentials worth prices |<br \/>\n| ShopGUIPlus | Use ShopGUI+ sell prices |<br \/>\n| MMOItems | Detect and price MMOItems |<br \/>\n| Nexo | Detect and price Nexo items |<br \/>\n| MythicLib | Extra item\/NBT metadata support |<br \/>\n| PlaceholderAPI | Registers `%sellgui_*%` placeholders |<br \/>\n| PacketEvents | Displays item worth lore through packets when enabled |<\/p>\n<p>## Installation<\/p>\n<p>1. Download the SellGUI v3 jar.<br \/>\n2. Place the jar in your server `plugins\/` folder.<br \/>\n3. Make sure Vault, NBTAPI, and an economy plugin are installed.<br \/>\n4. Restart the server so SellGUI can generate its files.<br \/>\n5. Edit files inside `plugins\/SellGUI\/`.<br \/>\n6. Run `\/sellgui reload` or restart the server after editing configuration files.<\/p>\n<p>## Build From Source<\/p>\n<p>&#8220;`bash<br \/>\ngit clone https:\/\/github.com\/NguyenSonhoa\/SellGUI.git<br \/>\ncd SellGUI<br \/>\ngit checkout v3.0<br \/>\nmvn -q -DskipTests package<br \/>\n&#8220;`<\/p>\n<p>Jar output:<\/p>\n<p>&#8220;`text<br \/>\ntarget\/SellGUI-3.0.1.jar<br \/>\n&#8220;`<\/p>\n<p>`libs\/shopgui-api-3.1.0.jar` is committed so Maven can build immediately after cloning.<\/p>\n<p>## Commands<\/p>\n<p>Aliases for `\/sellgui`: `\/sg`, `\/sell`<\/p>\n<p>| Command | Description | Permission |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `\/sellgui` | Open the default sell menu | `sellgui.use` |<br \/>\n| `\/sellgui <\/p>\n<menu>` | Open a specific sell menu, for example `\/sellgui fishing` | `sellgui.use` and the menu permission |<br \/>\n| `\/sellgui <player>` | Open the default menu for another player | `sellgui.others` |<br \/>\n| `\/sellgui <player>\n<menu>` | Open a specific menu for another player | `sellgui.others` |<br \/>\n| `\/sellgui help` | Show in-game help | `sellgui.use` |<br \/>\n| `\/sellgui reload` | Reload configs and GUIs | `sellgui.reload` |<br \/>\n| `\/sellgui evaluate` | Open the Price Evaluation GUI | `sellgui.evaluate` |<br \/>\n| `\/sellgui autosell` | Open the Autosell Settings GUI | `sellgui.autosell` |<br \/>\n| `\/autosell` | Open the Autosell Settings GUI | `sellgui.autosell` |<br \/>\n| `\/sellgui setprice <amount>` | Set a fixed price for the item in hand | `sellgui.setprice` |<br \/>\n| `\/sellgui setrange <min> <max>` | Set a random price range for the item in hand | `sellgui.setrange` |<br \/>\n| `\/sellguiprice` | Open the Price Setter GUI | `sellgui.setprice` |<br \/>\n| `\/sellguiprice <price>` | Enter a price for the item in the open Price Setter GUI | `sellgui.setprice` |<br \/>\n| `\/sellall` | Preview selling all valid inventory items | `sellgui.sellall` |<br \/>\n| `\/sellall confirm` | Confirm `\/sellall` | `sellgui.sellall` |<\/p>\n<p>## Permissions<\/p>\n<p>| Permission | Default | Description |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `sellgui.*` | plugin manager\/op | Access to all declared SellGUI permissions |<br \/>\n| `sellgui.use` | true | Use the basic SellGUI command |<br \/>\n| `sellgui.admin` | op | General admin permission |<br \/>\n| `sellgui.others` | manual grant | Open SellGUI for other players |<br \/>\n| `sellgui.reload` | op | Reload the plugin |<br \/>\n| `sellgui.setprice` | op | Use the Price Setter and fixed price commands |<br \/>\n| `sellgui.setrange` | op | Set random price ranges |<br \/>\n| `sellgui.evaluate` | op | Use the Price Evaluation GUI |<br \/>\n| `sellgui.sellall` | true | Use `\/sellall` |<br \/>\n| `sellgui.autosell` | true | Open the autosell GUI |<br \/>\n| `sellgui.menu.*` | true | Access all configured menus declared in `plugin.yml` |<br \/>\n| `sellgui.menu.default` | true | Open the default menu |<br \/>\n| `sellgui.menu.fishing` | true | Open the example fishing menu |<br \/>\n| `sellgui.bonus.<number>` | false | Adds a sell bonus, depending on the pricing path |<br \/>\n| `sellgui.multiplier.<number>` | false | Multiplies sell prices |<\/p>\n<p>Examples:<\/p>\n<p>&#8220;`text<br \/>\nsellgui.multiplier.2.0<br \/>\nsellgui.bonus.30<br \/>\nsellgui.menu.fishing<br \/>\n&#8220;`<\/p>\n<p>When adding a new menu, give it its own permission in the menu file, for example `sellgui.menu.mining`, then grant that permission to the ranks that should use it.<\/p>\n<p>## v3 Configuration Layout<\/p>\n<p>After the first server start, SellGUI creates files under `plugins\/SellGUI\/`.<\/p>\n<p>&#8220;`text<br \/>\nplugins\/SellGUI\/<br \/>\n  config.yml<br \/>\n  itemprices.yml<br \/>\n  mmoitems.yml<br \/>\n  nexo.yml<br \/>\n  customitems.yml<br \/>\n  custommenuitems.yml<br \/>\n  random-prices.yml<br \/>\n  messages.yml<br \/>\n  sounds.yml<br \/>\n  autosell_data.yml<br \/>\n  gui\/<br \/>\n    sell_menus\/<br \/>\n      default.yml<br \/>\n      fishing.yml<br \/>\n    price_setter.yml<br \/>\n    price_evaluation.yml<br \/>\n    autosell_settings.yml<br \/>\n&#8220;`<\/p>\n<p>The old root `gui.yml` has been removed in v3. GUI layouts and sell menus now live in the `gui\/` folder.<\/p>\n<p>SellGUI loads and merges all `.yml` and `.yaml` files inside `gui\/`, including files in subfolders. The recommended layout is one sell menu per file under `gui\/sell_menus\/`.<\/p>\n<p>## Multi-Menu System<\/p>\n<p>Default menu:<\/p>\n<p>&#8220;`text<br \/>\nplugins\/SellGUI\/gui\/sell_menus\/default.yml<br \/>\n&#8220;`<\/p>\n<p>Example fishing menu:<\/p>\n<p>&#8220;`text<br \/>\nplugins\/SellGUI\/gui\/sell_menus\/fishing.yml<br \/>\n&#8220;`<\/p>\n<p>Example `mining` menu:<\/p>\n<p>&#8220;`yml<br \/>\nsell_menus:<br \/>\n  mining:<br \/>\n    name: &#8220;Mining&#8221;<br \/>\n    permission: &#8220;sellgui.menu.mining&#8221;<br \/>\n    title: &#8220;&#038;8\/sellgui > Mining&#8221;<br \/>\n    size: 36<br \/>\n    item-filter:<br \/>\n      allowed-items:<br \/>\n        &#8211; &#8220;IRON_INGOT&#8221;<br \/>\n        &#8211; &#8220;GOLD_INGOT&#8221;<br \/>\n        &#8211; &#8220;DIAMOND&#8221;<br \/>\n        &#8211; &#8220;EMERALD&#8221;<br \/>\n      denied-items: []<br \/>\n      exclusive: true<br \/>\n    positions:<br \/>\n      sell_button: [31]<br \/>\n      confirm_button: [31]<br \/>\n      filler_slots: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 17, 18, 26, 27, 28, 29, 30, 32, 33, 34, 35]<br \/>\n      item_slots: [10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23, 24, 25]<br \/>\n    items:<br \/>\n      sell_button:<br \/>\n        material: &#8220;EMERALD&#8221;<br \/>\n        custom-model-data: 0<br \/>\n        name: &#8220;&#038;a&#038;lCalculate Mining Sale&#8221;<br \/>\n        lore:<br \/>\n          &#8211; &#8220;&#038;7Only mining items can be sold here.&#8221;<br \/>\n          &#8211; &#8220;&#038;eTotal Value: &#038;a$0.00&#8221;<br \/>\n        glow: true<br \/>\n      confirm_button:<br \/>\n        material: &#8220;GREEN_CONCRETE&#8221;<br \/>\n        custom-model-data: 0<br \/>\n        name: &#8220;&#038;a&#038;lConfirm Mining Sale&#8221;<br \/>\n        lore:<br \/>\n          &#8211; &#8220;&#038;fTotal: &#038;e$%total%&#8221;<br \/>\n        glow: true<br \/>\n      filler:<br \/>\n        material: &#8220;GRAY_STAINED_GLASS_PANE&#8221;<br \/>\n        custom-model-data: 0<br \/>\n        name: &#8221; &#8221;<br \/>\n        lore: []<br \/>\n      no_items:<br \/>\n        material: &#8220;BARRIER&#8221;<br \/>\n        custom-model-data: 0<br \/>\n        name: &#8220;&#038;c&#038;lNo Items To Sell&#8221;<br \/>\n        lore:<br \/>\n          &#8211; &#8220;&#038;7Add mining items to this menu.&#8221;<br \/>\n    item_total_format: &#8220;&#038;7%amount%x &#038;f%item% &#038;8= &#038;e$%total%&#8221;<br \/>\n    evaluation_required_format: &#8220;&#038;7%amount%x &#038;f%item% &#038;cNeeds Evaluation&#8221;<br \/>\n&#8220;`<\/p>\n<p>Open it with:<\/p>\n<p>&#8220;`text<br \/>\n\/sellgui mining<br \/>\n&#8220;`<\/p>\n<p>## Item Filters And Exclusive Items<\/p>\n<p>Each menu can define:<\/p>\n<p>&#8220;`yml<br \/>\nitem-filter:<br \/>\n  allowed-items: []<br \/>\n  denied-items: []<br \/>\n  exclusive: false<br \/>\n&#8220;`<\/p>\n<p>| Key | Description |<br \/>\n| &#8212; | &#8212; |<br \/>\n| `allowed-items` | If empty, the menu accepts any valid item except denied items and items locked to another exclusive menu. If populated, the menu only accepts listed items. |<br \/>\n| `denied-items` | Blocks specific items in that menu. |<br \/>\n| `exclusive` | When `true`, listed allowed items can only be sold in this menu. |<\/p>\n<p>With `exclusive: true`, those items are:<\/p>\n<p>&#8211; Blocked from other sell menus.<br \/>\n&#8211; Skipped by `\/sellall`.<br \/>\n&#8211; Skipped by autosell.<\/p>\n<p>## Item Identifier Format<\/p>\n<p>Vanilla items can be written by material name:<\/p>\n<p>&#8220;`yml<br \/>\nallowed-items:<br \/>\n  &#8211; &#8220;COD&#8221;<br \/>\n  &#8211; &#8220;SALMON&#8221;<br \/>\n&#8220;`<\/p>\n<p>Full identifiers are also supported:<\/p>\n<p>&#8220;`yml<br \/>\nallowed-items:<br \/>\n  &#8211; &#8220;VANILLA:COD&#8221;<br \/>\n  &#8211; &#8220;MMOITEMS:SWORD.EXCALIBUR&#8221;<br \/>\n  &#8211; &#8220;NEXO:CUSTOM_FISH&#8221;<br \/>\n&#8220;`<\/p>\n<p>| Item type | Format |<br \/>\n| &#8212; | &#8212; |<br \/>\n| Vanilla | `VANILLA:MATERIAL` or just `MATERIAL` |<br \/>\n| MMOItems | `MMOITEMS:TYPE.ID` |<br \/>\n| Nexo | `NEXO:ITEM_ID` |<\/p>\n<p>## Price System<\/p>\n<p>SellGUI can read prices from multiple sources:<\/p>\n<p>&#8211; `itemprices.yml` for vanilla items.<br \/>\n&#8211; `mmoitems.yml` for MMOItems.<br \/>\n&#8211; `nexo.yml` for Nexo items.<br \/>\n&#8211; Essentials worth when `use-essentials-price: true`.<br \/>\n&#8211; ShopGUI+ when `use-shopguiplus-price: true`.<br \/>\n&#8211; NBT\/PDC prices when `prices.nbt-pricing: true`.<br \/>\n&#8211; Random\/evaluation prices from `random-prices.yml`.<\/p>\n<p>Main price config:<\/p>\n<p>&#8220;`yml<br \/>\nprices:<br \/>\n  nbt-pricing: true<br \/>\n  calculation-method: &#8220;auto&#8221;<br \/>\n  default-price: 0.0<br \/>\n  multipliers:<br \/>\n    enabled: true<br \/>\n    permission-based: true<br \/>\n    default-multiplier: 1.0<br \/>\n    max-multiplier: 5.0<br \/>\n  random-pricing:<br \/>\n    enabled: false<br \/>\n    variation-percent: 10.0<br \/>\n&#8220;`<\/p>\n<p>`prices.calculation-method` values:<\/p>\n<p>| Value | Description |<br \/>\n| &#8212; | &#8212; |<br \/>\n| `auto` | Automatically choose the best available price source |<br \/>\n| `config` | Use SellGUI config prices only |<br \/>\n| `essentials` | Use Essentials worth only |<br \/>\n| `nbt` | Use NBT price only |<br \/>\n| `shopguiplus` | Use ShopGUI+ only |<\/p>\n<p>## Price Setter<\/p>\n<p>Open the GUI:<\/p>\n<p>&#8220;`text<br \/>\n\/sellguiprice<br \/>\n&#8220;`<\/p>\n<p>Workflow:<\/p>\n<p>1. Place an item in the center slot.<br \/>\n2. Use the GUI or chat input to enter a price.<br \/>\n3. Click save to write the price.<\/p>\n<p>Quick command:<\/p>\n<p>&#8220;`text<br \/>\n\/sellgui setprice 10<br \/>\n&#8220;`<\/p>\n<p>In most price-setting flows, price `0` can be used to remove the saved price.<\/p>\n<p>## Price Evaluation<\/p>\n<p>Open the GUI:<\/p>\n<p>&#8220;`text<br \/>\n\/sellgui evaluate<br \/>\n&#8220;`<\/p>\n<p>Use this when items must be evaluated before they can be sold. Related files:<\/p>\n<p>&#8220;`text<br \/>\nplugins\/SellGUI\/gui\/price_evaluation.yml<br \/>\nplugins\/SellGUI\/random-prices.yml<br \/>\n&#8220;`<\/p>\n<p>If `general.allow-player-evaluation-stack: false`, players cannot evaluate a whole stack at once.<\/p>\n<p>## Autosell<\/p>\n<p>Open the GUI:<\/p>\n<p>&#8220;`text<br \/>\n\/autosell<br \/>\n\/sellgui autosell<br \/>\n&#8220;`<\/p>\n<p>Autosell lets players toggle automatic selling for priced items. Player data is stored in:<\/p>\n<p>&#8220;`text<br \/>\nplugins\/SellGUI\/autosell_data.yml<br \/>\n&#8220;`<\/p>\n<p>In v3, autosell skips items locked to exclusive sell menus so category-specific items are not sold accidentally.<\/p>\n<p>## SellAll<\/p>\n<p>Commands:<\/p>\n<p>&#8220;`text<br \/>\n\/sellall<br \/>\n\/sellall confirm<br \/>\n&#8220;`<\/p>\n<p>`\/sellall` calculates a preview. The player then confirms with `\/sellall confirm`.<\/p>\n<p>In v3, `\/sellall` skips:<\/p>\n<p>&#8211; Items with no price.<br \/>\n&#8211; Enchanted items when `sell-all-command-sell-enchanted: false`.<br \/>\n&#8211; Items that require evaluation but have not been evaluated.<br \/>\n&#8211; Items locked to an exclusive sell menu.<\/p>\n<p>## Item Stack Normalization<\/p>\n<p>V3 adds stack normalization to fix vanilla items that stop stacking because of temporary SellGUI metadata or lore.<\/p>\n<p>Config:<\/p>\n<p>&#8220;`yml<br \/>\nstacking:<br \/>\n  enabled: true<br \/>\n  normalize-on-join: true<br \/>\n  normalize-on-quit: true<br \/>\n  normalize-on-plugin-disable: true<br \/>\n  normalize-smelt-results: true<br \/>\n  normalize-after-furnace-extract: true<br \/>\n&#8220;`<\/p>\n<p>This removes temporary SellGUI metadata such as `current_price`, `evaluated`, and `Evaluated: &#8230;` lore when appropriate, then merges similar stacks in the player&#8217;s inventory.<\/p>\n<p>It does not intentionally remove custom NBT or metadata from other plugins, so custom items with real metadata stay intact.<\/p>\n<p>## PlaceholderAPI<\/p>\n<p>When PlaceholderAPI is installed, SellGUI registers the `sellgui` identifier and processes PlaceholderAPI placeholders in supported GUI text.<\/p>\n<p>### SellGUI PlaceholderAPI Placeholders<\/p>\n<p>| Placeholder | Description |<br \/>\n| &#8212; | &#8212; |<br \/>\n| `%sellgui_pricehand%` | Price of the item in the player&#8217;s main hand |<br \/>\n| `%sellgui_pricehandfull%` | Item name and price of the item in hand |<\/p>\n<p>### Built-In Placeholders<\/p>\n<p>These placeholders can be used in SellGUI text\/config values. If PlaceholderAPI is installed, SellGUI lets PlaceholderAPI process placeholders first. If PlaceholderAPI is missing or fails, SellGUI falls back to these built-in placeholders.<\/p>\n<p>| Placeholder | Description |<br \/>\n| &#8212; | &#8212; |<br \/>\n| `%player%` | Player name |<br \/>\n| `%player_name%` | Player name |<br \/>\n| `%player_displayname%` | Player display name |<br \/>\n| `%player_uuid%` | Player UUID |<br \/>\n| `%player_world%` | Player world name |<br \/>\n| `%player_x%` | Player block X position |<br \/>\n| `%player_y%` | Player block Y position |<br \/>\n| `%player_z%` | Player block Z position |<br \/>\n| `%player_health%` | Current player health |<br \/>\n| `%player_max_health%` | Max player health |<br \/>\n| `%player_food%` | Player food level |<br \/>\n| `%player_level%` | Player XP level |<br \/>\n| `%player_exp%` | Player XP progress percent |<br \/>\n| `%vault_eco_balance%` | Player Vault economy balance |<br \/>\n| `%player_balance%` | Player Vault economy balance |<br \/>\n| `%server_name%` | Server name |<br \/>\n| `%server_version%` | Full server version |<br \/>\n| `%server_bukkit_version%` | Bukkit version |<br \/>\n| `%server_online%` | Online player count |<br \/>\n| `%server_max_players%` | Max player count |<br \/>\n| `%sellgui_version%` | SellGUI plugin version |<br \/>\n| `%sellgui_author%` | SellGUI plugin authors |<br \/>\n| `%time%` | Current server local time |<br \/>\n| `%date%` | Current server local date |<br \/>\n| `%timestamp%` | Current server local date and time |<\/p>\n<p>## Worth Lore Through PacketEvents<\/p>\n<p>Enable in `config.yml`:<\/p>\n<p>&#8220;`yml<br \/>\ngeneral:<br \/>\n  add-worth-lore: true<br \/>\n&#8220;`<\/p>\n<p>PacketEvents is required. SellGUI displays worth lore through packets so the real inventory item is not constantly rewritten with lore.<\/p>\n<p>GUI titles where worth lore should not be shown:<\/p>\n<p>&#8220;`yml<br \/>\ngeneral:<br \/>\n  worth-lore-blacklist-gui-titles:<br \/>\n    &#8211; &#8220;ah&#8221;<br \/>\n    &#8211; &#8220;Auction House&#8221;<br \/>\n    &#8211; &#8220;My Chest&#8221;<br \/>\n&#8220;`<\/p>\n<p>## Migration From Older Versions<\/p>\n<p>If you are upgrading from a pre-v3 build:<\/p>\n<p>1. Back up `plugins\/SellGUI\/`.<br \/>\n2. Stop the server.<br \/>\n3. Install the v3 jar.<br \/>\n4. Start the server to generate the new `gui\/` folder.<br \/>\n5. Move old GUI layout\/menu settings from `gui.yml` into files under `gui\/`.<br \/>\n6. Put each sell menu in its own file under `gui\/sell_menus\/<\/p>\n<menu>.yml`.<br \/>\n7. Run `\/sellgui reload`.<\/p>\n<p>Important changes:<\/p>\n<p>| Old | New |<br \/>\n| &#8212; | &#8212; |<br \/>\n| Root `gui.yml` | `gui\/` folder |<br \/>\n| One sell GUI | Multiple sell menus under `gui\/sell_menus\/` |<br \/>\n| Items sold anywhere | Items can be locked to one menu with `exclusive: true` |<\/p>\n<p>## Troubleshooting<\/p>\n<p>### `\/sellgui fishing` says the player has no permission<\/p>\n<p>Make sure the player has the menu permission:<\/p>\n<p>&#8220;`text<br \/>\nsellgui.menu.fishing<br \/>\n&#8220;`<\/p>\n<p>### An item cannot be sold in the default menu<\/p>\n<p>Check whether the item belongs to another exclusive menu. For example, fish in `fishing.yml` has `exclusive: true`, so fish can only be sold through `\/sellgui fishing`.<\/p>\n<p>### `\/sellall` does not sell some items<\/p>\n<p>Check:<\/p>\n<p>&#8211; The item has a price in `itemprices.yml`, `mmoitems.yml`, `nexo.yml`, Essentials, or ShopGUI+.<br \/>\n&#8211; The item is enchanted while `sell-all-command-sell-enchanted: false`.<br \/>\n&#8211; The item requires evaluation.<br \/>\n&#8211; The item is locked to an exclusive menu.<\/p>\n<p>### Maven build fails because of ShopGUI API<\/p>\n<p>Make sure this file exists:<\/p>\n<p>&#8220;`text<br \/>\nlibs\/shopgui-api-3.1.0.jar<br \/>\n&#8220;`<\/p>\n<p>Then build again:<\/p>\n<p>&#8220;`bash<br \/>\nmvn -q -DskipTests package<br \/>\n&#8220;`<\/p>\n<p>## Important Files<\/p>\n<p>| File | Description |<br \/>\n| &#8212; | &#8212; |<br \/>\n| `src\/main\/resources\/config.yml` | Default core config |<br \/>\n| `src\/main\/resources\/gui\/sell_menus\/default.yml` | Default sell menu |<br \/>\n| `src\/main\/resources\/gui\/sell_menus\/fishing.yml` | Example fishing sell menu |<br \/>\n| `src\/main\/resources\/gui\/price_setter.yml` | Price Setter GUI layout |<br \/>\n| `src\/main\/resources\/gui\/price_evaluation.yml` | Price Evaluation GUI layout |<br \/>\n| `src\/main\/resources\/gui\/autosell_settings.yml` | Autosell Settings GUI layout |<br \/>\n| `src\/main\/resources\/itemprices.yml` | Vanilla item prices |<br \/>\n| `src\/main\/resources\/mmoitems.yml` | MMOItems prices |<br \/>\n| `src\/main\/resources\/nexo.yml` | Nexo item prices |<br \/>\n| `src\/main\/resources\/random-prices.yml` | Random\/evaluation prices |<br \/>\n| `CHANGELOG.md` | v3 changelog |<\/p>\n<p>## Changelog<\/p>\n<p>See [CHANGELOG.md](CHANGELOG.md).<\/p>\n<p>## Support<\/p>\n<p>When reporting issues, include:<\/p>\n<p>&#8211; Server version.<br \/>\n&#8211; SellGUI version.<br \/>\n&#8211; Related economy\/item plugins.<br \/>\n&#8211; Related config or menu files.<br \/>\n&#8211; Console error logs.<br \/>\n&#8211; Steps to reproduce the issue.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A selling system for MMORPGS, with no need for shops<\/p>\n","protected":false},"featured_media":137036,"template":"","meta":{"_minecraft_slug":"sellgui","_minecraft_project_id":"RmheYDS5","_minecraft_author":"NguyenSonhoa","_minecraft_license":"BSD-3-Clause","_minecraft_downloads":5843,"_minecraft_follows":17,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"sellgui.zip","_minecraft_size_bytes":9218622,"_minecraft_version_count":19,"_minecraft_updated_at":"2026-05-16T02:59:58.738741Z","_minecraft_date_created":"2025-07-27T23:40:28.272793Z","_minecraft_date_modified":"2026-05-13T09:15:35.556274Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/sellgui","_minecraft_icon_attachment_id":137036,"_minecraft_imported_at":"2026-06-08T02:21:20+00:00","_minecraft_import_hash":"4d9d0ef057005b94ffc065e56e14e09e","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[87,124,844,89,127,128,129,92],"mod_loader":[130,132,133,134],"minecraft_version":[59,36,60,93,94,101,102,62,37,40,41,73,74,38,78,79,80,81,82,83,167,163],"class_list":["post-137035","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-adventure","mod_category-bukkit","mod_category-economy","mod_category-game-mechanics","mod_category-paper","mod_category-purpur","mod_category-spigot","mod_category-utility","mod_loader-bukkit","mod_loader-paper","mod_loader-purpur","mod_loader-spigot","minecraft_version-1-20","minecraft_version-1-20-1","minecraft_version-1-20-2","minecraft_version-1-20-3","minecraft_version-1-20-4","minecraft_version-1-20-5","minecraft_version-1-20-6","minecraft_version-1-21","minecraft_version-1-21-1","minecraft_version-1-21-10","minecraft_version-1-21-11","minecraft_version-1-21-2","minecraft_version-1-21-3","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8","minecraft_version-1-21-9","minecraft_version-26-1","minecraft_version-26-1-1","minecraft_version-26-1-2"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>SellGUI - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SellGUI - Minecraft\" \/>\n<meta property=\"og:description\" content=\"A selling system for MMORPGS, with no need for shops\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta property=\"og:image\" content=\"https:\/\/github.com\/user-attachments\/assets\/14beab6b-c27b-4777-96fc-c91bbe6e82ae\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/\",\"name\":\"SellGUI - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/sellgui-icon-cbbd95c1bfd7f90df3a6be1338b4d1318707cb36.png\",\"datePublished\":\"2026-06-08T02:21:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/sellgui-icon-cbbd95c1bfd7f90df3a6be1338b4d1318707cb36.png\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/sellgui-icon-cbbd95c1bfd7f90df3a6be1338b4d1318707cb36.png\",\"width\":96,\"height\":96},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sellgui\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"SellGUI\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SellGUI - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/","og_locale":"en_US","og_type":"article","og_title":"SellGUI - Minecraft","og_description":"A selling system for MMORPGS, with no need for shops","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/","og_site_name":"Minecraft","og_image":[{"url":"https:\/\/github.com\/user-attachments\/assets\/14beab6b-c27b-4777-96fc-c91bbe6e82ae","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/","name":"SellGUI - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/sellgui-icon-cbbd95c1bfd7f90df3a6be1338b4d1318707cb36.png","datePublished":"2026-06-08T02:21:18+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/sellgui-icon-cbbd95c1bfd7f90df3a6be1338b4d1318707cb36.png","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/sellgui-icon-cbbd95c1bfd7f90df3a6be1338b4d1318707cb36.png","width":96,"height":96},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/sellgui\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"SellGUI"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/137035","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/137036"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=137035"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=137035"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=137035"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=137035"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}