|
|
« on: July 23, 2016, 12:42:00 PM » |
|
After toying around with a bunch of coding, I've figured out Aerial Taunting, and I'm here to show you what I did. What's needed: -A FitFighter.pac that has Action Overrides. (Example Image)-Depending on which character you want to edit; PSA, a Hex Editor, and Tabuu, or BrawlBox v0.68b. -On the coding side of things, you'll need 1 to 3 Sub Routines and 1 LA-Bit Variable. (Check out this thread to see which Variables you can use) (Check this Open SA page to see which Variables the game already uses)Now that you have everything you need, let's move onto the tutorial. Part 1 1a.) Setting up the Override Coding. Here, we'll start with the coding for the Action Override itself. We'll be making an Action Override for the Taunt Action, which is Action 268 (BB)/10C (PSA). In BrawlBox, it's as easy as right-clicking on the entry and adding a new Override [ (Example Image)], but if your character can't be edited in BrawlBox, you'll have to use the other tutorial for adding new Overrides. (Link)After you have your Override added, insert the following coding into the newly created Override. A: Grounded Up Taunt (Facing Right) B: Aerial Up Taunt (Facing Right) AA: Grounded Up Taunt (Facing Left) BB: Aerial Up Taunt (Facing Left) C: Grounded Down Taunt (Facing Right) D: Aerial Down Taunt (Facing Right) CC: Grounded Down Taunt (Facing Left) DD: Aerial Down Taunt (Facing Left) E: Grounded Side Taunt (Facing Right) F: Aerial Side Taunt (Facing Right) EE: Grounded Side Taunt (Facing Left) FF: Aerial Side Taunt (Facing Left) Change Action action=0, requirement=Animation End Additional Change Action Requirement On Ground Change Action action=14, requirement=Animation End Additional Change Action Requirement In Air Controller 02 If Button Pressed: 6 If Facing Right: Basic Variable Set: RA-Basic[0] = A Basic Variable Set: RA-Basic[1] = B Else Basic Variable Set: RA-Basic[0] = AA Basic Variable Set: RA-Basic[1] = BB End If Character Specific 0A: Value-0, Else If Button Pressed: 7 If Facing Right: Basic Variable Set: RA-Basic[0] = C Basic Variable Set: RA-Basic[1] = D Else Basic Variable Set: RA-Basic[0] = CC Basic Variable Set: RA-Basic[1] = DD End If Character Specific 0A: Value-1, Else If Button Pressed: 8 If Facing Right: Basic Variable Set: RA-Basic[0] = E Basic Variable Set: RA-Basic[1] = F Else Basic Variable Set: RA-Basic[0] = EE Basic Variable Set: RA-Basic[1] = FF End If If Button Pressed: 9 Character Specific 0A: Value-2, Else If Button Pressed: 10 Character Specific 0A: Value-3, Else If Compare: IC-Basic[8] < 0 Character Specific 0A: Value-2, Else Character Specific 0A: Value-3, End If End If End If Set Loop Infinite If On Ground: Set Air/Ground: On Ground Set Edge Slide: Can't drop off side of stage If Bit is Set: RA-Bit[16] Change Subaction: sub action=RA-Basic[0], pass frame=true Else Change Subaction: sub action=RA-Basic[0] Bit Variable Set: RA-Bit[16] = true End If Additional Subaction Change Requirement: In Air Else Set Air/Ground: Undefined(10) Set Edge Slide: In Air; Can leave stage vertically If Bit is Set: RA-Bit[16] Change Subaction: sub action=RA-Basic[1], pass frame=true Else Change Subaction: sub action=RA-Basic[1] Bit Variable Set: RA-Bit[16] = true End If Additional Subaction Change Requirement: On Ground End If Loop Rest Execute Loop What this coding does is change the Taunt Action to be able to be used in the air, but we're not done yet. We still need to ensure Up Taunt can even be used in the air, as Actions have their own Flags that allow them to be used in the air or not. What we need to do now is edit the Action Flags and Unknown Action Flags (also known as Unknown7 in BB). 1b). Action Flags and Unknown Action Flags Like Action Overrides, editing Action Flags is easy with BrawlBox. You just need to open the dedicated folders, navigate to the given Action (in this case, it's Action 268), and edit them to match the values the Common Action Flags and Unknown7 Jigglypuff's Rest (Action 277) uses. You'll have to open both your moveset and Jigglypuff's file, and compare the values of Action 268 of your file to Jigglypuff's Action 275 (you'll have to open Action Flags, rather than Common Action Flags for this one). It's unfortunately not that easy with the PSA side of things, but it's not as difficult as you think. You just need to open your character and Jigglypuff in Tabuu, navigate to Action ??? and Common/Special Action Flags [ (Example Image)], and make your character's Action 10C match Jigglypuff's Action 115, but you need to right click, and click on Hex View, then edit to match. After that, scroll up, right click, and save. NOTICE: Tabuu will crash when you save your edits. This is supposed to happen. Your edits still saved, so don't panic.Part 2: Button Input Coding This is the part where you insert the coding needed to even activate the Aerial Taunts. Now, depending on whether or not you want to use an external gct code, your coding will be built around what you chose. The said gct code is Independent Sub Routines. (Thread Link)This is also the part in which you make a new Sub Routine. After you've made your Sub Routine, insert the following coding into it. XX: LA-Bit Variable What this coding does is check the following things if the DPad is pressed: Which Action the character isn't in, if they're in the air, if the Bit is not set, and if they're not in water. If all requirements are met, then pressing the D-Pad will put the character into the Aerial Taunt Action. The Actions listed in the coding are Actions in which the character can't interrupt with anything, and the Bit check is there, so you don't go spamming the D-Pad in the air. If you're not going to use the gct code, then you'll need to place the coding inside an infinite loop as such. Next, you'll need to insert the following coding into the DamageFall Sub Action: What this coding does is check to see if the character was previously in hitstun or hanging on a ledge before entering the tumble Action. If the previous Action was either of those, then the Bit will be cleared. Otherwise, the Bit will be set. This is to prevent the character from taunting out of Final Smashes, such as Ike's and Kirby's Final Smashes. Inside the Wait1 Sub Action, you'll place the following coding if you chose to use the External Sub Routines code. X=Offset of the first Sub Routine made in this step. This will clear the Bit used for the Bit check, alongside establishing the start of the Independent Sub Routine If you didn't choose to use the gct code, you'll just insert the Bit Variable Clear command and a Sub Routine command that directs to the newly created Sub Routine, but you'll also have to insert this Sub Routine into every aerial Sub Action that can be acted out of at one point or another. Since it's an infinitely looped string of coding, you'll need to merge Sub Action coding to make room for inserting the Sub Routine. Part 3: Misc Even though not many people will use this, I'm making this to share what I did, while also throwing this out for those who would use this. Thanks for reading. If you come across any issues, make sure you inserted the coding correctly, and are also able to consecutively trigger the issue. If you can, then let me know what's wrong. Otherwise, I'll have to dismiss your issue as you doing it wrong.
|