I do remember hearing something about the number being a composite of two factors, but I had forgotten about that. I believe defense is that way also. One number effects the chance of being hit and the other how much damage you take. Too bad they decided to join the two numbers.
Image,
(This isn't a question. It's a comment since you are not taking questions about your formual

)
float attacker = ((this->GetLevel()/2) * ((this->GetDEX()/6)+this->GetSTR()+atkbonus+this->pp.skills[skillinuse]));
float defender = (other->GetLevel()/2) * (other->GetAC()+(pp.skills[DEFENSE]/2)+other->GetINT()+other->GetAGI());
float hitsuccess = (attacker / defender);
There is no point to dividing the level by 2. You can take that out or make it divide by 100 and the resulting hitsuccess number will still be the same. I like where you are going with this. I put some sample numbers to it and like the results. I keep thinking that Dex should have a bigger role, but I'm not sure why.