YesNoOk
avatar

Z2 Compatibility Thread (Read 308546 times)

Started by Balthazar, June 19, 2011, 07:32:16 pm
Share this topic:
Z2 Compatibility Thread
#1  June 19, 2011, 07:32:16 pm
  • ******
    • Netherlands
    • network.mugenguild.com/balthazar/index.html
Hello everyone, so since Goku is getting a pretty bunch of unique states/animations, I thought I'd put them all in one thread.
If you so desire, you may post the sprites you've made for your own character to be compatible to Goku.
If you decide to post your made gifs, and update some time, I think it's nice if you just modify your post, rather then making a new post, so all your sprites are together ;) .

#SPRITES
 
Twist Knockout

This is actually pretty standard stuff, since it's standard in the later KOF and in CVS games. Just make sure it's loop-able. Usually it's just 4 sprites.
You could also go the SFA way and use just 1, and flip that vertically for the next frame, and repeat. It's a bit choppy but it actually works, if you add the twist fx (the only in my Goku gif, for instance). Twist Knockout occurs after Goku does Snap Kick, Blur Kick, etc.

Flip Knockout

Flip Knockout occurs when Goku does the EX Snap Kick. I'd say you only need 2 sprites: first do 1 and then rotate it 45 degrees (in Photoshop) and then sprite that over again. For the remainder of the rotation you can simply keep using those 2 sprites and rotate them 90 degrees. Otherwise just make 1, and rotate it 90 degrees. It goes so fast that I don't think you have to make each sprite light source accurate, but that is entirely up to the creator.

Shocked

Actually Goku hasn't got any attack that shocks the opponent. Future chars of ours might. But hey i think shocking is pretty common, especially for SF/MvC, so it gets in.

Dash Collision

This one you know already. It's used when you run into each other. Use one of these sprites to get the correct height for the hands.

Back Broken

You haven't seen this yet, but this will be the 3rd Kaiyoken Finisher. The gif is just a small preview. You can probably get away with using existing gethit sprites, but ofcourse it's more awesome if they're unique. 2 sprites will do it, a base sprite and another one for a little twitching action.
I made the sprite in 2 parts, so the far leg and arm go behind Goku.

Cursed

This is completely up to the creator to fill in, but in general the cursed state requires animations for: idle, walk, crouch, jump, get hit.


My toes, my toes!

A Turtles in Time reference, there are some moves that cause the enemy a great deal of toes-hurting!

#CODE SNIPPETS
Cybaster has made his own Compatibility section in the Readme of Goku, you'll find everything you need in there.
Last Edit: January 31, 2019, 06:28:05 pm by Just No Point
Re: Cybalthazar's Compatibility Thread!
#2  June 19, 2011, 07:42:23 pm
  • ******
  • Take better care of the plants around u or become
  • the fertilizer that feeds them.The choice is yours
    • Chile
    • network.mugenguild.com/basara/
OMG, this thread give me ideas for new edits for my Eric ;D I'm so happy now!!

Rest in peace, Toriyama-san...
Normal WIPS - ClayFighter - Ideas - Anti-Gouki Project - Lifebars - Facebook - X
Re: Cybalthazar's Compatibility Thread!
#3  June 19, 2011, 07:46:54 pm
  • ****
  • Best supporting character in history of anime.
    • USA
    • www.youtube.com/user/aznperson569M
Cant wait for the collision beam thingie.  :D

Or the code snippets.

uguu
Re: Cybalthazar's Compatibility Thread!
#4  June 19, 2011, 08:56:03 pm
  • *****
  • Master Relic Tech
  • Screenpack Maker EX
Man!, what a awesome idea this is and it just keep getting better. Looking forward to seeing what someone cooks up.
Re: Cybalthazar's Compatibility Thread!
#5  June 19, 2011, 09:23:21 pm
  • avatar
  • ******
    • USA
