Nina and Anna had the Forward Flip Kick, which could be followed up with a rising high or low kick for a free hit.
King and Armor King had the Exploder and Running Exploder, which could also be followed up with a rising high or low kick for a free hit.
King and Armor King also had the Elbow Sting, which could be followed up with a fast punch to launch the opponent before they could recover.
Jack's Gigaton Punch also had the same effect, where a right punch would launch the opponent if the first punched was blocked.
The rolling cross chop, a move universal to everyone except the four Jack characters (Jack, P.Jack, Ganryu and Kuma), was also guaranteed to juggle if a follow-up punch was performed. Note that there are four types of cross chop: The standard rolling cross chop (on ground, feet towards opponent), which has the aforementioned speed issue (move ends too fast for the opponent to recover), the feet-away version of the same move (which is AFAIK a bit slower thus allowing the opponent to block the next move), a kick-up cross chop unique to Paul and Yoshimitsu (which is also slower), and a running cross chop which can be done with all characters.
Note that there are several other moves, mainly throws, which have a guaranteed follow-up. I don't think these can be fixed without breaking other things; in some cases it is impossible as the opponent is still in their damage-receiving throw animation. For example, Kazuya's Stonehead can be followed up by a number of moves (even a WGF) when the opponent is bouncing off the ground.
This cheat set replaces the Gigaton Punch, Rolling Cross Chop, Elbow Sting (King/Armor King), Exploder/Running Exploder (King/Armor King) and Forward Flip Kick (Nina/Anna) block stun animations with a quicker-recovering version, which is normally only used when blocking Paul's Neutron Bomb flip kick. The animations are almost identical so the character will still reel back when guarding, but will now have enough time to recover so they can block or counter any follow-ups. If I could find a way to edit the frame data (recovery period) so the original animations could still be used that would be ideal, but for now this will have to do.
A side effect of the Gigaton Punch fix (while the Windup/Gigaton Punch is Jack's signature unblockable move, the single windup/punch where the announcer yells "One!" is actually blockable, but following up immediately with a right punch launches the opponent) is that the rolling cross chop (on ground, feet towards the opponent, roll forward or back then F+1+2) is also fixed; the running cross chop, feet-away cross chop, and Paul's/Yoshimitsu's kick-up cross chop aren't affected as the moves were a bit slower even though the same block animation was used. Michelle's Twin Arrow also uses the same block animation however I think this move is still safe for both Michelle and the opponent when blocked, even with the opponent's faster recovery.
These have been tested with TE4/VER.C [tekkenac], but it should also work with TE2/VER.C [tekken] as they have the same memory locations. The two VER.B sets [tekkenb] and [tekkenjb] have different memory locations thus I will need to recheck them.
The 16 different locations correspond to the fighters' movesets (there are 17 characters, but Kunimitsu uses Yoshimitsu's 0x06 moveset). As the same pointers are repeated over every moveset I only need one temp0 location for each cheat (Kazuya's, since his data is located first).
Code: Select all
<mamecheat version="1">
<cheat desc="Fix Jack's unblockable Gigaton Punch 1 follow-ups and Cross Chop follow-ups"> <comment>This allows you to block combos which would normally juggle after the blocked Gigaton Punch (Jack) or Rolling Cross Chop (non-Jack characters)</comment>
<script state="on">
<action>temp0=maincpu.pd@8005AF7C</action>
</script>
<script state="run">
<action>maincpu.pd@8005AF7C=80101140</action>
<action>maincpu.pd@8005BD04=80101140</action>
<action>maincpu.pd@8005CA8C=80101140</action>
<action>maincpu.pd@8005D814=80101140</action>
<action>maincpu.pd@8005E59C=80101140</action>
<action>maincpu.pd@8005F324=80101140</action>
<action>maincpu.pd@800600AC=80101140</action>
<action>maincpu.pd@80060E34=80101140</action>
<action>maincpu.pd@80061BBC=80101140</action>
<action>maincpu.pd@80062944=80101140</action>
<action>maincpu.pd@800636CC=80101140</action>
<action>maincpu.pd@80064454=80101140</action>
<action>maincpu.pd@800651DC=80101140</action>
<action>maincpu.pd@80065F64=80101140</action>
<action>maincpu.pd@80066CEC=80101140</action>
<action>maincpu.pd@80067A74=80101140</action>
</script>
<script state="off">
<action>maincpu.pd@8005AF7C=temp0</action>
<action>maincpu.pd@8005BD04=temp0</action>
<action>maincpu.pd@8005CA8C=temp0</action>
<action>maincpu.pd@8005D814=temp0</action>
<action>maincpu.pd@8005E59C=temp0</action>
<action>maincpu.pd@8005F324=temp0</action>
<action>maincpu.pd@800600AC=temp0</action>
<action>maincpu.pd@80060E34=temp0</action>
<action>maincpu.pd@80061BBC=temp0</action>
<action>maincpu.pd@80062944=temp0</action>
<action>maincpu.pd@800636CC=temp0</action>
<action>maincpu.pd@80064454=temp0</action>
<action>maincpu.pd@800651DC=temp0</action>
<action>maincpu.pd@80065F64=temp0</action>
<action>maincpu.pd@80066CEC=temp0</action>
<action>maincpu.pd@80067A74=temp0</action>
</script>
</cheat>
<cheat desc="Fix King's unblockable Elbow Sting follow-ups"> <comment>This allows you to block combos which would normally juggle after the Elbow Sting</comment>
<script state="on">
<action>temp0=maincpu.pd@8005AF78</action>
</script>
<script state="run">
<action>maincpu.pd@8005AF78=80101140</action>
<action>maincpu.pd@8005BD00=80101140</action>
<action>maincpu.pd@8005CA88=80101140</action>
<action>maincpu.pd@8005D810=80101140</action>
<action>maincpu.pd@8005E598=80101140</action>
<action>maincpu.pd@8005F320=80101140</action>
<action>maincpu.pd@800600A8=80101140</action>
<action>maincpu.pd@80060E30=80101140</action>
<action>maincpu.pd@80061BB8=80101140</action>
<action>maincpu.pd@80062940=80101140</action>
<action>maincpu.pd@800636C8=80101140</action>
<action>maincpu.pd@80064450=80101140</action>
<action>maincpu.pd@800651D8=80101140</action>
<action>maincpu.pd@80065F60=80101140</action>
<action>maincpu.pd@80066CE8=80101140</action>
<action>maincpu.pd@80067A70=80101140</action>
</script>
<script state="off">
<action>maincpu.pd@8005AF78=temp0</action>
<action>maincpu.pd@8005BD00=temp0</action>
<action>maincpu.pd@8005CA88=temp0</action>
<action>maincpu.pd@8005D810=temp0</action>
<action>maincpu.pd@8005E598=temp0</action>
<action>maincpu.pd@8005F320=temp0</action>
<action>maincpu.pd@800600A8=temp0</action>
<action>maincpu.pd@80060E30=temp0</action>
<action>maincpu.pd@80061BB8=temp0</action>
<action>maincpu.pd@80062940=temp0</action>
<action>maincpu.pd@800636C8=temp0</action>
<action>maincpu.pd@80064450=temp0</action>
<action>maincpu.pd@800651D8=temp0</action>
<action>maincpu.pd@80065F60=temp0</action>
<action>maincpu.pd@80066CE8=temp0</action>
<action>maincpu.pd@80067A70=temp0</action>
</script>
</cheat>
<cheat desc="Fix King's unblockable Exploder/Rising Kick follow-up"> <comment>This allows you to block the rising kick after the Exploder</comment>
<script state="on">
<action>temp0=maincpu.pd@8005AF60</action>
</script>
<script state="run">
<action>maincpu.pd@8005AF60=80101140</action>
<action>maincpu.pd@8005BCE8=80101140</action>
<action>maincpu.pd@8005CA70=80101140</action>
<action>maincpu.pd@8005D7F8=80101140</action>
<action>maincpu.pd@8005E580=80101140</action>
<action>maincpu.pd@8005F308=80101140</action>
<action>maincpu.pd@80060090=80101140</action>
<action>maincpu.pd@80060E18=80101140</action>
<action>maincpu.pd@80061BA0=80101140</action>
<action>maincpu.pd@80062928=80101140</action>
<action>maincpu.pd@800636B0=80101140</action>
<action>maincpu.pd@80064438=80101140</action>
<action>maincpu.pd@800651C0=80101140</action>
<action>maincpu.pd@80065F48=80101140</action>
<action>maincpu.pd@80066CD0=80101140</action>
<action>maincpu.pd@80067A58=80101140</action>
</script>
<script state="off">
<action>maincpu.pd@8005AF60=temp0</action>
<action>maincpu.pd@8005BCE8=temp0</action>
<action>maincpu.pd@8005CA70=temp0</action>
<action>maincpu.pd@8005D7F8=temp0</action>
<action>maincpu.pd@8005E580=temp0</action>
<action>maincpu.pd@8005F308=temp0</action>
<action>maincpu.pd@80060090=temp0</action>
<action>maincpu.pd@80060E18=temp0</action>
<action>maincpu.pd@80061BA0=temp0</action>
<action>maincpu.pd@80062928=temp0</action>
<action>maincpu.pd@800636B0=temp0</action>
<action>maincpu.pd@80064438=temp0</action>
<action>maincpu.pd@800651C0=temp0</action>
<action>maincpu.pd@80065F48=temp0</action>
<action>maincpu.pd@80066CD0=temp0</action>
<action>maincpu.pd@80067A58=temp0</action>
</script>
</cheat>
<cheat desc="Fix Nina's unblockable Forward Flip Kick/Rising Kick follow-up"> <comment>This allows you to block the rising kick after the Forward Flip Kick</comment>
<script state="on">
<action>temp0=maincpu.pd@8005AF74</action>
</script>
<script state="run">
<action>maincpu.pd@8005AF74=80101140</action>
<action>maincpu.pd@8005BCFC=80101140</action>
<action>maincpu.pd@8005CA84=80101140</action>
<action>maincpu.pd@8005D80C=80101140</action>
<action>maincpu.pd@8005E594=80101140</action>
<action>maincpu.pd@8005F31C=80101140</action>
<action>maincpu.pd@800600A4=80101140</action>
<action>maincpu.pd@80060E2C=80101140</action>
<action>maincpu.pd@80061BB4=80101140</action>
<action>maincpu.pd@8006293C=80101140</action>
<action>maincpu.pd@800636C4=80101140</action>
<action>maincpu.pd@8006444C=80101140</action>
<action>maincpu.pd@800651D4=80101140</action>
<action>maincpu.pd@80065F5C=80101140</action>
<action>maincpu.pd@80066CE4=80101140</action>
<action>maincpu.pd@80067A6C=80101140</action>
</script>
<script state="off">
<action>maincpu.pd@8005AF74=temp0</action>
<action>maincpu.pd@8005BCFC=temp0</action>
<action>maincpu.pd@8005CA84=temp0</action>
<action>maincpu.pd@8005D80C=temp0</action>
<action>maincpu.pd@8005E594=temp0</action>
<action>maincpu.pd@8005F31C=temp0</action>
<action>maincpu.pd@800600A4=temp0</action>
<action>maincpu.pd@80060E2C=temp0</action>
<action>maincpu.pd@80061BB4=temp0</action>
<action>maincpu.pd@8006293C=temp0</action>
<action>maincpu.pd@800636C4=temp0</action>
<action>maincpu.pd@8006444C=temp0</action>
<action>maincpu.pd@800651D4=temp0</action>
<action>maincpu.pd@80065F5C=temp0</action>
<action>maincpu.pd@80066CE4=temp0</action>
<action>maincpu.pd@80067A6C=temp0</action>
</script>
</cheat>
</mamecheat>

Code: Select all
<mamecheat version="1">
<cheat desc="Player 1 is controlled by">
<parameter>
<item value="0x00">Human</item>
<item value="0x01">CPU</item>
</parameter>
<script state="run">
<action>maincpu.pb@2648EC=param</action>
</script>
</cheat>
<cheat desc="Player 2 is controlled by">
<parameter>
<item value="0x00">Human</item>
<item value="0x01">CPU</item>
</parameter>
<script state="run">
<action>maincpu.pb@2648EE=param</action>
</script>
</cheat>
</mamecheat>