Jump to content

[Mugen] Anyone knows how to correct missing character during specific skill?


Recommended Posts

Posted (edited)

I'm total beginner of Mugen. I played Mugen but never edited something myself. 

 

In 18+ Mugen, there is a insect raper character named "Yarimusi." It is very old character, so maybe this character is outdated. One of Yarimusi's special finishing move is, abducting the victim character to the egg-laying chamber, and laying egg to finish the game. However, whatever character I try, I cannot see the opponent during this finishing move.

 

I attached the debug mode screen shot. From lower left of the screenshot, we can see "ACTIONID: 776" and "STATE NO: 6062". From screenshot, you can see that the opponent victim character become invisible. 

 

Inside the Yarimusi.air file, I can see 

;
[Begin Action 776]
-1,0, 0,0, 6000

But this is everything about Action 776 inside air file and I couldn't find anything further. 

 

So I look for State 6062. In this case, I found multiple cns files contains State 6062 keyword. Those are YarimusiB, YarimusiD, YarimusiE, YarimusiF, YarimusiG, YarimusiG2, YarimusiH, and YarimusiHelper cns files. Among them, I can see YarimusiH.cns contains 77 State 6062 contents, and YarimusiG2.cns contains 50 State 6062 contents. 

 

Since YarimusiH.cns contains the most State 6062 contents and lies at the bottom of st file list from cmd file, I checked YarimusiH.cns file. I can't copy and paste all 77 occurrence but here are some examples: 

[State 6062, キャラ消し]
type = AssertSpecial
trigger1 = 1
flag = invisible

[State 6062, アニメ変え]
type = changeanim
trigger1 = time = 120
value = 2012

[State 6062, ]
type = targetState
trigger1 = Time = 120
value = 18210

...

[State 6062,0]
type = Explod
trigger1 = Time = 120
id = 2010
ownpal = 0
sprpriority = -1
pos = 35, -20
postype = p1
bindtime = -1
anim = 2012
removetime = 300
scale = 1.0, 1.0

[State 6062,0]
type = Explod
trigger1 = Time = 120
id = 2011
ownpal = 0
sprpriority = 4
pos = 35, -20
postype = p1
bindtime = -1
anim = 2013
removetime = 300
scale = 1.0, 1.0


[State 6062, キャラ消し]
type = ScreenBound
trigger1 = 1
value = 0

[State 6062, 位置変更]
type = TargetBind
trigger1 = time = 120
pos = 49, -49


[State 6062]
type = PlaySnd
trigger1 = AnimElem = 4 || AnimElem = 6 || AnimElem = 7 || AnimElem = 8
value = 8150, 2

[State 6062,0]
type = removeExplod
trigger1 = Time = 300
id = 2011

[State 6062,0]
type = removeExplod
trigger1 = Time = 300
id = 2010

...

[State 6062, 位置変更]
type = TargetBind
trigger1 = time >= 0
pos = 49, -49


[State 6062, キャラ消し]
type = ScreenBound
trigger1 = 1
value = 0

[State 6062, キャラ消し]
type = AssertSpecial
trigger1 = 1
flag = invisible

...

[State 6062,0]
type = Explod
trigger1 = Time = 0
id = 2010
ownpal = 0
sprpriority = 4
pos = 35, -20
postype = p1
bindtime = -1
anim = 2010
removetime = 1200
scale = 1.0, 1.0


[State 6062,0]
type = Explod
trigger1 = Time = 0
id = 2011
ownpal = 0
sprpriority = -1
pos = 35, -20
postype = p1
bindtime = -1
anim = 2011
removetime = 1200
scale = 1.0, 1.0
...
[State 6062]
type = PlaySnd
trigger1 = AnimElem = 3 || AnimElem = 8 || AnimElem = 14 || AnimElem = 20 || AnimElem = 26
trigger2 = AnimElem = 32 || AnimElem = 38 || AnimElem = 44 || AnimElem = 50
trigger3 = AnimElem = 56 || AnimElem = 62 || AnimElem = 68 || AnimElem = 74
trigger4 = AnimElem = 80 || AnimElem = 86 || AnimElem = 92 || AnimElem = 98
trigger5 = AnimElem = 104 || AnimElem = 110 || AnimElem = 116 || AnimElem = 122
trigger6 = AnimElem = 128 || AnimElem = 134 || AnimElem = 140
trigger7 = AnimElem = 146 || AnimElem = 152 || AnimElem = 158
trigger8 = AnimElem = 164 || AnimElem = 170 
value = 8150, 2

[State 6062]
type = PlaySnd
trigger1 = AnimElem = 4 || AnimElem = 11 || AnimElem = 17 || AnimElem = 23
trigger2 = AnimElem = 29 || AnimElem = 35 || AnimElem = 41 || AnimElem = 47
trigger3 = AnimElem = 53 || AnimElem = 59 || AnimElem = 65 || AnimElem = 71
trigger4 = AnimElem = 77 || AnimElem = 83 || AnimElem = 89 || AnimElem = 95
trigger5 = AnimElem = 101 || AnimElem = 107 || AnimElem = 113 || AnimElem = 119
trigger6 = AnimElem = 125 || AnimElem = 131 || AnimElem = 137 || AnimElem = 143
trigger7 = AnimElem = 149 || AnimElem = 155 || AnimElem = 161 || AnimElem = 168
trigger8 = AnimElem = 181 
value = 8150, 3

