I have put together a spread sheet utilizing the formulas as follows:
Chance to Hit (CTH)= MyDex/(MyDex+OpAgi)
Chance to Double Hit (CTDH)= (MyDex x MyCha)/(OpAgi x OpInt)
Chance to Block (CTB), Chance for Critical Damage (CFCD), and Chance to Avoid Critical Damage (CTACD) are all manually set in my sheet.
These are my assumptions:
I can hit or miss. Hitting is based purely on CTH.
Once I hit, my opponent can block or not block. Blocking is based on my CTH x CTB of my opponent.
If the hit is blocked, the damage is halfed, and then his armour rating reduces the remaining damage. If the remaining damage is zero or less, the damage is completely blocked.
If my opponent does not block then I hit normally or I hit critically. A critical hit is based on my chance for critical damage (CFCD) and my opponent chance to avoid critical damage (CTACH) If my opponent avoids the critical hit then normal damage applies. If not, double damage applies. Both of these cases require a critical hit success. A normal hit is therefore any hit that is not a critical hit.
So..
Miss = (1-CTH)
Hit = CTH
Block = CTH x Opp Block (1/2 damage - armour adjusment)
Critical Attack that is avoided = Opp CTACH x CFCD x (1- Opp Block) x CTH
Critical Attack success = (1-Opp CTACH) x CFCD x (1 - Opp Block) x CTH
Normal hit = (1-CFCD) x (1-CTB) x CTH
The sum of all of these should equal 100% to account for every possible scenario and represents only the chances of each situation happening. When I load these numbers into my spread sheet they equal 100%.
I have accounted for double attacks in the sheet as well as my opponents chances to hit me.
I thought I had the sheet running perfectly, and it did over many scenarios until I input data representing an opponent that I clearly should lose to in the game, but the numbers in my spread sheet output numbers that show that I should win which means my sheet is broken. Anecdotally, in game I lose to that opponent frequently, more than 50% of the time. The Gladadiatus simulator backs that up with a win rate of about 39%. However, my spreadsheet shows me doing 50% more damage per round against this one opponent which means I theoretically if the sheet was correct should have a winning record rather than a losing record.
I really want to make sure that the above equations are correct and that my assumptions about the chain of events is correct.
Once I have established the correct assumptions, I can move to other areas of the spreadsheet for trouble shooting.