YesNoOk
avatar

MegaMan boss help: Super Armor (Read 2128 times)

Started by RedDragonCats17, June 08, 2019, 03:11:36 pm
Share this topic:
MegaMan boss help: Super Armor
#1  June 08, 2019, 03:11:36 pm
  • ***
  • Part-Time MUGEN creator
    • USA
    • Skype - reddragoncats17
    • reddragoncats17.weebly.com/
So I need help with the bosses now, and it's not about their moves, it's about how their Super Armor is supposed to function.

Currently, I'm using the Super Armor KameKaze gave me, and it does work, but to a certain degree. Whenever I hit Deathtanz Mantisk, using him as a example, he'll just stand around and do nothing, and if I keep hitting him, he'll go into his hit state. What I want the Super Armor to do is to have Deathtanz tank EVERY hit, and only bounce back when using a certain attack. MegaMan Zero's charge punch from his recoil rod has enough shock value to bounce Deathtanz or another attack, and the same goes for Omega Zero's charge slash. The bosses' weakness weapons should also bounce the bosses back.

So, how do I make the Super Armor work this way? I want to get at least a few bosses done before I even finish any of the playable characters for the sake of making their trailers.
Re: MegaMan boss help: Super Armor
#2  June 09, 2019, 06:13:08 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Most super armour works via hitoverride. Assuming you are using that use an attr value on the special hitdefs that triggers a different hitoverride code.

Or make use of the lesser used hitdef values and reference them with gethitvar in the override state itself to send him elsewhere. Iirc fallenvshake and envshake can be set to be unnoticed but still referenced.

Lastly if he's not just tanking everything and you haven't resolved that already its because you are once again not attempting to understand the code you have or why it acts like that.


In M.U.G.E.N there is no magic button

They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance.
Re: MegaMan boss help: Super Armor
#3  June 09, 2019, 08:47:35 pm
  • ***
  • Part-Time MUGEN creator
    • USA
    • Skype - reddragoncats17
    • reddragoncats17.weebly.com/
Okay, Imma be honest with you, I do not understand the code at all. I've been trying to dissect it to the best of my ability, and I'm just confused as hell.

Here it is:

Spoiler, click to toggle visibilty

-----

Kamekaze? Instructions...? please?
Last Edit: June 11, 2019, 06:33:13 am by RedDragonCats17
Re: MegaMan boss help: Super Armor
#4  June 11, 2019, 02:16:19 pm
  • ****
  • Robotics Engineer
    • USA
    • altoiddealer@gmail.com
You can only squeak by so long without knowing coding.

If you don't understand something, just go Search (Ctrl+F) it in the State Controller Reference or Trigger Reference.  Also Basic Parts of a State (particularly Details on StateDef).

From top to bottom, study each controller and figure out what its purpose is... when it can trigger... what happens when it does... etc.

[Statedef 9000]
type = U ;NO CHANGE, FROM WHATEVER PREVIOUS STATE WAS
movetype = H ;THIS IS A HIT STATE
physics = U ;NO CHANGE, FROM WHATEVER PREVIOUS STATE WAS

fv = 10 ; that's a float var.  Float has a decimal place (non-integer value).  You are storing your character's current X (horizontal) velocity (a float value) to var 10, at the very beginning of the state (Time = 0)

You are changing animation every tick throughout the state to whatever elem var(34) is.  You probably captured it in State -2 so it freezes on the same animation that was playing before getting hit.

The VelAdd only triggers if the character is not moving horizontally (is stationary).  It then only triggers if the character is either dead, or the current HitTime (fetched from the enemy's HitDef parameter) is less than 1/2 the time in the current hit state.   So in State 9000 if the vel X hits 0 at Time = 10, and the HitDef had a HitTime of something like 30, then it would trigger.  Then, it sets an X velocity depending on whether or not your character was previously in an Attack state (because your current statetype would continue to be "A" due to the "U" parameter used in the StateDef ["Unchanged"])

The PosAdd will move you 3 pixels, every 3 ticks, if the Time condition is true
The next one does the same except -3 pixels every 2 ticks, if the Time condition is true.
This combination probably causes a "vibrating" effect.

...Etc.  Get a general understanding, and you'll be able to read this as easily as whatever your favorite book is.

Last Edit: June 11, 2019, 02:19:30 pm by altoiddealer
Re: MegaMan boss help: Super Armor
#5  June 12, 2019, 05:37:29 pm
  • ***
  • Part-Time MUGEN creator
    • USA
    • Skype - reddragoncats17
    • reddragoncats17.weebly.com/
Okay, so I've partially solved the problem of Deathtanz not getting the Super Armor all the time, and it's from this code:

Code:
[State -3]
type = HitOverride
;trigger1 = PrevStateNo != 9000
trigger1 =animelemtime(6)<0
time = 1
slot = 7
attr = SCA, AA, AP
stateno = 9000

Turns out that I forgot how this code works until I looked back at the messages Kamekaze sent me, as well as the code he sent me as well. So I switched triggers, and now Deathtanz is now tanking a lot of hits; however, there are times when I get a little overboard with my attacks, and he gets into state 5000, which is not what I want.

Edit: I changed the time from 1 to -1, and I'm testing it right now. So far, Deathtanz hasn't flinched. I'm going to hit him a whole lot more times to see if he'll flinch or not. Let's see what happens.

------

Okay, I don't think Deathtanz is going to head to state 5000, so let's move on to another thing, his hit stun.

Now since Deathtanz is not a elemental character, his only weaknesses are attacks with very high shockwave value. For MegaMan Zero, those 2 attacks are Zero's charged Recoil Rod (state 360), and Omega Zero's charge slash (state 305). When he gets hit, he'll hop backwards no matter if he's on the ground or in the air (typical). So how can I do that?
Last Edit: June 12, 2019, 05:43:51 pm by RedDragonCats17
Re: MegaMan boss help: Super Armor
#6  June 22, 2019, 10:25:37 am
  • *****
  • Shame on you!
    • USA
Just seen this.
Cyanide has given you most of the answer. You should be able to dig through and find the chunk of code he talked about. Then you'd be able to ask about advice on triggers.

Since you know which moves you want to trigger from 1 character you have a decision to make.
If P1 hits P2, does P1 decide what happens to P2, or does P2 decide??
Then that'll splinter down into, if P2 decides, will he be able to decide against ONLY 1 char, or EVERY char??
     If every char, how will you define what all those chars have in common???
vVv Ryuko718 Updated 10/31/22 vVv
Re: MegaMan boss help: Super Armor
New #7  June 23, 2019, 03:57:09 am
  • ***
  • Part-Time MUGEN creator
    • USA
    • Skype - reddragoncats17
    • reddragoncats17.weebly.com/
Okay I tried to make the hit state myself using the wall bounce code I did for Zero's charge punch, and I am encountering a problem. Watch this video.

https://streamable.com/porb7

As you can see, the regular punch hits Deathtanz no problem, but the charge punch seems to be doing nothing.

Here's the hitdef for the charge punch itself:

Spoiler, click to toggle visibilty

I'm willing to bet that it's the super armor's hit override. What do you guys think?

-------

Okay, so I was right. I found out that P2StateNo will not work if the enemy has a hit override, and I also found out that TargetState doesn't work either according to the MUGEN Class boards. I thought TargetState could work when I've read JNP's post, turns out it doesn't.

So now I'm confused. What's the proper way to get around the hit override.
Last Edit: June 28, 2019, 08:16:14 pm by RedDragonCats17