Instead of using hero power to match alliances.
Why not come up with a new number or letter system that represents how usable each rarity tier is in comparison with each other. Similar to Anchors grade system but much simpler. Instead of looking at specitic hero stats, it just looks at level and tier.
Maxed 5* = A+
Maxed 4* = A
3rd tier 5* = B+
3rd tier 4* = B
2nd tier 5* = C+
2nd tier 4* = C
Maxed 3* = D(idk how accurate this grade is in comparison to the 2 above it, havent had to use 2nd tier 4 and 5* or maxed 3* ever for wars)
Everything below D = F
Simple easy way to do matchmaking in my opinion. Takes a lot of the variables in other numbers and formulas out of the equation. Just use that grade system strictly for war matchmaking(has no relevance to how good or rare a hero actually is as far hotm or event or special skills etc)
Then match alliances based on the number of heros they have in each grade. Can still use top 30 or use whole roster whichever would be more accurate. Could convert the letters to numbers if it would work better in the system