Dude, this is just awesome.
Re: Cybalthazar's Compatibility Thread!
#6  June 20, 2011, 12:11:26 am
  • ******
  • Loyal to the Game
    • USA
    • http://jesuszilla.trinitymugen.net/
Now I want to make Cell just for the Chou Kamehameha fatality.
Re: Cybalthazar's Compatibility Thread!
#7  June 20, 2011, 01:16:15 am
  • ******
  • Limited time to use Infinite power !
    • France
    • network.mugenguild.com/cybaster/
Hey, this was done without my permission !!! >:( :P

Well, I don't have time to post code snippets for now, but I'll let Balthazar browse in Goku's readme, where I've started writting some tutorials for this type of stuff. He'll be able to post the stuff here himself I'm sure. :P

- Some states are really easy to copy and add to your characters (flip knockout, broken back), as they're just simple animations to add.
- Dash Collision and Chou Kmh fatality are just about copy-pasting some states. Note that the code may still need some tweaking.
-Some others need some good code knowledge to be done, yhings like Beam Collision. I really don't think it's possible to post some "code snippet". I'll give directions on what I did and how my code works, and where to search in the code to copy some stuff, but it really is a thing that has to be coded on a 1-to-1 basis to make sure everything is synchronised correctly.

If you want to add compatibility with Goku Z2, here are the states for which you need to tell me, since I'll need to add triggers to Goku to ensure comptibility by name triggering :
- Dash Collision.
- Beam Collision.
(Balthazar, please add this in the first post).

PS : Balthazar, send me the FX you put on twist knockout, I don't have it. :P (yeah, SFZ3 FX I guess, I'm too lazy to search).
Re: Cybalthazar's Compatibility Thread!
#8  June 20, 2011, 02:08:47 am
  • ***
  • Mumbling voice actor reploid
    • Canada
    • electricvoiceboxmedia.com
This is some seriously beautiful work in terms of spriting and coding. I love what you guys are doing with this. Pushing the limits and trying something fresh are always pretty fun. The Dash collision and fatality look like they're going to be my favorite of the bunch. :)
Re: Cybalthazar's Compatibility Thread!
#9  June 20, 2011, 05:43:31 am
  • avatar
  • *****
Re: Cybalthazar's Compatibility Thread!
#10  June 20, 2011, 06:10:10 am
  • ***
  • Figuring things out, one sprite at a time.
    • irwt.iammanyninjas.com
Any specific animation numbers that should be known about for these things? Might be a version or so back, as I don't see anything mentioning any of these things within the readme file over here. Looking for Dash Collision related snippets in particular, although the Kamehameha part is likely also needed.
Re: Cybalthazar's Compatibility Thread!
#11  June 20, 2011, 06:33:15 am
  • ******
  • Limited time to use Infinite power !
    • France
    • network.mugenguild.com/cybaster/
Indeed, only the current WIP readme has the tutorial section with specific animation numbers. Bleh, fine, I'll post the current tutorial snippets now. ::)

Flip Knockout

This animation is used when Goku hits his opponent with EX Snap Kick. The opponent flies through the screen while flipping. This animation is not a standard in fighting games, and Mugen creators usually put the opponent in a custom state and use AngleAdd to make the opponent spin/rotate.
To make your character compatible with Goku Z2, you have to add at least 3 sprites of your character spinning around the Z axis, with alignment based on the feet, as shown in the following capture:



Once the sprites are in the SFF, create Animation 5937 in the AIR file, which is the standard used for Goku Z2, and you're done. Just adding this animation will ensure that your character will use it when Goku hits him with EX Snap Kick.

On the other hand, you may also want Goku or any of your characters with Anim 5937 to use the Flip Knockout animation whenever possible. When sending the opponent in a custom state to make him rotate with AngleAdd, you may just want to check if the opponent has the Flip Knockout animation with SelfAnimExist(5937), and use it instead.


Chou Kamehameha Fatality

