YesNoOk
avatar

Hit without change enemy state number (Read 4158 times)

Started by Arpad72, August 04, 2016, 07:59:34 pm
Share this topic:
Hit without change enemy state number
#1  August 04, 2016, 07:59:34 pm
  • avatar
    • Hungary
Hi!

I have a problem. I want to create a helper to attack enemy (for example a group of insects), and hit him or her but not
change his/her state number. If he/she walk or jump, then after hit continue the move

Is there any solution?
Re: Hit without change enemy state number
#2  August 04, 2016, 09:34:20 pm
  • **
    • Brazil
    • thundermugen.com/
If I'm not mistaken... There was a bug that was used to make poison effects like this... I don't know how it was done or if it is fixed in MUGEN 1.0/1.1...
Re: Hit without change enemy state number
#3  August 05, 2016, 12:48:13 am
  • ******
  • Loyal to the Game
    • USA
    • http://jesuszilla.trinitymugen.net/
Not really possible to make them pause and then resume their state as if nothing happened.
Re: Hit without change enemy state number
#4  August 05, 2016, 08:57:35 am
  • avatar
    • Hungary
I understood but I really need it. Is there a way to check helper collision to one of the enemey and triggered it and decrease the enemy life?
Could use the helper targetlifeadd? I have tried it do not work.

Re: Hit without change enemy state number
#5  August 05, 2016, 10:49:03 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Can't cause a hit and deal damage yet the opponent is unaffected.

Via the reversaldef bug you CAN retain a target and cause damage without actually having to have an active hitdef. But you'd be effectively faking the hit and there is no guarantee that the p2dist triggers you'd have to use to make it work would = a hit. Especially bad as p2 could be invulnerable, or even have no hitboxes when the thing you're doing triggers.

So tl;dr. Real hitdef will force state change regardless. Fake hit is unreliable and cannot take account of opponent settings.


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: Hit without change enemy state number
#6  August 05, 2016, 01:07:48 pm
  • avatar
    • Hungary
Ok!
I used this in hitdef:

P2stateno=P2stateno

It works but the enemy lost controls if he is in idle mode (use the human as player and as the enemy).
It looks like If jumping then it works

Is there a way to solve the controll problem?

Are maybe some tricks uses movecontact????



Re: Hit without change enemy state number
#7  August 05, 2016, 01:30:30 pm
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
No, that didn't work. What that did was put p2 into your states using the same value as his state. If he was in state 3000, you sent him to your state 3000. He's now in a custom state and won't get control back until he is selfstated. And if you hit him in the middle of anything he has an animation for, he'll repeat it and then be uncontrollable.

You CANNOT bypass this. If you hit an opponent with ANYTHING if they do not have a hitoverride active they are going through a hitstate. Even if the hittime is 0. Doesn't matter. You cancel their attack no matter what.

As stated the reversaldef bug can allow you to deal damage without actually hitting them. But it takes no account of hitboxes or invulnerability, allowing you to damage the opponent even when you shouldn't be able to. Nevermind that the bug requires you to actually hit them in the first place before you can actually use it.


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: Hit without change enemy state number
#8  August 05, 2016, 02:31:25 pm
  • avatar
    • Hungary
Thanks!

I changed my mind. I agree Cyanide and will use hitdef without time pause and the swarm of bugs will attack randomly blocking the enemy action and hit him and slowly will follow the enemy. It will be very irritated.
So I have another questions. The helper need to be destroyed if the enemy hit it. So how can destroy a helper when the enemy hit it but the helper
is setting to unhittable. Is there a way do it or any other idea for destroying:

Sorry for my language use and long write.
Re: Hit without change enemy state number
#9  August 05, 2016, 03:15:47 pm
  • ****
  • Vs Style Debuts Tag Project CEO
  • The Dark Wolf Returns
    • USA
I was thinking of this coding for such...

Code:
;Hit by bugs
[Statedef 7777]
type=U
movetype=H
physics= U

[State 7777]
type = CtrlSet
trigger1= 1

