My suspicion here, just in case no one elsewhere has said anything, is that data type 4 is "file" and tells anything that references it which files to load. Brawl loves to crash if you try to reference files inappropriately which would probably explain why this data type causes crashing when used inappropriately. In the case of Heart Swap, I bet it's helping it reference files so each player is controlling the right characters at the right times.:O
It seems like Manaphy's heart swap is coded in PSA. Take a gander at this:
Variables:
00000000 00000578
------------------
00000000 00000000
------------------
00000000 00000002
------------------
00000000 00000002
------------------
00000001 0000EA60
------------------
00000000 00000001
------------------
00000001 00004650
------------------
00000001 00000000
00000001 00000000
00000001 000927C0
00000001 000927C0
00000001 00000000
00000001 00000000
00000001 00000000
00000001 00000000
00000001 00000000
00000001 00000000
00000003 00000000
00000003 00000000
00000003 00000000
------------------
00000001 00000000
00000005 21000002
------------------
00000000 0000003C
------------------
00000000 00000009
00000001 00000000
00000001 000927C0
------------------
00000001 000003E8
00000005 21000002
------------------
00000005 11000007
00000005 11000007
00000004 000000E0
00000005 00000003
00000004 000000E4
00000005 21000002
00000004 000000E8
00000005 00000003
------------------
00000005 11000008
00000005 11000008
00000004 000000E0
00000005 00000004
00000004 000000E4
00000005 21000002
00000004 000000E8
00000005 00000004
------------------
00000001 0000EA60
------------------
------------------
00000000 00000006
00000006 0000000F
------------------
PSA Commands:
65040100 00000000
04000100 00000008
0E050100 00000010
65070100 00000018
00010100 00000020
66050100 00000028
660A0100 00000030
66000D00 00000038
12060200 000000A0
00040100 000000B0
65070300 000000B8
12070200 000000D0
65020800 000000EC
65020800 0000012C
00010100 0000016C
00050000 00000000
02010200 00000174
PSA Commands if Params start at: 0x9104BF40
65040100 9104BF40
04000100 9104BF48
0E050100 9104BF50
65070100 9104BF58
00010100 9104BF60
66050100 9104BF68
660A0100 9104BF70
66000D00 9104BF78
12060200 9104BFE0
00040100 9104BFF0
65070300 9104BFF8
12070200 9104C010
65020800 9104C02C
65020800 9104C06C
00010100 9104C0AC
00050000 9104BF40
02010200 9104C0B4
Hurting your eyes?
Action0x1
@184
Appear,
-----------|START|--------------------------
!Unknown-04! 65040100 - 0x578,
Change Subaction - Appear
Stop Horizontal Momentum Mod - HM State=0x2,
!Unknown-07! 65070100 - 0x2,
Synchronous Timer - Frames=1.00x,
!Unknown-05! 66050100 - 0x1,
!Unknown-0A! 660A0100 - 0.30x,
!Unknown-00! 66000D00 - 0.00x, 0.00x, 10.00x, 10.00x, 0.00x, 0.00x, 0.00x, 0.00x, 0.00x, 0.00x, False, False, False,
Float Variable Set - 0.00x, RA-Float[2],
Set Loop - Iterations=0x3C,
!Unknown-07! 65070300 - 0x9, 0.00x, 10.00x,
Float Variable Add - 0.02x, RA-Float[2],
!Unknown-02! 65020800 - LA-Float[7], LA-Float[7], 04-000000E0, IC-Basic[3], 04-000000E4, RA-Float[2], 04-000000E8, IC-Basic[3],
!Unknown-02! 65020800 - LA-Float[8], LA-Float[8], 04-000000E0, IC-Basic[4], 04-000000E4, RA-Float[2], 04-000000E8, IC-Basic[4],
Synchronous Timer - Frames=1.00x,
Execute Loop
Change Action - ID=0x6, Requirement=Item Death?,
----------------------------|END|-----------
Anything look abnormal? YES?
THE MYSTERIOUS DATA TYPE 04?!
someone should look into this
---
The jab stuff is pretty evident in PSA; it's one of the RA-Bit variables; a quick gander makes me think it's 16 but I'm not 100% sure. In any case, just play around with it, and you should be able to figure it out pretty easily.
I think you're pressing the buttons too many times if you are going to rapid jab "automatically". It only requires one properly timed button press to go to the next jab in the sequence, and this holds true even if that jab is a rapid jab. If you want to do a jab sequence and terminate it right before the rapid jab, simply only press the button the appropriate number of times to do that. This is easiest to observe with Mr. Game & Watch who has only a jab1 and a rapid jab. If you press the A button during his jab1 (even only once!), he will then do rapid jab. If you wait until the jab1 has ended to press A, you can do another jab1.
Other than on Pit who has a very odd jab combo with multiple possible outcomes (a rapid jab and a jab3, which based on my casual experiences and not careful testing is decided based on how much you mash), you shouldn't even think of rapid jabs as requiring rapid button inputs. Just think of them like normal jabs for which you can hold the "A" button to extend. The fact that mashing also works is incidental.