Compatibility
Minecraft: Java Edition
26.3
26.2
26.1.x
1.21.x
Platforms
Tags
Creators
Details
Licensed MIT
Published 5 months ago
Updated last week
🪙 InfiniteTrades
Tired of villagers locking their trades just when you finally have enough emeralds? InfiniteTrades is a lightweight, performance-friendly plugin that enables unlimited villager trading. No more waiting for trades to restock — just keep trading!
✨ Features
- 🔄 Infinite Trading: Increases the maximum uses of each trade to
Integer.MAX_VALUE(over 2.1 billion). - 🏪 Full Merchant Support: Supports both Villagers and Wandering Traders.
- ⚙️ Configurable Price Protection: Toggle
prevent-price-increase-on-hitto control price increase prevention when villagers are hit. - 🔃 Trade Reset: Resets trade usage when a player opens the trading interface.
- ⚡ Lightweight: Event-driven logic with no background tasks.
- 📝 Clean Console Logs: English enable and disable messages.
🚀 Compatibility
Built using the Bukkit/Spigot API without NMS dependencies.
| Server Software | Supported |
|---|---|
| Spigot | ✅ |
| Paper | ✅ |
| Purpur | ✅ |
📅 Supported Minecraft Versions
- Minecraft 1.21–26.3
Compatibility depends on the server API and plugin build. Test on your target server version before deploying.
🛠️ Installation
- Download the latest
.jarfile from the Releases page. - Place the JAR file in your server's
plugins/directory. - Restart your server.
- Edit the configuration file if needed.
⚙️ Configuration
The plugin creates a config.yml file automatically when it starts for the first time.
📄 View complete config.yml
# ==========================================================
# Infinite Villager Trading Configuration
# ==========================================================
# Enable or disable infinite villager trading.
# true = Villager trades have unlimited uses.
# false = Vanilla trade usage limits are preserved.
enabled: true
# ----------------------------------------------------------
# Language Settings
# ----------------------------------------------------------
# Sets the language used for plugin messages.
# Language files are located in the plugin's lang/ directory.
#
# Available languages:
# en_us = English (United States)
# de_de = German (Germany)
#
# Example: language: en_us
# language: de_de
#
# If the selected language file is missing or invalid,
# the plugin falls back to en_us.
#
# A language change takes effect after a plugin reload
# using /infinitevillagertrading reload.
language: en_us
# ----------------------------------------------------------
# Price-Increase Settings
# ----------------------------------------------------------
# Prevent villager trade prices from increasing after a player
# attacks a villager.
#
# true = Enable the price-reset workaround.
# false = Keep vanilla price behavior.
#
# Note: The shared Bukkit API cannot clear villager reputation.
# Reputation-based discounts and penalties may still affect prices.
prevent-price-increase-on-hit: true
# ----------------------------------------------------------
# Wandering Trader Settings
# ----------------------------------------------------------
# Enable or disable infinite trading for wandering traders.
# true = Wandering trader trades have unlimited uses.
# false = Vanilla trade usage limits are preserved.
wandering-trader:
enabled: true
# Prevent wandering trader prices from increasing
# after a player attacks a wandering trader.
# true = Enable the price-reset workaround.
# false = Keep vanilla price behavior.
#
# Note: Bukkit does not provide a direct way to clear
# wandering trader reputation.
prevent-price-increase-on-hit: true
Configuration options
| Option | Default | Description |
|---|---|---|
enabled |
true |
Enables or disables unlimited trading. |
prevent-price-increase-on-hit |
true |
Enables or disables the trade price-reset workaround after a player attacks a villager. |
wandering-trader.enabled |
true |
Enables or disables unlimited trading for wandering traders. |
wandering-trader.prevent-price-increase-on-hit |
true |
Enables or disables the trade price-reset workaround after a player attacks a wandering trader. |
Note: Changes to config.yml may require a server restart to take effect, depending on how the plugin loads its configuration.
💡 Notes
- No configuration is required for basic infinite trading.
- Back up your configuration before updating the plugin.
- Restart the server after changing the configuration unless your plugin's reload command is available and working.


