YesNoOk
avatar

(Mugen 1.1) Tutorial: BEAMS AND PROJECTILES (Read 15759 times)

Started by Mr. Ansatsuken, April 16, 2016, 08:58:06 am
Share this topic:
(Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#1  April 16, 2016, 08:58:06 am
  • **
  • AS ABOVE, SO BELOW.
  • As within, so without.
    • Chile
    • cornetaneitor@gmail.com
    • ansatsukenmugen.webs.com/

  • Online
Oh, hi. It's been several months, I know.
There's actually just one purpose of this post...
The thing is, I don't know if anyone else already "discovered" it, nor do I know if YOU know how to do this... thing.
You know, in Mugen 1.1, some stages have camera zoom.
So, when you play in 'em, some characters' projectiles are completely bugged.
(And it's even worse for beam-based moves/animations).

So, here's the absolutely easy tutorial for beams/projectiles in Mugen 1.1!

FOR AN ORIZONTAL BEAM...

Just go to the beam helper's state, and past this on it...

[State 0, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1/camerazoom, 1
ignorehitpause = 1
persistent = 1


FOR A VERTICAL BEAM...

Same as for the orizontal beam, but use this one instead:

[State 0, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1, 1/camerazoom
ignorehitpause = 1
persistent = 1

For an explosion that's supposed to cover the entire screen either vertical or orizontally...

Just put "/camerazoom" on the explod's "scale".
I.e.

scale = 0.5/camerazoom, 0.5


Now, for projectiles...

You know...
Projectiles are supposed to dissappear as soon as they get off-screen, riight?
(Most of the times, of course)

Well, instead of using

[State 0, Destroyself]
type = destroyself
trigger1 = pos x != [-280,280]

Just use

[State 0, Destroyself]
type = destroyself
trigger1 = pos x != [-280/camerazoom,280/camerazoom]

And that's it. They will no longer disappear in mid-screen while playing with CameraZoom active.

Oh, of course, you have to change the character's "Mugenversion" to "1.1" in the .DEF file first.


I always release 2 version of each character: the 1.0- one, and the 1.1+ one.
Mainly because of this (other than smooth RGB graphics).
I just use different files for 'em because of the RGB sprites.
But you could include a MUGEN 1.1 patch in your character's files, don't you think?
Just by changing the character's "Mugenversion" to 1.1, and adding those lines mentioned above to the helpers, it will run perfectly in a stage that uses Camera Zoom...

Well guys, that's it. I just thought that keeping this to myself was kind of... a waste.
So yeah, bye.
Spoiler, click to toggle visibilty
Spoiler, click to toggle visibilty
Spoiler, click to toggle visibilty
Last Edit: April 16, 2016, 12:45:23 pm by Mr. Ansatsuken
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#2  April 16, 2016, 11:14:57 am
  • ****
    • USA
    • Skype - TatariZane2009
There's a "Tips, Tricks, and tutorials board" for this. Moving.Moved.
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#3  April 16, 2016, 05:02:53 pm
  • ******
  • Double-Crosser
  • I'm not standing out. This isn't weird at all.
    • USA
That's cool about the beams (assuming the beam itself is a looping single-pixel width). However, from a gameplay perspective, it's probably better to have the projectiles destroy themselves after they reach a certain distance (ie: once it crosses the equivalent of one screen, like past 320 for characters in 4:3 aspect ratio games), because if the projectile is coded accurately to most fighting games, this means that you can throw off someone's projectile-throwing timing just by messing with the camera zoom.
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#4  April 17, 2016, 10:51:01 pm
  • **
  • AS ABOVE, SO BELOW.
  • As within, so without.
    • Chile
    • cornetaneitor@gmail.com
    • ansatsukenmugen.webs.com/

  • Online
That's cool about the beams (assuming the beam itself is a looping single-pixel width).
It works for any kind of beam actually.
(My Akuma, Dan and Ryu use this method, and their beams do scale perfectly).
I've patched several beam-using characters (Infinite's Gouken/Dr. Doom, some Terry Bogard chars, etc...) for my shitty personal MUGEN and it works completely fine, too.

Oh, by the way, I forgot to say, you have to make the beam's hitboxes as excessively LONG as possible.

About the projectiles, though, (without this method) they won't even appear if the character isn't close enough.
Like, he'd yell HADOUKEN!!! and nothing would happen at all.
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
New #5  April 18, 2016, 04:03:49 am
  • ***
  • The other Indian
    • India

  • Online
Oh, by the way, I forgot to say, you have to make the beam's hitboxes as excessively LONG as possible.

This method did not work on characters like Rajaa's Supergirl and Buckus' Cyclops.  Worked for Loganair's Thor though.
Last Edit: October 12, 2016, 11:51:48 am by YugaCurry
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#6  May 04, 2016, 12:25:53 am
  • **
    • Brazil
Thank you very much Mr. Ansatsuken, very helpful !!!
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#7  May 04, 2016, 01:28:09 am
  • ******
  • Loyal to the Game
    • USA
    • http://jesuszilla.trinitymugen.net/
Oh, by the way, I forgot to say, you have to make the beam's hitboxes as excessively LONG as possible.

What.

No.

Loop it over time. Otherwise it's just going to be a huge, instant attack box. This is what the Marvel games do, particularly for Cyclops and Cable.

If you don't want a loop, you can do the old fashioned way of just extending the hitboxes.
lel
#8  May 07, 2016, 04:56:59 am
  • **
  • AS ABOVE, SO BELOW.
  • As within, so without.
    • Chile
    • cornetaneitor@gmail.com
    • ansatsukenmugen.webs.com/

  • Online
Oh, by the way, I forgot to say, you have to make the beam's hitboxes as excessively LONG as possible.

What.

No.

Loop it over time. Otherwise it's just going to be a huge, instant attack box. This is what the Marvel games do, particularly for Cyclops and Cable.

If you don't want a loop, you can do the old fashioned way of just extending the hitboxes.

But this doesn't only apply to "looping sprite"-based beams, I mean...

For example, on my Ryu's Shin Hadouken's first 3(6) frames, the hitboxes will be like these (a bit smaller on the first 2  frames of course).


However, because of how the beam looks, at this point I HAVE TO give it extremely-long hitboxes. Since it's supposed to be covering the whole screen already.


In fact, this method isn't as useful for beams that use the "looping" thingy.
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#9  May 08, 2016, 07:31:26 pm
  • ***
  • The other Indian
    • India

  • Online
What about something like Kamekaze's Hulk's gamma wave? Could this work for that too?
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#10  May 08, 2016, 10:23:45 pm
  • **
  • AS ABOVE, SO BELOW.
  • As within, so without.
    • Chile
    • cornetaneitor@gmail.com
    • ansatsukenmugen.webs.com/

  • Online
What about something like Kamekaze's Hulk's gamma wave? Could this work for that too?

The problem is, Hulk's Gamma Wave is neither a beam nor a projectile.
For example, the light version goes like this


While the heavy version goes like...


So, it is pretty much like Dan's Gadoken. It's supposed to go just to a certain distance.
But if you wanted that distance to scale with the Camera Zoom, you'd have to modify the whole move (not just the rock helper).
Last Edit: May 08, 2016, 10:27:23 pm by Mr. Ansatsuken
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#11  May 08, 2016, 10:57:21 pm
  • ******
Now, for projectiles

[State 0, Destroyself]
type = destroyself
trigger1 = pos x != [-280/camerazoom,280/camerazoom]

Why use this at all? Just use FrontEdgeDist<=X with a negative interger instead. That way they'll disappear when they're off screen past P2.
Last Edit: May 08, 2016, 11:04:39 pm by GSN
Re: (Mugen 1.1) Tutorial: BEAMS AND PROJECTILES
#12  May 09, 2016, 07:11:07 am
  • **
  • AS ABOVE, SO BELOW.
  • As within, so without.
    • Chile
    • cornetaneitor@gmail.com
    • ansatsukenmugen.webs.com/

  • Online
Now, for projectiles

[State 0, Destroyself]
type = destroyself
trigger1 = pos x != [-280/camerazoom,280/camerazoom]

Why use this at all? Just use FrontEdgeDist<=X with a negative interger instead. That way they'll disappear when they're off screen past P2.
Heh, I was thinking the same thing.
It's just I only got to test the first method.
I guess both methods work then, lel