From 64c29377c4ee42d1afad2e8409bd484395422f28 Mon Sep 17 00:00:00 2001 From: Kam Date: Sat, 24 Jan 2026 04:24:26 -0500 Subject: [PATCH] Vault auto to True --- 1.11_Market_Update.md | 67 ++++++++++++++----- .../java/noppes/npcs/config/ConfigMarket.java | 2 +- 2 files changed, 53 insertions(+), 16 deletions(-) diff --git a/1.11_Market_Update.md b/1.11_Market_Update.md index e512e7aa0..e528e721b 100644 --- a/1.11_Market_Update.md +++ b/1.11_Market_Update.md @@ -391,6 +391,7 @@ constants/ controllers/ AuctionController.java ✅ (with threading, indices, Vault support) + AuctionConfigSync.java ✅ (server-side config sync utility) controllers/data/ AuctionListing.java ✅ @@ -428,10 +429,16 @@ client/gui/util/ GuiAuctionNavButton.java ✅ network/packets/player/ - AuctionDataPacket.java ✅ AuctionActionPacket.java ✅ ``` +### New Commands + +``` +command/ + AuctionCommand.java ✅ /auction command with list, view, open subcommands +``` + ### Files Modified ``` @@ -466,12 +473,12 @@ public static long MaxBalance = Long.MAX_VALUE; // Balance cap // Auction (Market.Auction) // ========================================= public static boolean AuctionEnabled = true; -public static int AuctionDurationHours = 48; // Auction length +public static int AuctionDurationHours = 24; // Auction length (hours) public static long ListingFee = 10; // Fee to create listing public static double SalesTaxPercent = 0.05; // 5% tax on sales -public static int DefaultMaxListings = 10; // Per player +public static int DefaultMaxListings = 5; // Per player public static int SnipeProtectionMinutes = 2; // Anti-snipe timer -public static int ClaimExpirationDays = 30; // Days before unclaimed deleted +public static int ClaimExpirationDays = 20; // Days before unclaimed deleted public static double MinBidIncrementPercent = 0.05; // 5% minimum bid increase // ========================================= @@ -489,7 +496,29 @@ public static boolean LogAuctionClaimed = true; --- -## 7. Implementation Status +## 7. Commands + +### `/auction` Command + +Allows interaction with the Auction House without needing an Auctioneer NPC. + +| Subcommand | Usage | Permission | Description | +|------------|-------|------------|-------------| +| `list` | `/auction list [page]` | Default | View active auctions in chat | +| `view` | `/auction view ` | Default | View a player's auction activity | +| `open` | `/auction open` | Player only | Opens the Auction House GUI | + +**Examples:** +``` +/auction list - Show first page of active auctions +/auction list 2 - Show page 2 of auctions +/auction view Steve - Show Steve's listings, bids, and claims +/auction open - Open the full Auction House GUI +``` + +--- + +## 8. Implementation Status ### Phase 1: Currency System - COMPLETE ✅ ### Phase 2: Trader Enhancements - COMPLETE ✅ @@ -509,13 +538,20 @@ public static boolean LogAuctionClaimed = true; ### Remaining Work -- [ ] GuiManageAuction (Admin GUI) -- [ ] Permission system integration +- [ ] **GuiManageAuction (Admin GUI)** - Admin interface to view all auctions, cancel listings, manage claims +- [ ] **Permission system integration** - Per-player auction slot limits via `customnpcs.auction.slots.X` permissions (TODO at `AuctionController.java:899`) - [ ] Additional testing +### Implemented Since Initial Plan + +- [x] **`/auction` Command** - Console/player command with subcommands: + - `/auction list [page]` - View active auctions from command line + - `/auction view ` - View a player's auction activity (listings, bids, claims) + - `/auction open` - Open Auction House GUI without needing an Auctioneer NPC + --- -## 8. Design Decisions +## 9. Design Decisions | Decision | Choice | Rationale | |----------|--------|-----------| @@ -528,12 +564,13 @@ public static boolean LogAuctionClaimed = true; --- -## 9. Future Considerations (Not in 1.11) +## 10. Future Considerations (Not in 1.11) -- Category-based filtering +- Category-based filtering (by item type, mod, etc.) - Advanced blacklist system (items, mods, NBT patterns) -- Auction history/statistics -- Command-based auction access -- Auction house tax sink -- Reserve prices -- Private auctions +- Auction history/statistics tracking +- Auction house tax sink (currency removed from economy) +- Reserve prices (hidden minimum price) +- Private auctions (invite-only) +- Watchlist/favorites system +- Price history graphs diff --git a/src/main/java/noppes/npcs/config/ConfigMarket.java b/src/main/java/noppes/npcs/config/ConfigMarket.java index 557a08b6f..ff7c2af47 100644 --- a/src/main/java/noppes/npcs/config/ConfigMarket.java +++ b/src/main/java/noppes/npcs/config/ConfigMarket.java @@ -78,7 +78,7 @@ public class ConfigMarket { // ========================================= config.setCategoryComment(CURRENCY, "CNPC+ Currency system settings. When UseVault is enabled, all currency operations use Vault instead of the built-in system."); - UseVault = config.get(CURRENCY, "Use Vault", false, + UseVault = config.get(CURRENCY, "Use Vault", true, "If true, use Vault API for all currency operations instead of CNPC+ built-in currency. The built-in currency data will be preserved but unused.").getBoolean(false); CurrencyName = config.get(CURRENCY, "Currency Name", "Coins",