>>34078138Honestly difficulty isn't that important in Pokémon. It is important to not be as braindead easy as the more recent games, but your goal shouldn't be to create something that only a veteran could realistically beat via optimization (unless that's your intention and making a balls-hard hack is your explicit and primary goal, in which case go for it). You should just make sure the player has to engage with the game enough that they aren't just mashing A. Good team composition for bosses can do this, and throwing something out of left field (i.e. giving a TM move as type coverage for the boss's ace) can be effective. Don't be afraid to give a major opponent something the player can't obtain at that point in the game, as long as they can obtain it within, say, a couple badges of that fight, then you get a memorable fight and that Pokémon will be associated with that trainer.
Assuming you're designing a new region and not just making a difficulty hack of an existing region, dungeons are essential. Make dungeons that drain your resources, force the player to stock up on healing items and repels before entering
and put an NPC in front of the first dungeon to remind the player to grab repels that way dumb players who would otherwise ignore repels and complain about the encounter rate have no excuse, avoid putting free healing in those dungeons unless it's exceptionally long, add a strong trainer somewhere in there when the trainer likely isn't at full strength. If you're going to make a strong Pokémon like a pseudo or a full Legendary available before postgame, make sure it's not easy to get, make it so getting it is a bonus and the 'mon is a reward rather than a handout like, say, Lati@s in ORAS.
Overall, don't just think about "what could make this hard?" Think about "how can I get the player engaged?" Engaging the player is how the player has fun. Difficulty can engage the player but it's only a means, not an end.