Join our discord
In partnership with NodeCraft Logo NodeCraft

You are not logged in! Create an account or login to contribute! Log in here!

Wonder Trade

From Pixelmon Wiki

Wonder Trade is a Pixelmon sidemod that is loosely based on the Wonder Trade feature from Pokémon X and Pokémon Y.


Minecraft version Pixelmon version Wonder Trade version
1.12.2 8.3.4+ 5.2.0
1.12.2 8.3.3 4.6.4
1.12.2 8.3.1+ 4.6.3
1.12.2 7.0.2+ 4.6.2
1.12.2 6.2+ 4.5.2
1.10.2 5.0-5.1 4.4.6
1.8.9 4.3 4.3.3

WonderTrade is a Forge sidemod, meaning it can be installed on different types of servers that support mods, such as Sponge or Mohist/Magma. An SQL database is required for the sidemod to function along with Placeholder API. Guides for setting up an SQL database locally can be found here and here. If you are hosting your server through a server host, they may be able to provide you with one. It is recommended to contact them or read their documentation regarding this. Wonder Trade is server-side and does not need to be installed by each individual player to be used. The SQL database information should be entered in the config.yml file.


  1. Download Wonder Trade for your version of Minecraft here.
  2. Place the downloaded jar file in the servers mods folder of your server directory.
  3. Start the server and wait for it to load
  4. Open the configuration folder in the servers config/WondertradeForge folder and edit the files as desired
  5. Restart the server to apply any changes made.


Wonder Trade generates a "pool" of Pokémon that will be swapped for specified Pokémon in players' parties if they choose to conduct a wonder trade. This pool consists of a specified number of Pokémon that can be modified in Wonder Trade's config file (config.yml). The Pokémon generated in this pool are completely random and not affected by the normal rarities of Pokémon in the wild, meaning that Pokémon normally unobtainable in the wild can be in the wonder trade pool. Legendary Pokémon and Shiny Pokémon may also be generated in the pool. The chance for a Shiny Pokémon to appear in the pool is also configurable in the config.

A player conducting a wonder trade will receive a random Pokémon from the pool in exchange for a specified Pokémon from the player's party. The Pokémon that the player trades away will then be placed in the pool, making it possible for other players to possibly receive this Pokémon from their own wonder trades. Per player, a wonder trade can only be done once within a certain time interval (1 hour by default) that can be changed in the config file. If a player receives or gives away a Legendary or shiny Pokémon on Wonder Trade, a server-wide message will be shown advertising this and encouraging players to try wonder trading. This and all other Wonder Trade messages can be modified through the locale file or turned off in the config file.


Note: Command syntax is displayed in the standard Minecraft command format. An explanation of this format can be found here.

  • /wt (Aliases: /wondertrade): This command will open up the Wondertrade GUI if the player has no cooldown. This has no permission node.
  • /reload: This command will reload the configuration (and locale) values.
  • /regenpool (Aliases: /rp: This command can be used to generate the WonderTrade pool of Pokemon using the default generation settings
  • /resetcooldown <player> (Aliases: /rc): This command will reset the targetted user's WonderTrade cooldown
  • /admin (Aliases: /view, /adminview, av): This command will open up the WonderTrade pool via the GUI

Permission nodes

  • Allows use of the /reload command.
  • Allows use of the /regenpool command.
  • Allows the use of the /resetcooldown command.
  • Allows the use of the /admin command.

Config File

Note: The configuration file is a .yml file - It can be validated here when making significant changes.

The config.yml contains all of the settings for WonderTrade including broadcast settings, generator settings, database details, and pool details.


always-broadcast: - Always broadcast regardless of what the pokemon specs are. Default: true
broadcast-legends - Broadcast if the pokemon is a legend (will broadcast anyway if aways-broadcast is true) Default: true
broadcast-ultra-beasts: - Broadcast if the pokemon is an ultra beast (will broadcast anyway if aways-broadcast is true) Default: true
broadcast-shinies: - Broadcast if the pokemon is shiny (will broadcast anyway if aways-broadcast is true) Default: true


blocked-types: - List of blocked pokemon Default: Hoopa
allow-legends: - Should legends generate in the pool Default: true
allow-ultra-beasts: - Should ultra beasts generate in the pool Default: true
shiny-chance: - Chance of a shiny appearing in the pool Default: 0.05

database-details - SQL database login for saving user data

pool-name - The name identifier of the database (Default value recommended) Default: WonderTrade
ip: - The IP of the database (Must add your own)
port: - The port of the datavase (Should stay as default) Default: 3306
username: - The username of the database (Must add your own)
password: - The password of the database (Must add your own)
database: - Name of the database (Must add your own)

cooldown-seconds - The user cooldown in seconds Default: 3600
min-required-level - The min level required to trade with WonderTrade Default: 30
number-in-pool - Number of Pokemon in pool Default: 30
persistent-pool - If the pool should stay after the server reboots Default: true

Locale Config

Note: The configuration file is a .yml file - It can be validated here when making significant changes.

The local.yml file contains all messages used by WonderTrade and can be changed to your liking.

For all chat messages, '&' color formatting works. For example, "&2" will create green text. Additionally, leaving a message blank in the config will disable that message.

pokemon-broadcast: - What to broadcast when a Pokemon is added to WonderTrade
shiny-replacement: - Text to show if Pokemon added is a SHINY
ultra-beast-replacement: - Text to show if Pokemon added is an Ultra beast
legend-replacement: - Text to show if Pokemon added is a legendary
trade-successful: - Message sent to player when they complete the trade
cooldown-message: - Message sent to the player when on cooldown

Sample Locale Config

- ' '
- '&e%forge_name%&7 added a &e%is_shiny%%is_ultra_beast%%is_legend%&b%pokemon%&7 to the &b&lWonderTrade'
- ' '
shiny-replacement: 'Shiny '
ultra-beast-replacement: 'UltraBeast '
legend-replacement: 'Legend '
trade-successful: '&e&l(!) &eWonderTrade was successful! Check your party to see what
    you got'
cooldown-message: '&c&l(!) &cYou cannot use the WonderTrade yet. You''re still on

Version history

Version history/Wonder Trade

© 2012 - 2022 Pixelmon Mod