This animation is used when Goku kills his opponent with Chou Kamehameha. The opponent is freezed in a GetHit sprite, fades to black, and finally vanishes, reduced to ashes.
To make your character compatible with Goku Z2, you need to select a GetHit sprite that will be used to create the fade animation. Turn this sprite to black, and simplify it more and more to make the character fade out through the animation. Once this is done, place the sprites in the SFF at the same axis as the base sprite, as shown on the following capture:



Once the sprites are in the SFF, create two animations : Animation 5941 and Animation 5942. Animation 5942 is optional but will make the custom state look better.
- Animation 5941 consists in the base colored sprite displayed for 30 ticks, then the black fading sprites (11 sprites in the case of Goku Z2), and finally an invisible sprite displayed indefinitely.
- Animation 5942 consists in the base color sprite displayed 15 times, each frame for 2 ticks, using the ASD method within the AIR file to make it fade to black. Basically, this animation will be displayed as an explod over animation 5941, because PalFX won't trigger correctly during the pause occuring when the character dies.
It is best to go check Goku's AIR file directly to set up these 2 animations efficiently, especially regarding the ASD method. Just adding these animations will ensure that your character will use it when Goku kills him with Chou Kamehameha.

Since I'm in a good mood, I'll post these too here :
Spoiler, click to toggle visibilty

On the other hand, you may also want your characters with beams to be able to put Goku in this Fatality state. To do this, add this code just after the HitDef of the beam attack state:

[State 3025, p2state - killed]
type = targetstate
trigger1 = movehit && numtarget
trigger1 = target, AnimExist(5941)
trigger1 = MatchOver && WinKO
value = 5941
ignorehitpause = 1
Then, search in Goku's files for states 5941 and 5942 (in states/system.cns), and copy them in your character's files wherever you want. You will probably want to modify the code a little bit to blend with your beam better.


Dash Collision

This state is triggered when two compatible characters run into each other. They will then grab each other and struggle until one of them wins. To make your character compatible with Goku (and some other characters), you will need to modify/code several things:
1- A Run (or at least a Dash) state as state 100.
2- A struggling animation, which consists in a single sprite for Goku.
3- The code for Dash Collision, with the struggling state. You need to have Var(30) free for this move.
4- A few effects. You can use those from Goku and include them in your character, or come up with yours.

1- Concerning the run state, you will just need to add a ChangeState in it to go to the Dash Collision state if you're fighting compatible characters. As such, if you want your character to be compatible with Goku Z2 for the whole community, please inform me so I can add the necessary triggers in the code. Basically, just override the Run code and add this piece of code in it:

; DASH COLLISION ACTIVATION
[State -2, Dash Coll]
type = Changestate
triggerall = enemy,stateno=100 || enemy,stateno=950
triggerall = p2bodydist X = [-30,30]
trigger1 = enemy,name = "Goku Z2"
trigger2 = enemy,name = "awoken Ichigo"
trigger3 = enemy,name = "Anderson" && enemy,authorname="DopeFiend"
value = 950
2- Concerning the struggling sprites, you can do what you wish, just make the sure the hands stay at the same place and are located at a height of about 52 to 68 pixels. Please check Goku's struggling sprite (950,0 in the SFF) for reference. Then, place the sprite in the SFF (as shown in the following image) and create Animation 950:



3- Now you need to add the code releative to the Dash Collision state itself. Search for it in Goku's files : state 950 in states/system.cns.
Basically, the code displays various FX during the whole struggling (smoke, collision FX, white foreground, scaling, notification). Then, a set of PosAdd and width ensures both fighters get placed correctly. Several sounds and envshake occur. Then, the core of the code is there, in a nutshell: var(30) (which HAS to be free for your character) is set to 0, goes up as players smash buttons. After 80 ticks have passed, the character goes to a state depending on if his var(30) is higher than the opponent's or not:
- If he wins, he goes to state 951. You will have to create this one yourself to define what your character does when he wins. You don't have to use state 951 if you don't want to.
- If he loses, he goes to stance state with no control, waiting for the opponent to hit or throw him.
- If there's a draw, he goes in backdash state.

