Almost right, but fTP only applies to the first hit. Subsequent hits are effectively 1.0 fTP, so you
add them to the fTP, thus KJ is 3.0 at 100tp.
But you pretty much screwed the pooch on everything else.
Try
here too, but know that its way out of date in the pDIF/cRatio section, use the page on the wiki for that. Weapon rank, WSC calculation, and fSTR are much better explained.
Don't try to make one big mess of numbers to detail everything, stick to max damage for sake of comparisons and don't bother with minimums
use a 1.025 pDIF multiplier for a true 'average'.
fSTR is (dSTR+4)/4, not just dSTR
WS mods are much more complex, explained well at that VZX page. Its percentage of your stat * 0.83 for level 75 (which means we're gonna need new numbers next month).
97 STR on a 50% mod is 45.5 (floor it), 45 * .83 = 37.35 and floor it again = +37 base damage
I'm just gonna use your STR number for melee hits as well to demonstrate most of the formula, then come back to WS:
Perdu Voulge is 91 damage, WRANK 10.
fSTR caps at +18 (WRANK+8), 135 STR on birds (just from memory). 135-91=44 STR away from fSTR cap, -11 fSTR for +7
91+7 = 98 base damage
Your Ratio/cRatio calculation is correct, just know that Ratio caps at 2.2 for 2-handers so the best cRatio you can get on these lv82 birds is 1.85 anyway. This last part is a new concept to people even three years after SE changed it, because you used to be able to push all the Ratio you wanted and have your cRatio capped at 2.2.
Another screwy bit is the secondary randomization they added to make capped crits not always be the same number, its a random number between 1.00 and 1.05 multiplied on the 'pDIFa' to get a new 'pDIFb'. 1.025 is a 1.0 pDIF average multiplied by a 1.025 average secondary randomizer, I'll use this later.
cRatio 1.66 * pdif multiplier 1.2 = 1.992 pDIFa
1.992 pDIFa * 1.05 max secondary randomization = 2.0916 pDIFb
2.0916 * 98 damage = 204
(.9 but you floor it) max damage.
Average should be 1.66 * 1.025 * 98 = 166 damage.
For WS:
91 weapon + 7 fSTR + 37 STR50% = 135 base damage
No attack mod on WS. Going to use the 'average' of pDIF and secondary randomization because not all WS hits are gonna peak at the same time.
1.66 cRatio * 1.025 = 1.7015 * (1.0 + 1.0 + 1.0) = 5.1045 * 135 = 689 average KJ damage without DA or Crit.
A crit on any one hit is gonna have a pDIFb of (1.66+1.0)*1.025 = 2.7265, so:
One crit: 2.7265 + 1.7015*2 * 135 = 827 damage
Two crits: 2.72*2 + 1.70 * 135 = 963 damage
Three crits: 2.72*3 * 135 = 1101 damage
Look about right?