[State 6062]
type = PlaySnd
trigger1 = AnimElem = 181
value = 8150, 1

[State 6062]
type = PlaySnd
trigger1 = AnimElem = 173 || AnimElem = 175 || AnimElem = 177 || AnimElem = 179 
value = 3652, 0

[State 6062]
type = PlaySnd
trigger1 = AnimElem = 173
value = 0, 6

[State 6062]
type = PlaySnd
trigger1 = AnimElem = 173
value = 1, 2
...
[State 6062, キャラ消し]
type = ScreenBound
trigger1 = 1
value = 0

[State 6062, キャラ消し]
type = AssertSpecial
trigger1 = 1
flag = invisible
...



With State 6062, I can see some lines like flag = invisible, Screenbound with value = 0, TargetBind, Explod, and TargetState with some values like 19240, 18210, or 12018. But I really don't know how to fix this.

 

I really hope to resolve this missing opponent. May I ask where to begin with this information to fix this issue? How can I resolve this problem of missing/invisible opponent character during this move for Yarimusi?  

 

 

mugen_debug1.jpg

Edited by sonicdriller06
Posted

Maybe try a MUGEN specific discord.

 

Or spriteclub.tv or twitch.tv/saltybet, both being 24/7 mugen betting channels.  Spriteclub has lower viewers, but you don't need to follow them to chat and creators like to frequent there instead of saltybet.  Spriteclub also has a discord, better chance of getting a reply. 

 

You sound like you're close to figuring out how to fix the problem.  Best of luck to you.

Posted (edited)

As you can see, when a compatible opponent is in the custom gethit state 10010, Mugen changes her animation to 15802.

Kai does have her own anim 15802, so she uses it during the sex sequence.

10010-compatible.png.8f63c1794fefb5d5165217112b4b9c7d.png

Kai's debug shows the number 15802 with a white color, that means that she's using her own animation 15802.

 

When Yarimusi attacks a non-compatible opponent (as in, an opponent who DOESN'T have her own anim 15802), he forces her to use his own anim 4130.

 

Mai's debug shows the number 4130 with a yellow color, that means that she's is using Yarimusi's safeguard animation.10010-non-compatible.png.de4b16243972aa221d701132df208c81.png

 

The attack that I'm showing sends the opponent to the custom state 10010. It uses a Changeanim code for compatible chars (15802) and a Changeanim2 for non-compatible chars (4130), as you can see here:Changeanim.png.52c81c0317a5784daa04781c65d0c11c.png

 

 

The problem is the attack that you mentioned (6062) sends the his victim to the custom hit state 29045.

There, Yarimusi forces her to a custom anim 29045.

Yarimusi himself has that animation, so it shows properly when he uses that attack on himself.

29045.png.2ff17b7c8f0abfb36afe85684e63ce00.png

 

The code in the state 29045 only has a Changeanim code, though. It DOESN't have a safeguard Changeanim2 for non-compatible chars. Every non-compatible char is being sent to an anim 29045 that they don't have.. That's why nothing shows up on screen.

Changeanim29045.png.f4ec889a239ff029308933ff376f75f8.png

If I'm not wrong that code should use

type = Changeanim

instead of Changeanim2, so that the victim could use her own anim 29045 had she had one. 

 

The solution for that, if I'm not wrong, is to give the opponent a proper anim 29045, similar to Yarimusi's one.

In addition, one should change that Changeanim2 line in Yarimusi's code to Changeanim and giving him a safeguard code with a properly coded Changeanim2:

29045-a.png.15e11f6237c1bfa85d13d52b0fef8571.png

 

29045-b.png.b8c403a4c3c9ec5d4e625a88f553a3cb.png

 

tl;dr. Yarimusi's code is incomplete and it wasn't properly tested. That's why that attack only works against himself. Rapist chars like Yarimusi have bugs like this one all the time.

Edited by Zzyzzyxx2nd
Reason: more in-depth explanation
Posted (edited)

Editing that code in the Statedef 29045 from

 

[State 3652,1]

type = ChangeAnim2

Trigger1 = time =0

value = 29045

 

to

 

[State 29045,1]

type = ChangeAnim

Trigger1 = time =0

trigger1 = SelfAnimExist(29045)

value = 29045

 

[State 29045,1]

type = ChangeAnim2

Trigger1 = time =0

trigger1 = !SelfAnimExist(29045)

value = 29046

 

in addition to add an actual safeguard anim like 

 

[Begin Action 29046]

5030,10, 0,0, 20

5030,20, 0,0, 100

Loopstart

5041,10, 0,0, 2

5041,20, 0,1, 2

5041,10, 0,0, 2

5041,10, 0,1, 2

5041,10, 0,0, 2

5041,10, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,20, 0,0, 2

5041,20, 0,1, 2

5041,10, 0,0, 4

5041,10, 0,1, 4

5041,10, 0,0, 4

5041,10, 0,1, 4

5041,10, 0,0, 4

5030,10, 0,0, 10

5030,20, 0,1, 10

 

to his Yarimusi.air file partially fixes the problem, but as you can see, there are more states and anims involved in the code that should be tweaked so that his attack works properly against everybody.

Edited by Zzyzzyxx2nd

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...