4- Finally, it is also important you add the effects sprites in your character, since only teamside=1 will trigger them. The animation used in Goku are animations 955, 956, 957 and 958. There's also a notification helper in state 13200 (search in states/helpers.cns if you want to use it). Feel free to use all the FX from Goku for Dash Collision, or come up with yours if they don't blend well.
Re: Cybalthazar's Compatibility Thread!
#12  June 20, 2011, 05:33:24 pm
  • ******
  • SNK is life
Chou Kamehameha Fatality - You could do it the other way around... Instead of drawing sprites for each character to fade, you could apply a PalFX to darken the opponent into black, then put a layer on top that's White Opaque, leaving transparent the "black lines" that represent the fading.

It would require, of course, to make the white part very large to cover big charas, but it should work on most regular sized charas.
Re: Cybalthazar's Compatibility Thread!
#13  June 20, 2011, 08:21:43 pm
  • *****
  • StormEX
  • | Content Creator | Gamer | Programmer |
    • USA
    • Twitch.tv/ZayOsirisGaming
Alright Cool! I'll apply this to the characters I'm working on.
Re: Cybalthazar's Compatibility Thread!
#14  June 20, 2011, 11:43:13 pm
  • ******
  • Limited time to use Infinite power !
    • France
    • network.mugenguild.com/cybaster/
Chou Kamehameha Fatality - You could do it the other way around... Instead of drawing sprites for each character to fade, you could apply a PalFX to darken the opponent into black, then put a layer on top that's White Opaque, leaving transparent the "black lines" that represent the fading.

It would require, of course, to make the white part very large to cover big charas, but it should work on most regular sized charas.
That's actually a nice idea, even though it leaves much less control regarding the looks of things. Could perhaps be done for those who don't have the custom animation. :)

Also, I've been changing the code back and forth, but I should be able to remove anim 5942 from the character and replace it by a palFX. This would free one animation and make the copy-pasting easier for others. ;P Not that it changes things much anyway...
Re: Cybalthazar's Compatibility Thread!
#15  June 20, 2011, 11:57:43 pm
  • ****
  • I'm a empty vessel seeking to be filled.
    • USA
Nice, now you got me doing more work for Mel  :'( lol awesome. wish more people thought like you guys.
Re: Cybalthazar's Compatibility Thread!
#16  June 21, 2011, 12:16:18 am
  • ***
  • "I'm not going to Hell alone"
just let me know when I gotta update the sound patch lol you know im waiting for ya Bal lol and i already started making a english sound patch for vegeta even he is not done yet  --; but its good to be early right lol
I was the Perfect warrior! Cold and Ruthless! I lived by my strength alone! Uninhibited by foolish emotion!
Re: Cybalthazar's Compatibility Thread!
#17  June 21, 2011, 12:32:23 am
  • ******
  • Limited time to use Infinite power !
    • France
    • network.mugenguild.com/cybaster/
@ jweezy : I'll send you the update a few weeks prior to release, for you to have time to find the new English sounds. He has a few new voices here and there, but it's the rest of the SFX I guess you'll be concerned with. ;)
Re: Cybalthazar's Compatibility Thread!
#18  June 21, 2011, 01:51:27 am
  • ****
  • I'm a empty vessel seeking to be filled.
    • USA
For the Dash Colission, how is this going to work with high res or HD characters?
Re: Cybalthazar's Compatibility Thread!
#19  June 21, 2011, 01:58:22 am
  • avatar
  • ******
    • USA
It's the same deal as with low res ones, you just need to do some math to know the vertical range where the hands goes.
Re: Cybalthazar's Compatibility Thread!
#20  June 21, 2011, 02:33:10 am
  • ******
  • Limited time to use Infinite power !
    • France
    • network.mugenguild.com/cybaster/
Yep, it doesn't use the opponent's height at all or its resolution to calculate stuff.
Just make the hands of Mel being at a height between 52*2=104 and 68*2=136 pixels for the lowest and highest pixels on his hands.