I finally found someone who had done real, good testing on this matter.
http://www.smashboards.com/showpost.php?p=8712362&postcount=15
Posts like this one deserve credit. If not for fine user e_alert, I might have had to spend hours working out the real cause of the fusion myself. I didn't test his work, but I can't seem to recreate fusion with what I did.
Anyway, what I did was really simple. Since Nana getting hit (by something that doesn't also hit Popo) during a joint Hammer Squall is what causes fusion, why not just make Nana fully invincible? The move is still interrupted if Popo gets hit; the only real balance effect is that the ICs are pretty much always desynched if they get hit out of this (not that that's likely since the move is super high priority...). Honestly it's probably a trivial balance effect...
Hammer Squall decides whether it's unified or solo very early in the special's code. If it's solo, it uses sub-actions 1D2 and 1D4 (first for grounded, second for aerial). If it's unified, Popo uses sub-actions 1D3 and 1D5 while Nana uses sub-actions 1D6 and 1D7. I used Open SA 2 to find sub-actions 1D6 and 1D7 on Nana; they're offsets 31674 and 316c4 respectively (thanks Dantarion). You can't add lines to random sub-routines with PSA so I just gave ICs a new sub-routine (which for Bbrawl and probably on a fresh .pac as well will be sub-routine 3480c). This contains the Body Status: Invincible line as well as the line Sub-routine: 313e4 which appeared in each of the original actions (it's basically a sub-routine that has the hitboxes; apparently it hits the same way on the ground and in the air). Then I just changed the pointer to that sub-routine in each of the original sub-actions to point to 3480c. This adds a very negligible amount of size to the .pac file which is nice.
The reason I typed that out is because I did this on Bbrawl ICs, not a clean ICs or Brawl+ ICs or any verison of ICs that would be useful to anyone but me. This should make it very easy for anyone to re-create what I did in their own project's .pac. Here's the .pac if people want to test it out anyway:
http://www.filefront.com/15402437/FitPopo.pac
I hope I'm right and that I really did fix it. This bug is really quite horrible, and having this issue resolved could translate to very good PR for Brawl hacking in general.
http://www.smashboards.com/showpost.php?p=8712362&postcount=15
Posts like this one deserve credit. If not for fine user e_alert, I might have had to spend hours working out the real cause of the fusion myself. I didn't test his work, but I can't seem to recreate fusion with what I did.
Anyway, what I did was really simple. Since Nana getting hit (by something that doesn't also hit Popo) during a joint Hammer Squall is what causes fusion, why not just make Nana fully invincible? The move is still interrupted if Popo gets hit; the only real balance effect is that the ICs are pretty much always desynched if they get hit out of this (not that that's likely since the move is super high priority...). Honestly it's probably a trivial balance effect...
Hammer Squall decides whether it's unified or solo very early in the special's code. If it's solo, it uses sub-actions 1D2 and 1D4 (first for grounded, second for aerial). If it's unified, Popo uses sub-actions 1D3 and 1D5 while Nana uses sub-actions 1D6 and 1D7. I used Open SA 2 to find sub-actions 1D6 and 1D7 on Nana; they're offsets 31674 and 316c4 respectively (thanks Dantarion). You can't add lines to random sub-routines with PSA so I just gave ICs a new sub-routine (which for Bbrawl and probably on a fresh .pac as well will be sub-routine 3480c). This contains the Body Status: Invincible line as well as the line Sub-routine: 313e4 which appeared in each of the original actions (it's basically a sub-routine that has the hitboxes; apparently it hits the same way on the ground and in the air). Then I just changed the pointer to that sub-routine in each of the original sub-actions to point to 3480c. This adds a very negligible amount of size to the .pac file which is nice.
The reason I typed that out is because I did this on Bbrawl ICs, not a clean ICs or Brawl+ ICs or any verison of ICs that would be useful to anyone but me. This should make it very easy for anyone to re-create what I did in their own project's .pac. Here's the .pac if people want to test it out anyway:
http://www.filefront.com/15402437/FitPopo.pac
I hope I'm right and that I really did fix it. This bug is really quite horrible, and having this issue resolved could translate to very good PR for Brawl hacking in general.