In the official videogames, if a pokemon uses a move that has a type advantage over the opponent, the move's damage is automatically doubled. In my experience, this game mechanic makes competitive play a frequent case of "type advantage = odds stacked in your favor/outright win"
How about we mix that up?

Instead of automatic *2 damage, the supereffecive-ness would vary by the pokemon receiving, as well as the one dealing. The more powerful the poke, the the more damage it recieves from a super effective hit, and vice versa for weak pokemon. Also, this could apply to how much damage it would give when the poke itself lands a supereffective hit.
Inversely, this could be flipped for "not very effective" damage.