Super Turbo HUD

So you don’t see the practical application in this…yet real data is given and you deny it…k

Yeah I’ve noticed Honda, Sagat, and a few other people you need to be closer to throw than usual. Like with Honda (and no one else) one light attack at point blank puts him outside of Zangief’s super range. Also Honda is outside of SPD range after 3 slow light ticks, while everyone else gets thrown. Against Honda and Sagat you have to be closer than normal to SPD and it throws me off a lot.

My guess is that the throw distance is based on the distance from pivot point to pivot point. HDR has the little red square to show it, but idk if you can make it show or find it in the code.

I’ll have to mess around with the HUD and see how far ticks push you numerically. I’ve also been messing around trying to find out the best dizzy combos with Zangief, Guile, and DJ. Lol I finally found a use for Zangief’s St. HP in a jump in dizzy combo and I would never have learned about it without looking at the stun data of his moves, so I appreciate the work Pasky, CBO, and Cauldrath are doing/have done. It’d be great if you could find out the range of randomness for stun and damage and display it in the HUD. I’m also positive that the game skews the randomness very heavily in favor of whoever lost the first round (especially throw and super damage), so it’d be nice to see how big the difference is.

Guiles best dizzy is j.hk, st. hp, flashkick XD. It’s an instant dizzy combo. Pretty sure his close st. hp, j.hk and backfist do the most stun, all seeming to do same amount (which seems to be 10-16) disproving that stupid theory someone had that medium normals do the most stun when its character dependent.

Yeah I found out that J. HK and J. MP do the most stun the old fashioned way lol. I also stumbled upon the combo you mentioned, but it doesn’t seem to work on some characters like Blanka (even crazy HDR Flashkick lol). Also tried a bunch of different links to see which ones do the most stun. Sadly Cr. MP, St. HP is the best I came up with, although if you tack on HK Flashkick you can dizzy Sim most of the time. A lot Guiles random normals seem to do barely any stun like step kick and upside down kick.

Ok, I think I found where the damage is randomized for player 1’s damage (using guile’s close st.hp):

Possible base damage:

Not sure how register d4 gets its value, haven’t gone back that far

1st Value:
(copy datatype ‘word’ from register D4 to register D6)

D6=E1A7FFCE 0BF63C: move.w D4, D6

After this calculation D6 = E1A7001C (28 Decimal, unsure what this number is)

The next calculation performed to D6 is:
(Copy datatype byte of register A1 (e.g. xxxxxx00) + D0.w (e.g. D0’s xxxx0000) to register D6)

D6=E1A7001C 0BEDA4: move.b (A1,D0.w), D6

After this calculation D6 = E1A70018 (24 decimal, possibly the base damage, although I could never achieve 24 dmg using guile’s close st. hp, the most I could get is 22, which never occured in any calculations at this point)

The next calculation performed to D6:

(Add datatype ‘word’ from register D0 (xxxx0000) to register d6)

D6=E1A70018 0BEE6A: add.w D0, D6

After the calculation D6=E1A70019 (25 decimal)

Then a final calculation is performed:

(Subtract datatype ‘word’ value in register D5 from register D6)

D6=E1A70019 0BEE78: sub.w D5, D6

After the calculation D6=E1A7**0015 ** (21 Decimal, Final damage)

This is then subtracted from player 2’s life at:

(Subtract datatype word value in register D6 (0015) from the address located at 2A + register A2

D6=E1A70015 0BE646: sub.w D6, ($2a,A2)

This happens for all normals, throws use different addresses I believe. Not sure about specials. One thing that always seems to happen is there is that value that I marked as “Possible base damage” that occurs during every damage calculation for normals, this value is always the same when using the same normal.

The ‘randomness’ of ST’s damage occurs during the subtract and add operations after that value is derived (0BEE6A: add.w D0, D6 and 0BEE78: sub.w D5, D6), these can vary during every damage calculation, no idea on the range. Normals also seem to do significantly less damage when the opponent is at very low life (ST.hp usually does 20 dmg on avg, when ken had 10-12 life left when the music change, it would do as low as 7-8 dmg).

So that’s what I’ve found so far, it’s a pain in the ass reversing 68000 ASM when you’re used to x86 little endian.

I can’t sleep…so ya.

J. hk -> st. hp xx flashkick does work on blanka…I just did it without tool assistance and if you wanna get on supercade I’ll show you there :p. Use LK flashkick. Just did it in HDR too with HDR and classic guile.

GET BETTER! =P

Keep in mind that the yoga book hyper does have the base damage values.
T.Akiba’s page lists the “guts” or “damage scaling” system when you have low life.
Translation by NKI:
T.Akiba’s SF2 Data
Interestingly it also lists throw damage and the throw damage when you’re behind a round.

Ya, you can get them from yoga book by doing 144 * 0.<amount in yoga> since yoga lists it as %. I’ve just always questioned the accuracy of yoga book hyper.

I think mostly everyone is interested in the random factor of how much is subtracted from the base value, since the base value is 100%, and you can randomly get a larger or lower number even if the dummy has the same amount of life.

Yeah, but it misses a bunch of values, and also did not take a number of active frames into account. For example, it did not take Gief’s anti-air close Jab into account for the frame data. Also, it does not have full damage data for special moves such as Shoryukens, Tomahawk Buster and Flash Kicks, whose damage depends on which active part connects. A few of them are listed in the Wiki, but most are yet to be determined, or even identified.

Updated, now has it’s own Google code page and updates will be committed to the SVN (I’ll be placing zipped downloads in the download section for the non-tech savvy :P).

Removed the P2 left and right increment/decrement because it really wasn’t necessary.

Added a hotkey to set the stage timer to infinite, I got annoyed with setting it in cheat engine everytime. Also cleaned the code up.

I think there’s kind of a point where damage is damage and you can just eyeball it and intuitively base your gameplan from there. You don’t need to know the absolute exact damage range of your attacks. You can catalogue it if you want but it isn’t going to help anyone. Finding the highest damage combos (in a game like ST) can generally be figured out without having to be so spergy.

I find it fun to pick a game apart…shrug But yes, agreed for the most part, but you never know, there may be some weird and quirky mechanic such as damage more damage occuring when the timer has a ‘9’ in it or something stupid, or something such as one char does more damage when he is on a specific stage as weird as something like that is, it could prove useful.

Agreed. Looking at the yoga book hyper, you’d figure that ryu j.rh, cr. mp xx tatsu deal more damage than j.rh, st fierce xx fb, but it’s not…

even j.rh, cr. fierce xx tatsu (works on big characters) only deal similar damage to j.rh, st fierce xx fb.

eye balling is not very precise in some cases.

Yeah you are right. I guess I wasn’t close enough or something because the Flashkick would whiff on Guile, Blanka, and Shotos sometimes. Lol the first time I tried it today on Blanka it worked…

In here, http://shoryuken.com/f223/things-you-just-dont-understand-about-st-259433/index4.html Cauldrath mentions the character specific damage scaling is about 82% for most characters and 63% for Zangief. Maybe one of these steps is related to the character specific/low health scaling done. The number in the second step seems close enough to be 82% of the number in the first step assuming it rounds up or something.

O____O. An ST stun meter and super gauge point counter. this will provide exact values. wow.

This looks really cool Pasky, certainly worthy of being called amazing!

I have something new in the works myself but got a call from the white house a few days ago asking me to hold off for a bit so society will hear the big news item this week first. I was like, the people have been waiting too long, but they said please XSPR don’t do it just yet, so I was like ok fine.

pasky, I used to think you were an idiot. now I know that I was only half right, turns out your also a savant, idiot savant.

<3 u too.

[LIST]
[]Added Dammit, MZ, and Felineki’s Hitbox displaying script.
[
]You can now toggle the hitboxes, and the HUD display.
[]HUD no longer displays outside of a match
[
]Got rid of moving the character left by 1 hotkey, you should only need one direction to determine max range for throws and whatever else for testing, move the dummies manually then pinpoint by moving P1 left to right in increments of ‘1’ using the script.
[*]Cleaned up the source code as well.
[/LIST]

First of all, nice work on that script, pasky. I’ll post some stuff that may help you (or may not). I don’t know if this would be the best place to post it or if I should create a new topic, I hope I’m not derailing this one.

I believe I discovered how exactly the throw ranges work in this game. When I first read the throw ranges in the papasi’s site, I didn’t understood why Zangief’s normal throws had more range (98 pixels) than Honda’s (93 pixels), because in that match-up its a fact that Honda’s normal throws have a lot more range than Gief’s normal throws. So after a bit of time analysing T.Akiba’s throw range diagrams, I came with a possible answer…

The throw ranges are calculated from one character’s center pivot to the other character’s pivot. Honda can throw (with normal throw) ryu from a max distance of 93 pixels; Gief can throw (with normal throw) Ryu from a max distance of 98 pixels.
Assuming that you can clearly affirm that Zangief has 5 pixels better range than Honda, why in the Gief x Honda matchup that doesn’t happen? That’s the main point.

Well, I failed to make it clear to oldschoolBR in our native language, and my English is not that good, but I hope you guys can understand, haha.
Each character has an additional “factor” in the math of throw ranges. The math is:

If “your throw range” + “characters being throw factor” is equal or bigger than the “distance between centers” then the throw happens (obviously only if he is in a throwable state).

Zangief’s factor is 16 (assuming that ryu’s factor is 0, notice in that diagram from T Akiba’s site that everyone has 16 pixels better range when throwing Gief, in comparison to throwing Ryu), which is really bad. By the same logic, Honda’s “factor” is -1, which is a good thing.

So, in the math of normal throw ranges, the results are:

For Gief throw Honda with a normal throw:

98 (Zangief’s throw range) - 1 (Honda’s “factor”) = 97 pixel range, the same from T.Akiba’s diagram.
For Honda throw Gief with a normal throw:

93 (Honda’s throw range) + 16 (Zangief’s “factor”) = 109 pixel range, again matches the T.Akiba diagram.

Another example:
Both Gief’s RH Suplex and T.Hawks Typhoon have 112 pixels to throw Ryu, but when they face each other, Hawks Typhoon will have 10 pixels better range. This happens because Hawks factor is 6 while Gief’s 16.

Obviously, all that stuff will only make sense if the diagram from t.akiba is right (http://nki.combovideos.com/data.html#distance), that is, I did not test those values. If they’re right, then I firmly believe that’s how the throw ranges work. So, assuming these values are actually right, it is possible to create 2 tables with enough information so as to reckon which throw beats others for all match-ups.
Factors:

Throw Ranges: