Hi! I thought of this a while ago, and decided to post it as a suggestion.
There could be Team Rocket NPCs spawned randomly around the map (let's say 5 at any given time), that would battle you if you came within a 5-block radius of them. Obviously, most trainers would avoid them, but as incentive, beating these Team Rocket Grunts would give you a large-ish amount of experience (for eg. 100 till Trainer Level 5, 500 EXP till Trainer Level 10, 1000 EXP till Trainer Level 15, and so on)
These NPCs would wear a Team Rocket skin (http://www.minecraftskins.com/skin/10190644/team-rocket-dabobjobs/), and would be just like real Grunts from the games.
The Pokemon in the teams of these Grunts would differ as your Trainer Level goes up. For example, if you're below Level 10, the Grunt would have only Ratattas, Zubats, Ekans etc.. After your level increases, the level of these Pokemon would increase too, eventually ending in Raticates, Golbats, Kangaskhans etc.
Maybe, at every 5th level (lvl5, 10, 15 onwards) there could be a mini Boss Battle with Giovanni at a secret Rocket hideout. The Giovanni battle would obviously give more EXP than Grunt Battles. Beating Giovanni would also give you 2,500 PokéCoins, and a Rare Candy for every 5th time that you beat him. If you have already reached level 30, you can battle him repeatedly, but get lesser rewards.
The hideout's location could be kept secret, and would have to be discovered by the trainers in their own time.
Anyways, I hope this is a useful sugestion and can be implemented!
@MrWaffleFries @Rezacabre @Voultronix lemme know what you think.
EDITS:
1. Edited Giovanni's Battle Rewards based on a suggestion by @ZombByeGod
~AngadKapoor
Last edited: Apr 17, 2017