I had been thinking about how exactly to incorporate the capture rate (of the ball) and the catch rate (of the pokemon) into one formula.
So basically, these formulas are based upon these assumptions:
the larger the pokemon, the higher the aggro
the higher the level, the higher the aggro
the higher the aggro, the higher the dodge (before influence by catch/capture rates)
the better the capture rate, the lower the dodge
the higher the catch rate, the lower the dodge
the lower the HP in relation to that pokemons max HP, the lower the dodge
Both are really basic formulas :P
Aggro = (size*2.5) * (lvl/100)
With size in feet.
Dodge= Aggro/((CatRate*CapRate)*CurHP/MaxHP)
Where CatRate is the catch rate of the pokemon, CapRate is the capture rate of the ball. CurHP is the remaining HP of the pokemon you're trying to catch, while MaxHP is (:O) the maximum HP of the pokemon you're trying to catch.
the *2.5 in the aggro formula is random, to not let the aggro become too small for pokemon like Skitty, while it remains large enough for pokemon like Wailord.