[State 7777] ;This is if the bugs defeated the opponent
type = SelfState
trigger1= !Alive
value=5050


I don't think this'll work though...

As for the helper... you need to code something like this


Code:
;Put this in the Bug helper
[State 1300, 3]
type = HitBy
trigger1 =1
value = SCA, AA, AP


[State 1300, 3]
type = NotHitBy
trigger1 = Time >= 0
value = SCA, AT

[State 1300, 2]
type = HitOverride
trigger1 = 1
slot = 1
time = 1
stateno = 7777
attr = SCA, AA, AP
ignorehitpause = 1

;Bug Helper struck
[Statedef 7777]
type=S
movetype=H
physics= N
anim=9999 ;Blank animation

[State 7777]
type = DestroySelf
trigger1= 1

This may or may not work... depends on how it was coded. If you're gonna use this, be sure the bugs have the blue/green CLSN so they can be hit.
Beware the Dark Wolf once more!
Last Edit: August 05, 2016, 03:25:18 pm by DarkWolf13
Re: Hit without change enemy state number
#10  August 05, 2016, 10:28:11 pm
  • avatar
    • Hungary
Very thanx!!!

It works use DarkWolf13 idea but not needed NotHidBy state.

The helper code is:

; Bug helper
[Statedef 590]
type    = A
movetype= A
physics = N
anim = 590
sprpriority = 1
velset = 0,0

[State 590, HitOverride]
type = HitOverride
trigger1 = 1
slot = 1
time = 1
stateno = 593
attr = SCA, AA, AP
ignorehitpause = 1

[State 590, 2]
type = HitDef
trigger1 = random%50=0
ignorehitpause = 1
attr = A, NA
damage    = 10
hitflag = MAF
guardflag = MA
priority = 3
pausetime = 0,0
sparkno = -1
sparkxy = 0,0
priority = 0, Miss
ground.slidetime = 0
ground.hittime  = 0
ground.velocity = 0
air.velocity = 0,0
air.hittime = 0

[State 590, PosAdd]
type = PosAdd
trigger1 = Time%3 = 0
x = ifelse(p2bodydist X+20>0,5,-5)
y = ifelse(p2bodydist y-enemynear,const(size.height) >0,5,-5)

[State 590, DestroySelf]
type = DestroySelf
trigger1 = time>500

;Destroy Bugs
[Statedef 593]
type=S
movetype=H
physics= N
anim=590 ;Bug fly animation
 
[State 593]
type = DestroySelf
trigger1= 1
Re: Hit without change enemy state number
#11  August 06, 2016, 12:56:24 am
  • *****
  • Shame on you!
    • USA
My Metroid Ultra in my Samus character is a lot like what you want. I've added a few things to it. Like it "dances" if it's attacking P2 and kills him. It flies away after a certain time or energy drain. I think the blocking glitch is still there. (and I think I just thought of a fix for it)
vVv Ryuko718 Updated 10/31/22 vVv
Re: Hit without change enemy state number
#12  June 02, 2021, 12:50:50 pm
  • *****
  • WIP: Tons and tons of IKEMEN stages
Current release: SF vs MK, fully interactive
https://www.youtube.com/watch?v=7bM9DpmVXOA
Re: Hit without change enemy state number
#13  July 13, 2021, 02:14:55 am
  • avatar
  • **
    • Vietnam
Required these line below on any of your hitdef or projectile:

Ground.type = none
P2getp1state = 0
P2stateno = -1

But remember this, this one is using the !time penetration glitch which mean when your chars hit the opponent, his/her time trigger won't be reset and nothing happen to him/her so far as ground.type = none.

BUT

As you using this glitch, your chars won't get any TARGET as gaining target required the ground.type parameter and when you use ground.type = none, your hitdef still work and hit the opponent without changing opponent state or time reset. therefore, your chars won't gain any target and that's the only weakness of this glitch.
------Tremble Mortal and Despair. Doom has come to this world------
Last Edit: July 13, 2021, 02:18:58 am by Archimonde