Minecraft Villager Trade Manager
12.2Complete control over villager trading economics with custom pricing and discount prevention Minecraft Villager Trade Manager is a comprehensive Paper/Spigot plugin that gives server administrators c
12.2latestMinecraft Villager Trade Manager 12.2Jan 30, 2026 Patched Database Connection Leak At
- Prevents connection pool exhaustion ---DynamicTradeStorageService.javaPatched AdaptiveCache Executor Leak
Patched Missing Shutdown Calls
---Improved Performance
- Optimized findNearestPlayer() with spatial queries - Reduced complexity from O(n×m) to O(k) - Added fallback for older API versions ---Overall Patched Many Performance Issues
12Minecraft Villager Trade Manager 12Nov 21, 2025 Villager Trade Manager v12 - Advanced Minecraft Villager Economy Control (1.20.x-1.21.x Folia/Paper/Spigot)
[](htt… Ultimate villager trade plugin: Custom pricing/bans, leveling, stock mgmt, wandering traders, dynamic economy, multi-DB (SQLite/PG/Supabase), AI help, Vault integration. Folia optimized.
- 💰 Custom Trades: Price any trade/profession (Key Features
/vtrade setprice armorer diamond_helmet 25) - 🚫 Item Bans: Block OP items (/vtrade banitem netherite_sword) - 📈 Leveling: XP progression, unlocks (/vtrade level set) - 📦 Stock/Restock: Limits, auto-refill (/vtrade stock inspect) - 🐪 Wanderers: Custom trades (/vtrade wanderer add) - 🗄️ DBs: SQLite/PG/Supabase w/ pooling - 🤖 AI Help:/vtrade help ask "setup guide?"- 📊 Metrics: Health/prometheus Keywords: minecraft villager trade plugin 1.21, custom villager trades paper, folia villager manager, spigot economy plugin.
| Cmd | Desc | | ----------------------------------------- | ---------------- | |Commands Summary
/vtrade setprice <prof> <item> <cost>| Custom price | |/vtrade banitem <item>| Ban item | |/vtrade level/stock [set/inspect]| Level/stock mgmt | |/vtrade [addprereq/chain] <trade>| Enhancements | |/vtrade wanderer add <item>| Trader trades | |/vtrade restock [on/time]| Restock | |/vtrade help ask <q>| AI help |Config Highlights
Transform your villager economy today!database: sqlite # or postgresql/supabase level_progression.enabled: true trade_enhancements.enabled: true ai_assistant.groq.api_key: "key"Download v12.
11.1Minecraft Villager Trade Manager 11.1Nov 6, 2025 Changelog
---[11.1.0] - 2025-11-06
#### Folia Compatibility FixBug Fixes
CRITICAL - Plugin Loading Failure: Fixed
UnsupportedOperationExceptionthat prevented plugin from loading on Folia 1.21.8 - Scheduler Compatibility: Replaced rawBukkit.getScheduler()calls with platform-awareTaskScheduler- PerformanceMonitorService: Updated to useTaskScheduler.runAsyncRepeating()instead ofrunTaskTimerAsynchronously()- MigrationCommand: Updated to useTaskScheduler.runSyncRepeating()instead ofrunTaskTimer()- Constructor Updates: Modified service constructors to acceptTaskSchedulerdependency injection
#### Dependency Injection - TaskScheduler Injection: Services now properly receiveTechnical Improvements
TaskSchedulerinstances instead of accessing raw schedulers - Platform Abstraction: Enhanced use of platform-aware scheduling throughout the codebase - Code Consistency: Unified scheduler usage patterns across all components ---[11.0.0] - 2025-11-06
#### Item Banning SystemMajor Features
NEW - Complete Item Control: Ban entire items from appearing in any villager trades - Smart Filtering: Automatically prevents enchanted variants when base item is banned - Database Persistence: Banned items stored in database with audit trail - Commands Added: -
/vt banitem <item_type>- Ban items from all villager trades -/vt unbanitem <item_type>- Remove item bans -/vt listbanneditems- Display all currently banned items - Examples:/vt banitem diamond_sword,/vt banitem enchanted_golden_apple#### PostgreSQL Database SupportNEW - Direct JDBC Connections: Support for PostgreSQL databases beyond Supabase - Connection String Config: Full PostgreSQL connection string support - Enhanced Compatibility: Works with Supabase, AWS RDS, Google Cloud SQL, etc. - Configuration:
database: type: "postgresql" postgresql: connectionString: "postgresql://user:password@host:5432/database"
#### Command System Improvements - Enhanced Tab Completion: Full autocomplete for all commands and parameters - Better Error Messages: Improved feedback for invalid commands and parameters - Enchantment Guidance: Special help messages for enchantment-related commands - Profession Validation: Real-time validation of profession names and trade IDs #### Database Architecture - Multi-Database Support: SQLite, Supabase REST API, PostgreSQL JDBC - Automatic Fallback: Seamless fallback to SQLite if cloud databases fail - Connection Management: Improved connection pooling and lifecycle management - Schema Validation: Enhanced database schema validation and migration #### Performance Optimizations - Memory Usage: Reduced memory footprint for large trade registries - Database Queries: Optimized query performance and caching - Async Operations: Improved asynchronous database operations - Resource Management: Better cleanup and resource disposalEnhancements
#### Supabase Integration - URL Construction: Fixed doubleBug Fixes
/rest/v1/path construction bug - Authentication: Corrected authorization header usage for service keys - Connection Status: FixedisConnected()method to properly track status - Error Handling: Improved error messages and fallback behavior #### Command Processing - Trade Validation: Fixed validation logic for custom trade pricing - Parameter Parsing: Improved command argument parsing and validation - Tab Completion: Fixed tab completion for complex command structures - Error Feedback: Enhanced error messages for user guidance #### Database Operations - Connection Handling: Fixed connection leak issues in database providers - Transaction Management: Improved transaction handling and rollback - Migration System: Enhanced database migration reliability - Data Integrity: Better validation of database operations
#### Database Security - Connection Encryption: Proper SSL/TLS for database connections - Credential Handling: Secure storage and transmission of credentials - Access Control: Improved permission validation - Audit Trail: Database operation logging for security monitoring #### Input Validation - Command Sanitization: Enhanced input validation for commands - SQL Injection Prevention: Prepared statements for all database queries - Path Traversal: Protection against path manipulation attacks - Resource Limits: Rate limiting and resource usage controlsSecurity
#### Code Architecture - Database Provider Pattern: Clean abstraction for different database types - Configuration System: Enhanced configuration parsing and validation - Error Handling: Comprehensive exception handling and logging - Code Organization: Better separation of concerns and modularity #### Dependencies - PostgreSQL Driver: Added PostgreSQL JDBC driver support - HTTP Client: Updated OkHttp for better Supabase communication - JSON Processing: Enhanced Jackson for complex data structures - Testing Framework: Improved unit and integration testing #### Build System - Maven Configuration: Updated dependencies and build process - Plugin Compatibility: Enhanced compatibility with different server platforms - Resource Management: Better handling of plugin resources - Deployment: Streamlined build and deployment processTechnical Improvements
#### From V10.x to V11.0 ##### Database MigrationMigration Guide
##### New Commands Available - Run# V10.x config database: type: "sqlite" # V11.0 config (unchanged for SQLite users) database: type: "sqlite" sqlite: file: "villager_data.db"/vt listbanneditemsto see current banned items (none by default) - Use/vt banitem <item>to ban items from trades - Consider/vt setpriceimprovements with better error messages ##### Configuration Changes - No breaking changes for existing configurations - Newpostgresqlsection available for advanced users - Enhanced logging options inconfig.yml
#### Health Checks - HTTP Endpoints: Configurable health check endpoints - Database Monitoring: Connection pool and query performance metrics - Memory Tracking: JVM memory usage and garbage collection monitoring - Trade Statistics: Real-time trade volume and performance analytics #### Logging Improvements - Structured Logging: JSON-formatted logs for better parsing - Debug Modes: Enhanced debugging options for troubleshooting - Performance Logs: Query execution time and bottleneck identification - Error Tracking: Comprehensive error reporting and analysis ---Metrics & Monitoring
[10.x.x] - Previous Versions
See individual release notes for V10.x changes including: - Universal trade pricing for all professions - Folia compatibility and region-threaded scheduling - Advanced restock system with instant restock - Dynamic trade detection and storage ---
- Bug Reports: Use GitHub Issues with detailed reproduction steps - Feature Requests: Describe the use case and expected behavior - Code Contributions: Follow the existing code style and patterns - Testing: Ensure all tests pass and add new tests for new features ---Contributing
- Documentation: [README.md](README.md) for complete usage guide - Issues: GitHub Issues for bug reports and feature requests - Community: Join our Discord for community support - Compatibility: Minecraft 1.20.x - 1.21.x, Java 17+ --- Legend: -Support
Major Features: Significant new functionality -
Enhancements: Improvements to existing features -
Bug Fixes: Resolved issues and problems -
Documentation: Documentation and guides -
Security: Security-related changes -
11.0Minecraft Villager Trade Manager 11.0Nov 6, 2025 Changelog
---[11.0.0] - 2025-11-06
#### Item Banning SystemMajor Features
NEW - Complete Item Control: Ban entire items from appearing in any villager trades - Smart Filtering: Automatically prevents enchanted variants when base item is banned - Database Persistence: Banned items stored in database with audit trail - Commands Added: -
/vt banitem <item_type>- Ban items from all villager trades -/vt unbanitem <item_type>- Remove item bans -/vt listbanneditems- Display all currently banned items - Examples:/vt banitem diamond_sword,/vt banitem enchanted_golden_apple#### PostgreSQL Database SupportNEW - Direct JDBC Connections: Support for PostgreSQL databases beyond Supabase - Connection String Config: Full PostgreSQL connection string support - Enhanced Compatibility: Works with Supabase, AWS RDS, Google Cloud SQL, etc. - Configuration:
database: type: "postgresql" postgresql: connectionString: "postgresql://user:password@host:5432/database"
#### Command System Improvements - Enhanced Tab Completion: Full autocomplete for all commands and parameters - Better Error Messages: Improved feedback for invalid commands and parameters - Enchantment Guidance: Special help messages for enchantment-related commands - Profession Validation: Real-time validation of profession names and trade IDs #### Database Architecture - Multi-Database Support: SQLite, Supabase REST API, PostgreSQL JDBC - Automatic Fallback: Seamless fallback to SQLite if cloud databases fail - Connection Management: Improved connection pooling and lifecycle management - Schema Validation: Enhanced database schema validation and migration #### Performance Optimizations - Memory Usage: Reduced memory footprint for large trade registries - Database Queries: Optimized query performance and caching - Async Operations: Improved asynchronous database operations - Resource Management: Better cleanup and resource disposalEnhancements
#### Supabase Integration - URL Construction: Fixed doubleBug Fixes
/rest/v1/path construction bug - Authentication: Corrected authorization header usage for service keys - Connection Status: FixedisConnected()method to properly track status - Error Handling: Improved error messages and fallback behavior #### Command Processing - Trade Validation: Fixed validation logic for custom trade pricing - Parameter Parsing: Improved command argument parsing and validation - Tab Completion: Fixed tab completion for complex command structures - Error Feedback: Enhanced error messages for user guidance #### Database Operations - Connection Handling: Fixed connection leak issues in database providers - Transaction Management: Improved transaction handling and rollback - Migration System: Enhanced database migration reliability - Data Integrity: Better validation of database operations
#### Database Security - Connection Encryption: Proper SSL/TLS for database connections - Credential Handling: Secure storage and transmission of credentials - Access Control: Improved permission validation - Audit Trail: Database operation logging for security monitoring #### Input Validation - Command Sanitization: Enhanced input validation for commands - SQL Injection Prevention: Prepared statements for all database queries - Path Traversal: Protection against path manipulation attacks - Resource Limits: Rate limiting and resource usage controlsSecurity
#### Code Architecture - Database Provider Pattern: Clean abstraction for different database types - Configuration System: Enhanced configuration parsing and validation - Error Handling: Comprehensive exception handling and logging - Code Organization: Better separation of concerns and modularity #### Dependencies - PostgreSQL Driver: Added PostgreSQL JDBC driver support - HTTP Client: Updated OkHttp for better Supabase communication - JSON Processing: Enhanced Jackson for complex data structures - Testing Framework: Improved unit and integration testing #### Build System - Maven Configuration: Updated dependencies and build process - Plugin Compatibility: Enhanced compatibility with different server platforms - Resource Management: Better handling of plugin resources - Deployment: Streamlined build and deployment processTechnical Improvements
#### From V10.x to V11.0 ##### Database MigrationMigration Guide
##### New Commands Available - Run# V10.x config database: type: "sqlite" # V11.0 config (unchanged for SQLite users) database: type: "sqlite" sqlite: file: "villager_data.db"/vt listbanneditemsto see current banned items (none by default) - Use/vt banitem <item>to ban items from trades - Consider/vt setpriceimprovements with better error messages ##### Configuration Changes - No breaking changes for existing configurations - Newpostgresqlsection available for advanced users - Enhanced logging options inconfig.yml
#### Health Checks - HTTP Endpoints: Configurable health check endpoints - Database Monitoring: Connection pool and query performance metrics - Memory Tracking: JVM memory usage and garbage collection monitoring - Trade Statistics: Real-time trade volume and performance analytics #### Logging Improvements - Structured Logging: JSON-formatted logs for better parsing - Debug Modes: Enhanced debugging options for troubleshooting - Performance Logs: Query execution time and bottleneck identification - Error Tracking: Comprehensive error reporting and analysis ---Metrics & Monitoring
[10.x.x] - Previous Versions
See individual release notes for V10.x changes including: - Universal trade pricing for all professions - Folia compatibility and region-threaded scheduling - Advanced restock system with instant restock - Dynamic trade detection and storage ---
- Bug Reports: Use GitHub Issues with detailed reproduction steps - Feature Requests: Describe the use case and expected behavior - Code Contributions: Follow the existing code style and patterns - Testing: Ensure all tests pass and add new tests for new features ---Contributing
- Documentation: [README.md](README.md) for complete usage guide - Issues: GitHub Issues for bug reports and feature requests - Community: Join our Discord for community support - Compatibility: Minecraft 1.20.x - 1.21.x, Java 17+ --- Legend: -Support
Major Features: Significant new functionality -
Enhancements: Improvements to existing features -
Bug Fixes: Resolved issues and problems -
Documentation: Documentation and guides -
Security: Security-related changes -
Technical: Internal architecture changes
10.1Minecraft Villager Trade Manager 10.1Oct 16, 2025 Minor Bug Fixes
* Fixed Access global region thread To specific region thread In Folia Compatibility * Other Minor Bug Fixes10.0Minecraft Villager Trade Manager 10.0Oct 15, 2025 Minecraft Villager Trade Manager — Version 10.0
“Instant Restock Update” ---Key Features Implemented
1. Instant Restock System
-Added
instantRestockEnabledboolean flag for instant restocks. -New command:
/villagertrade instantrestock on/off. -Villager trades automatically replenish immediately after use. -
Platform-safe execution: Folia uses region-threaded scheduling; other platforms use synchronous execution.
2. Database Integration
-Instant restock setting persisted in SQLite
settingstable. -Automatic loading and saving of
instantRestockEnabled. -Fully backward compatible with existing database schema.
3. Enhanced Status Display
-/villagertrade statusnow shows Instant Restock status. -Clear On/Off indication for administrators.
4. Smart Integration
-Instant restock takes precedence over interval-based restocks. -
Normal restock system skips processing while instant restock is enabled. -
Seamless integration with existing restock features (
restocktime,restocklimit,unlimitedrestock).5. Command System Updates
-Added
instantrestocksubcommand. -Updated usage help text to include new command. -
Tab completion for
on/offvalues. -Updated main command usage message to reflect new options.
6. Performance Optimizations
-Efficient instant restock processing with minimal CPU overhead. -
Minimal performance impact when feature is disabled. -
Platform-appropriate scheduling for optimal performance on Folia and legacy servers. ---
- Fully compatible with: Folia, Paper, Purpur, Spigot, Bukkit - Minecraft versions: 1.20.x – 1.21.x - Java: 17+ ---Compatibility
- Upgrade from v9.0 is seamless. - Existing settings, prices, and restock data are preserved. - No server restart required for migration. ---Migration Notes
v10.0 introduces Instant Restock, giving server admins full control to replenish villager trades immediately, while maintaining compatibility, thread safety, and performance across all supported platforms.Summary
9.0Minecraft Villager Trade Manager 9.0Oct 15, 2025 Minecraft Villager Trade Manager v9.0
The Folia Expansion Update
[ -
Paper (1.20.x–1.21.x) -
Purpur (1.20.x–1.21.x) -
Spigot (1.20.x–1.21.x) -
Bukkit (1.20.x–1.21.x)
Version Range
- Minecraft: 1.20.x – 1.21.x - Java: 17+API Integration
- Reflection-Based Access: Ensures compatibility across API variants. - Graceful Fallbacks: Automatically uses the best available scheduler. - Future-Proof Design: Modular structure ensures easy updates. ---System Architecture
Modular Design
- Scheduler Layer: Unified async/sync scheduling. - Platform Layer: Detection & adaptation services. - Database Layer: Async persistent storage. - Business Logic Layer: Core villager trade management.Resource Management
- Thread Pool Management: Configurable async threads. - Connection Handling: Automatic open/close cycle for DB connections. - Memory Optimization: Efficient caching and cleanup. - Safe Shutdown: Proper termination of all async tasks. ---
All features from v8.0 are maintained and improved: - Custom Trade Pricing - Discount Prevention - Custom Restock System (intervals, limits, unlimited) - Command Suite (Feature Preservation
/villagertrade setprice,/villagertrade restock, etc.) - SQLite Persistent Data StorageEnhanced Reliability
- Better error recovery - Strong data consistency - Improved async logging ---Performance Benefits
Scalability
- Supports servers with 1000+ villagers - <1% tick usage even under high load - Fully async database and trade logicOperational Efficiency
- Fast startup - No blocking on main thread - Safe async resource cleanup ---Implementation Details
New Components
-TaskSchedulerInterface -FoliaScheduler(region-threaded scheduler) -BukkitSchedulerWrapper(legacy scheduler) -PlatformService(detection and adaptation) -AsyncDatabaseExecutor(thread-safe DB layer)Codebase Improvements
- Modularized architecture - Full backward compatibility - Comprehensive inline documentation - Future-ready design ---
- Seamless Upgrade: Drop-in replacement, no config changes. - Data Preservation: Existing settings and prices remain intact. - Command Compatibility: No breaking command changes. - Zero Downtime: Upgrade from v8.0 without restart issues. ---Migration Notes
Minecraft Villager Trade Manager v9.0 – The Folia Expansion Update Now supports Folia’s region-threaded architecture while maintaining full compatibility with Paper, Purpur, Spigot, and Bukkit. Bringing safe async performance, universal scheduling, and next-level stability to villager trade management.Summary
8.0Minecraft Villager Trade Manager 8.0Oct 13, 2025 New in v8.0 — The Restock Update
Take command of villager restocking behavior with full flexibility: -Custom Restock System
/villagertrade restock on/off— Enable or disable the custom restock system. -/villagertrade restocktime <minutes>— Set the restock interval (default: 30 minutes). -/villagertrade restocklimit <count>— Set the daily restock limit (default: 5 restocks/day). -/villagertrade unlimitedrestock on/off— Toggle unlimited villager restocks.Fully compatible with all villager professions and levels.
Automatically resets restock counts daily.
Smart, lightweight system monitored every minute.
- SQLite-based persistent storage for all settings and restock data. - Includes two new tables: -Database Integration
settings— Saves custom configuration values. -villager_restock_data— Tracks each villager’s individual restock usage. - Thread-safe operations usingConcurrentHashMap.Enhanced Status Display
/villagertrade statusnow shows: - Restock system status (enabled/disabled). - Current restock interval and daily limits. - Unlimited restock toggle state. - Price system status and stored price configurations. ---7.0Minecraft Villager Trade Manager 7.0Oct 5, 2025 Minecraft Villager Trade Manager
[](https:/… Complete control over villager trading economics with custom pricing and discount prevention Minecraft Villager Trade Manager is a comprehensive Paper/Spigot plugin that gives server administrators complete control over villager trading economics. Take control of trade prices, eliminate exploitative discounts, and create a fair, balanced trading experience for all players.Features
Complete Trade Control
- Set custom prices for any villager trade, especially enchanted books - Lock in fixed prices that never change regardless of player reputation - Prevent all forms of trade manipulation and exploitationDiscount Prevention System
- Eliminate Hero of the Village effects and free gifts - Remove reputation-based trade discounts - Prevent price inflation from overused trades - Maintain static pricing across all trading scenariosCustom Pricing Engine
- Set specific emerald costs for enchanted books (Fortune, Efficiency, Protection, etc.) - Configure prices for any enchantment level (Fortune I, Fortune II, Fortune III) - Automatic price capping at 64 emeralds per trade - Consistent 1-book cost for all enchanted book tradesUniversal Compatibility
- Works with Minecraft versions 1.20.x through 1.21.x - Compatible with Paper and Spigot server implementations - Automatic adaptation to server capabilities - No conflicts with other pluginsUser-Friendly Management
- Simple command system:/villagertrade setprice <enchant> <level> <price>- Intelligent tab completion for all enchantments and levels - Real-time status monitoring and price management - Persistent storage with automatic data saving
1. Download the latest release from the [Releases](https://github.com/Eldrath-Dev/Minecraft-Villager-Trade-M… page 2. Place theInstallation
.jarfile in your server'spluginsfolder 3. Restart your server 4. The plugin will automatically create its configuration files
| Command | Description | Permission | |---------|-------------|------------| |Commands
/villagertrade on| Enable trade management system |villagertrade.manage| |/villagertrade off| Disable trade management system |villagertrade.manage| |/villagertrade status| View current custom prices and system status |villagertrade.manage| |/villagertrade setprice <enchant> <level> <price>| Set custom prices for trades |villagertrade.manage|Command Examples
```bashSet Efficiency I to cost 20 emeralds
/villagertrade setprice efficiency 1 20Set Protection IV to cost 35 emeralds
/villagertrade setprice protection 4 35Set Mending to cost 50 emeralds
/villagertrade setprice mending 1 50Set Fortune III to cost 40 emeralds
/villagertrade setprice fortune 3 406.0NoDiscounts Plugin 6.0Oct 4, 2025 Version 6.0 - Multi-Version Compatibility ReleaseMajor Features Cross-Version Compatibility: Now supports Minecraft versions 1.20.x through 1.21.x Graceful Degradation: Automatically adapts to available server features Version Detection System: Intelligently detects server capabilities at runtime
Technical Improvements API Version Independence: No longer tied to specific Minecraft version APIs Reflection-Based Compatibility: Uses reflection for version-specific method calls Fallback Implementations: Provides backup methods for older server versions Feature Detection: Dynamically checks for Hero of the Village and Raid events
Compatibility Enhancements 1.20.x Support: Full compatibility with all 1.20.x versions 1.21.x Support: Maintained compatibility with 1.21.x versions Paper/Spigot: Works with both Paper and Spigot server implementations Backward Compatibility: Maintains all existing functionality across versions
Bug Fixes Method Compatibility: Fixed NoSuchMethodError exceptions on older versions Event Handling: Conditional event processing based on server capabilities Entity Processing: Version-safe entity distance calculations Potion Effects: Reflection-based potion effect removal for older versions Version 5.0 - User Experience Improvements
Command System Overhaul Simplified Syntax: /nodiscounts setprice <enchant> <level> <price> Natural Language Commands: efficiency 1 instead of enchanted_book_efficiency_1 Intelligent Tab Completion: Context-aware suggestions for all parameters
Trading System Refinements Consistent Book Costs: Exactly 1 book per enchanted book trade Price Capping: Maximum 64 emeralds per trade (respects Minecraft stack limits) Dynamic Level Limits: Tab completion shows correct max levels for each enchantment
User Interface Improvements Clear Error Messages: Helpful feedback for invalid commands Better Status Display: User-friendly format for custom prices Enhanced Help System: More examples and clearer usage instructions
4.0NoDiscounts Plugin 4.0Oct 2, 2025 Removed SQLite Dependency: Completely removed SQLite and replaced it with Java's built-in serialization File-based Storage: Custom prices are now saved to plugins/NoDiscounts/prices.dat using Java serialization ConcurrentHashMap: Used ConcurrentHashMap for thread-safe operations No External Libraries: Eliminated all external SQLite dependencies that were causing conflicts Simplified Persistence: Uses simple file I/O with object serialization instead of database operations 1 No Library Conflicts: Eliminates the SQLite library conflict with other plugins 2 Lightweight: No external dependencies beyond what's built into Java3.0NoDiscounts Plugin 3.0Oct 2, 2025 Updated Sqlite Driver to 3.43.0.02.0.0NoDiscounts Plugin – Version 2.0.0Sep 27, 2025 Changelog New Features SQLite Database Integration: Custom trade prices are now stored in a persistent SQLite database (plugins/NoDiscounts/prices.db) instead of config files. Full Enchantment Support: Added support for all enchantments, including modded ones. Dynamic Tab Completion: Command tab completion now auto-suggests every enchantment and level combination available. Enhanced Persistence: Custom prices survive restarts with robust database storage. Improvements Error Handling: Fixed ConcurrentModificationException in tab completion. Performance: Optimized database operations and memory usage. Compatibility: Works with all enchantments, vanilla and modded. User Experience: Expanded command help with examples and formatting guides. Technical Changes Database Structure: Prices saved in custom_prices table (item_key, price). File Location: Database auto-created at plugins/NoDiscounts/prices.db. API Updates: Updated for Minecraft 1.21.4 (Paper/Spigot). Memory Management: Fixed concurrent modification issues during tab completion. Features Disables All Villager Discounts (zombie curing, reputation, Hero of the Village). Static Trade Prices (overused trades never inflate). Preserves Villager Progression (leveling, unlocking trades, and refreshing). Hero of the Village Removal (no free gifts). Custom Pricing System Set custom emerald prices for any enchanted book using this format: enchanted_book_sharpness_5 → Sharpness V enchanted_book_protection_4 → Protection IV enchanted_book_mending_1 → Mending I Data persists permanently in SQLite. Commands /nodiscounts on — Enable discount prevention /nodiscounts off — Disable discount prevention /nodiscounts status — Check plugin status + view custom prices /nodiscounts setprice <item_key> <price> — Set a custom price Database Info Location: plugins/NoDiscounts/prices.db Table: custom_prices (item_key TEXT PRIMARY KEY, price INTEGER) Auto-created on first run. Examples /nodiscounts setprice enchanted_book_sharpness_5 40 /nodiscounts setprice enchanted_book_protection_4 35 /nodiscounts setprice enchanted_book_mending_1 50 /nodiscounts status1.0.0NoDiscounts Plugin 1.0.0Sep 26, 2025
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
PatPat [Mod & Plugin]
Allows you to pat ANY loved and unloved living mobs in Minecraft!
2.8MSueta
ItemSwapper
Inventory update concept for hotswapping items.
2.1MSueta
EssentialsX
The essential plugin suite for Paper and Spigot servers.
832.5KSueta
Grim Anticheat
Fully async, multithreaded, predictive, open source, 3.01 reach, 1.005 timer, 0.01% speed, 99.99% antikb, "bypassable" 1.8-1.21 anticheat
823.4KSueta