Hi Sugata, just a correction. Actually, the way the cancel advantage on block (what you are calling Block Stun) is calculated is slightly different.P.S. Explanation to the STRING section - 5) from this forum (frame data is old and wrong but ok to explain):
How to find out if my opponent is doing a blockstring on me?
Example: Scorpion gravedigger (1,2,3) dial string
Scorpion’s 1 = Startup 8, on Block 0, Cancel 11 .
2 = 6 , -10 , 16 .
3 = Startup 8 .
1. Its a 3 hits string in MKX:
Each one of part of this string has startup, active frames, recovery, block adv, hit adv and cancel adv. You want to find out if there is a gap on this string or if its a true blockstring, this is how you do it:
BLOCK STUN = Cancel + Block adv
So standing 1 is 8f startup, on block is 0 frames, and canceling is 11frames.
11 + 0 = 11f Blockstun
2. Now you get that blockstun and compare if the startup frames of the next attack in line reaches (act) before, on time or after the blockstun fades:
1, 2 (the next attack in line) is 6 frames startup, meaning that it reaches the opponent before the blockstun of cancel block advantage (11F) fades so 1, 2 is a true Blockstring. And has a cancel advantage of 16 frames and a block adv of -10 frames.
16 + (-10) = 6f Blockstun
3. 1, 2, 3 (the final attack in line) is 8 frames meaning that it will not connect the opponent before the blockstun fades, so gravedigger (1, 2, 3) its not a true Blockstring there is at least a 2 frame gaps - where you can Armor move trough the last part of the string and expose scorpion for not know knowing this, making him less reckless and actually check your meter before doing that string again
SInce the game frame data "Cancel" is not properly the cancel advantage, but is the amount of frames into the move when the cancel happens, the math should be:
Cancel Advantage on Block (Block stun) = (Sum of Startup + Active + Recover) - Cancel + Block Advantage.
and NOT: Cancel + Block Advantage.
Hope it helps