minecraft-server/docs/RESEARCH-SHOP-AH-HYBRID.md

5.1 KiB
Raw Permalink Blame History

Research: Shop + Auction House Hybrid Plugins

Date: 2026-05-07 Question: Replace EZShop + AuctionHouse (two plugins) with one unified plugin? Goal: Polished UX, minimal command surface, ideally AGPL/GPL-compatible.


Candidates

1. ExcellentShop (NightExpress) — top contender

  • Component count: Single jar, modular internally (Virtual Shop / Chest Shop / Auction House — each toggleable in config).
  • License: GPL-3.0 (open source, AGPL-compatible upstream — sources at https://github.com/nulli0n/ExcellentShop-spigot). Sold as paid binary on SpigotMC/BuiltByBit (~$1520) but source is free and self-buildable.
  • Last release: Active — repo pushed 2026-04-27, v4.19.x line, MC 1.21.8+ Java 21.
  • Config: Split per module (virtual-shop/, chest-shop/, auction/ config trees) but lives under one plugin folder.
  • GUI: Separate per module (no fused mega-GUI), but shared theme/skin.
  • Vault dep: No — uses CoinsEngine, ExcellentEconomy, PlayerPoints, BeastTokens. Vault works via bridge.
  • Commands: /vshop, /cshop, /ah (separate namespaces) + /sell, /sellall, /sellhand. Aliases configurable.
  • Notes: Requires NightCore framework jar. Same dev as CoinsEngine — entire NightExpress stack is GPL-3.0.

2. EconomyShopGUI

  • Component count: Single jar. Free tier covers admin GUI shop + sellall; player shops + auction house are EconomyShopGUI Premium only (paid).
  • License: Closed source (no public repo). Free version actively maintained, v6.16.x, MC 1.21.11.
  • Vault dep: Yes (Vault, PlayerPoints, GemsEconomy).
  • GUI: Unified theme, single command tree under /shop.
  • Verdict: Free version doesn't include AH — defeats the unification purpose unless paying for Premium.

3. CMI (Zrips)

  • Component count: Single mega-plugin (Essentials replacement).
  • License: Closed source, paid €15 lifetime.
  • Shop/AH: No built-in shop or auction house. Has economy, /sellhand, cheques only. Not a candidate.

4. UltimateShop / UltimateShopGUI (BuiltByBit)

  • Component count: Single jar bundling shop + AH + custom economy.
  • License: Closed-source paid (BuiltByBit only).
  • Verdict: Reduces command surface but locks you into a paywalled binary with unclear support lifecycle. Skip on principle (racked.ru philosophy: pragmatic, but FOSS-leaning).

5. AxAuctions / AxShop (Artillex-Studios)

  • Component count: Two separate paid plugins from same vendor; consistent UI theme but no unification.
  • License: Closed-source paid. No advantage over current EZShop+AuctionHouse split.

6. ShopGUIPlus + AuctionGUIPlus (brcdev)

  • Component count: Two paid plugins from same vendor. Industry standard but expensive (~$30 combined), Vault-locked, closed-source.
  • Verdict: Same problem as current setup — two configs, two GUIs, two updates.

7. NightExpress modular suite (CoinsEngine + ExcellentShop)

  • The "modular suite" concept (CoinsEngine + ItemStores + AuctionStation) doesn't exist as named — ExcellentShop already is the suite. CoinsEngine handles currency, ExcellentShop handles shop+chest+AH. Two GPL jars total.

8. kiranhart AuctionHouse

  • AH only (no admin shop). Single jar, no LICENSE file in repo (effectively closed source despite mirror on GitHub). Active. Not a unified solution.

Verdict: Unified vs Split

Unified wins for racked.ru — but only if the unified plugin is good. Two separate plugins means:

  • Two config dialects to maintain
  • Mismatched GUI themes (jarring for the polished feel)
  • Doubled update cadence and breakage surface
  • More commands in /help for new players

A single well-designed plugin (ExcellentShop) gives consistent skin, one permission tree prefix, one update path, one bug-report destination. The trade-off — slightly larger jar, less "best of breed" per module — is worth it for a small server prioritising polish.

The catch: ExcellentShop's modules still expose separate top-level commands (/vshop, /cshop, /ah). Command-surface savings come from aliasing (/shop/vshop, hide the rest) and disabling unused modules.


Recommendation

Migrate to ExcellentShop + CoinsEngine (or keep Vault if EssentialsX economy is in use).

Reasoning:

  1. GPL-3.0 — aligns with racked.ru's FOSS-leaning, AGPL-compatible philosophy. Source self-buildable, free of paywalled-binary risk.
  2. Single jar, modular internally — disable Chest Shop if EZShop's chest-shop UX isn't wanted; keep Virtual Shop (admin) + Auction House.
  3. Active maintenance (push 2026-04-27, same dev as CoinsEngine — won't go dark).
  4. Consistent GUI theme across shop and AH = the "polished feel" the operator wants.
  5. Replaces both EZShop and AuctionHouse in one move, plus offers chest shops as a future bonus.

Don't pick: UltimateShop/AxAuctions (closed paid), CMI (no shop/AH), EconomyShopGUI free tier (no AH).

Action item: Pilot ExcellentShop on staging, alias /shop/vshop and /market/ah, disable Chest Shop module unless needed. Verify GPL build pipeline (mvn package on the GH source) so racked.ru never ships a paywalled binary.