Hacking the ST rom

I may be wrong, but i have an hypothesis for why fei’s Rh CW has that bug:
That’s because of his comand rh which puts him in an airbone state on the very first frame, meaning that its impossible to kara cancel out of it.
And yeah, the change in motion did “fixed” the move, doing CW was just as easy as any other special move. But, if -> and Rh are pressed on the same frame then i have no idea which move would come out. But since Fei would not jump out of it naymore, then you have a 7 frame window to input rh.

The bug is the same with Cammy’s Hooligan Combination: you have to delay the button press by one frame. If you do it at the same time, weird things happen, which I don’t recall anymore. It is described somewhere in this forum section.

Ok, so i spent 4 or so hours trying to figure out how to separate FAB’s throwbox from Sim’s noogie throbox (because i wanted to buff it, but the buffs would result in dhalsim having huge range, so that would be a big no), but i finally managed to do what i wanted, plus i discovered something interesting:

The Fab (Gief’s super) throwbox need to connect twice, one for connecting super and another one for actually grabbing the opponent. The second one only comes out when the first one connects. So, if you mess with the throwboxes sizes, by say, giving full screen range for the first throwbox (by changing in the routine, forcing to use another hitbox instead), if you do it far away so that only the first throwbox connects, as a result, gief will go to the throw animation (because the first throwbox connected), but the opponent will be able to move freely, and will take all the damage and the knockdown at the end, because the second throwbox didnt connect. I think everyone have seen that bug already. If not, here is a video from it happening, on ST.

In that video, the bug happened because for some odd reason only thefirst throbox connected. A very simple fix for this is to just use a full screen sized throwbox for the second one, i believe.

EDIT: I’ve also managed to edit the short and forward suplex (to have rh suplex range, something i always wondered how to do) as well, if anyone is interested in trying, here are my change notes:

FAB with Rh suplex range:
Map first fab throwbox to rh suplex throwbox:
[rom .04a - 0x00008a42 0f -> 02]
Map second fab throwbox to the unused gief throwbox slot:
[rom .04a - 0x00009df8 0f -> 0e]
Move the unused throwbox(which has spd range) some pixels back just to negate the FAB bug.
[rom .04a - 0x00038794 d1 -> e5]

Short Suplex with Rh Suplex Range
[rom .04a - 0x00008ff6 00 -> 02]

Forward Suplex with Rh Suplex Range
[rom .04a - 0x00008ffe 01 -> 02]

All these changes (excluding the 3rd one) are changes to the instruction’s immediate values, and since the instructions are encrypted on normal ST, these hacks are only possible on the phoenixed version.

Wow, that’s awesome. Thanks for that.

What would it look like if the 2nd throwbox was full screen range? If you could turn on the throwboxes script and show us which hitboxes you’re talking about, that would be appreciated, thanks. I’m really curious about this.

Just notice that, after the super flash, another throwbox of the same size appears. As for showing the actual hitboxes, if you want i can send a hacked rom file with that so you can see it yourself

Is this the second throwbox you’re talking about? (That’s the hitbox image for Atomic Buster, taken from ST Wiki.)

They have the same size, so yeah, the second throwbox is like that.

After a little break still need to finsh some lua scripts but that is for other games. But I decided to experiment a bit.

I decided to switched the one of N.Sagat’s branches to Gief’s branches. I was expecting a garbled mess or gief to appear for a few seconds to do a lariat. What happened when I pushed the Punch lariat what ever move I did last even if it was a super would be performed(if no special was done it would do LP Tiger shot).

Also, looking at other games st, ssf2, hsf2(ST and SSF2 characters only) are the only times they used constants for the special inputs.

Based on what you’ve said, it sounds like that or something very similar would be the culprit behind the reversal bugs. Awesome work you guys are doing, by the way! Looks like I need to stop playing with the old ST rom and work with the Phoenixed version.

I forgot all about the reversal bug, but yeah that could be it.

Edit:
Holy shit editing moves in the other games is easy.

That bit there makes all qcfs into back forward back.
That is the problem with it that you either have to tell it to load from some where else(by adding to a3) or you edit all of them.

That or you could look at mame’s source and write a decrypter and encrypter tool. I thought about doing it, apparently its just a simple feistel cipher (similar to DES cipher, but a lot simpler) but that would not be fun todo, so i wont waste my free time on it.

jedpossum, what are you doing for DKC3? Fan of the series here.

No, I was looking at the script for the lua commands on Bizhawk. Pasky made that script anyway.
I’m working on endless duel and that sailor moon fighter on the sfc.


Yeah, not a good conversion.

The sound conversion sounds like it just plays two audio files at the same time O.o

The double probably is two sonic on the samples like MvC2 (Which is where I got the sample from) has Sonic and Sonic Boom.
Majority of the problems is where the samples are out of place.

is any chance to edit the rom so a diferent stage is chosen for each match? u know, ala HDremix

It would take a rewrite how stages are done in the game.

It’s to get the character order for arcade mode. Then load it to the Ram check which match out of the 16 slots you’re at. Then load the match and then load the stage.

So someone did hack the ST ROM to get real Akuma…

Does the gief bug really need to be fixed? I mean it doesn’t really affect gameplay THAT much and its pretty damn rare. I love my wtf moments in ST.

It does break a few match-ups, and it can be punished very hard if baited, since the resulting running bear grab has huge recovery, but the vastly more important issue is that it makes the game retarded. One must guess among jump/hop/invulnerability “for no reason” or stand still after every blow you land and every time he wakes up. It’s just plain annoying.