Werewood
Posts : 5691 Join date : 2014-08-11
| Subject: MUGEN Tutorial - how to make a "unmovable MUGEN Helper" in MUGEN Wed 28 Dec - 19:34 | |
| MUGEN Tutorial - how to make a "unmovable MUGEN Helper" in MUGEN:In response to Mega_Man's recent MUGEN Help request, I think this might be helpful to those MUGEN makers who want to do a "unmovable MUGEN Helper" in MUGEN: http://mugenmultiverse.fanbb.net/t9446-the-helper-is-a-barrier-that-the-opponent-can-t-go-through --------------------------------------------------------------------------------------------------- The best available MUGEN way to make it possible to happen is by using two (2) MUGEN Helpers, like a MUGEN Inner Helper inside a MUGEN Outter Helper. The MUGEN main player calls the MUGEN Outter Helper and the MUGEN Outter Helper calls the MUGEN Inner Helper and have the MUGEN Inner Helper bind to the MUGEN Outter Helper. I don't know who came up with this MUGEN way and I must say he/she/it must be a MUGEN Genius! The first time I saw and tried to study this "unmovable MUGEN Helper" MUGEN way was with MFFA Ryon Persaud's MUGEN characters (yes, Ryon was inspiring me for a long time already). So here I gave the MUGEN credit to Ryon Persaud. Now, let us start with a little MUGEN in-game scene with Kung Fu Man and Juggernaut : - in case giphy not working for you...:
One day, Kung Fu Man bought a new TV set, when he tried to begin to try it out, Juggernaut appeared and he was so angry that Kung Fu Man's new TV set was blocking his way, then Juggernaut tried to do many things to try to move Kung Fu Man's new TV set out of his sight. Yet, no matter how hard Juggernaut tried, he was still not able to move Kung Fu Man's new TV set.......it was because the "unmovable MUGEN Helper" MUGEN way is installed in the TV set MUGEN Helper.......Juggernaut was so frustrated for the time being..... OK, now the actual MUGEN code for the said "unmovable MUGEN Helper" MUGEN way : => the demo above shows that when Kung Fu Man was doing his normal taunt, his new TV set came out of nowhere, which was a result of calling a MUGEN Outter Helper in his Statedef 195: - Code:
-
[State 195, Helper] ; credit: Ryon Persaud type = Helper triggerall = !IsHelper trigger1 = NumHelper(4140) = 0 helpertype = normal name = "Outter Helper" ID = 4140 pos = 80,0 postype = p1 facing = 1 stateno = 4140 keyctrl = 0 ownpal = 1 supermovetime = 0 pausemovetime = 0 size.xscale = 1 size.yscale = 1 size.ground.back = 45 ;;; the back width of the TV Set sprite size.ground.front = 45 ;;; the front width of the TV Set sprite size.air.back = 45 ;;; the back width of the TV Set sprite size.air.front = 45 ;;; the front width of the TV Set sprite size.height = 100 ;;; the height of the TV Set sprite size.proj.doscale = 0 size.head.pos = 0, 0 size.mid.pos = 0, 0 size.shadowoffset = 0 ignorehitpause = 1 persistent = 1 The MUGEN Outter Helper Statedef 4140 is made like this: - Code:
-
[Statedef 4140] ; credit: Ryon Persaud type = S movetype = I physics = N anim = 4140 velset = 0,0 ctrl = 0 sprpriority = -9
[State 4140, AssertSpecial] type = AssertSpecial triggerall = IsHelper trigger1 = 1 flag = invisible flag2 = noshadow flag3 = nowalk ignorehitpause = 1 persistent = 1
[State 4140, NotHitBy] type = NotHitBy triggerall = IsHelper trigger1 = 1 value = SCA time = 1 ignorehitpause = 1 persistent = 1
[State 4140, Helper] type = Helper triggerall = IsHelper trigger1 = NumHelper(4141) = 0 helpertype = normal name = "Inner Helper" ID = 4141 pos = 0,0 postype = p1 facing = 1 stateno = 4141 keyctrl = 0 ownpal = 1 supermovetime = 0 pausemovetime = 0 size.xscale = 1 size.yscale = 1 size.ground.back = 45 ;;; the back width of the TV Set sprite size.ground.front = 45 ;;; the front width of the TV Set sprite size.air.back = 45 ;;; the back width of the TV Set sprite size.air.front = 45 ;;; the front width of the TV Set sprite size.height = 100 ;;; the height of the TV Set sprite size.proj.doscale = 0 size.head.pos = 0, 0 size.mid.pos = 0, 0 size.shadowoffset = 0 ignorehitpause = 1 persistent = 1 As you can see that the MUGEN Outter Helper is trying to call a child MUGEN Inner Helper (Statedef 4141) and it is made of this: - Code:
-
[Statedef 4141] ; credit: Ryon Persaud type = S movetype = I physics = N anim = 4141 velset = 0,0 ctrl = 0 sprpriority = 0
[State 4141, BindToParent] type = BindToParent triggerall = IsHelper trigger1 = 1 time = 1 facing = 0 pos = 0,0 ignorehitpause = 1 persistent = 1
[State 4141, PlayerPush] type = PlayerPush triggerall = IsHelper trigger1 = 1 value = 1 ignorehitpause = 1 persistent = 1
[State 4141, NotHitBy] type = NotHitBy triggerall = IsHelper trigger1 = 1 value = SCA time = 1 ignorehitpause = 1 persistent = 1 The most important MUGEN magical part is the BindToParent MUGEN State Controller in the child MUGEN Inner Helper! Don't use the BindToRoot MUGEN State Controller unless you are trying to make some MUGEN bonus characters like SFII car, SFII brick, Metal Slug Train, Demon's Wall...etc... The last but not least, the Animations I used in the above MUGEN demo: - Code:
-
; MUGEN Outter Helper (non-existing sprite) [Begin Action 4140] -1,0, 0,0, -1
; MUGEN Inner Helper (TV Set sprite around 90x100 pixels) [Begin Action 4141] Clsn2: 1 Clsn2[0] = -39, -98, 42, 1 4141,0, 0,0, 1000 One thing, if your MUGEN Helper(s) is/are designed to be able to move, then you may need to add more your own MUGEN Triggers to MUGEN magical part -- the BindToParent MUGEN State Controller. | |
|