Cobblemon Trainers introduces a trainer battle system to Cobblemon, designed to seamlessly integrate with interactable NPC mods.
These trainers feature a custom AI inspired by Generation 5's trainer AI, ensuring engaging and challenging battles.
- Customize trainer teams extensively, including Moves, IVs, EVs, Abilities, Level, and Nature, offering diverse and challenging battles.
- Access any Pokémon available on your server, including those from datapacks.
- Efficiently organize trainers into groups for streamlined navigation within the setup interface.
- Define win commands for trainers, enabling post-battle rewards such as economy-based incentives.
Commands Overview:
- /trainers add <name> [<group>]: Establish a new trainer with an empty team, optionally assigning them to a specific group.
- /trainers setup: Access the GUI to configure trainers' teams.
- /trainers setwincommand <trainer> <command>: Specify the command executed upon defeating a trainer, with automatic player name substitution (%player%).
- /trainers setlosscommand <trainer> <command>: Define the command executed when a player is defeated by a trainer, with automatic player name substitution (%player%).
- /trainers setgroup <trainer> <group>: Group trainers under specified names in the setup GUI for organizational purposes.
- /trainers remove <trainer>: Delete a trainer from the system.
- /trainers rename <oldName> <newName>: Modify a trainer's name (reflects in battle logs).
- /trainers setcanonlybeatonce <trainer> true/false: Toggle whether a trainer can only be defeated once.
- /trainers addpokemon <trainer> <pokemon>: Add a Pokémon to a trainer's team via command similar to /pokegive.
- /trainers addfromparty <trainer> <partySlot>: Add a Pokémon from the player's party to a trainer's team.
- /trainers setcooldownseconds <trainer> <cooldownSeconds>: Set the cooldown duration for battling the trainer.
- /trainers setpartymaximumlevel <trainer> <maxLevel>: Set a maximum level for the player's party to battle a trainer.
- /trainers adddefeatrequirement <trainer> <defeatRequirement>: Makes it so the given trainer cannot be battled unless the player has defeated a certain trainer.
- /trainers removedefeatrequirement <trainer> <defeatRequirement>: Removes a defeat requirement.
- /trainers resetwintracker <player> <trainer>: Clears whether the given player has defeated the given trainer in the past.
- /trainers usegen5ai: Set trainer battle AI to Generation 5 AI.
- /trainers usestrongai <level>: Set trainer battle AI to Strong AI currently under development for official trainers in Cobblemon.
- /trainers battle [<trainer>]: Initiate a battle with a trainer. Omitting the trainer argument will open a trainer select menu.
- /trainers makebattle <player> <trainer> [<trainerEntity>]: Commence a battle between a player and a trainer.
- /trainers reload: Refresh the trainer data file; caution advised for manual edits.
Utilize single quotes for trainer names or commands with spaces. For instance: /trainers add 'Ash Ketchum'
To include single quotes within a string, utilize ': 'say 'hello'' becomes say 'hello'
All commands require permission level 2 or their corresponding permission nodes:
- "selfdot.trainers.reload" - /trainers reload
- "selfdot.trainers.battle" - /trainers battle <trainer>
- "selfdot.trainers.makebattle" - /trainers makebattle <player> <trainer>
- "selfdot.trainers.edit" - All other commands.
Config Options:
- xpEnabled: Controls whether player Pokémon will gain XP from battling trainers.
Graphics by twsparklecat