YesNoOk
avatar

Diary of the creation of a P.o.t.S character Part 2: Run Forrest, Run! (Read 2440 times)

Started by Ziltoid, August 30, 2020, 01:25:06 pm
Share this topic:
Diary of the creation of a P.o.t.S character Part 2: Run Forrest, Run!
New #1  August 30, 2020, 01:25:06 pm
  • **
  • Indeed
Previous parts:

Part 1: Basic Movements

Next parts:

Part 3: Custom Combo, Recovery, Guard

Part 4: Lose and Intro animations

Part 5: Constants, Win animations, Taunts

Part 6: Universal Helpers


Part 2: Run, Dash, Evade, Power Charge, Zero Counter, Parry

Greetings, folks! I'm listening to an H.P. Lovecraft audiobook while I'm writing this. I hope this won't affect me and make me create and Eldritch Ryu, with tentacles in his face and pitch-black Hadokens, that induces madness on whoever plays it. Now that I think about it, I think Duracelleur already made one...


In this section we'll talk about the run and dash states, plus some of the iconic features of P.o.t.S-ish characters: the SNK-style evasive moves, the Power Charge, the Alpha style Zero Counter, and finally the ever-beloved SFIII styled Parry.


RUN
This part was unexpectedly linear, no big differences between the reference characters and Ryu. That's because the real customization (I.e. the run speed) is actually on the .cns file. Let's run over it.

(Note: I'm putting some commentaries on the codes, too. Don't skip them over. Or do, I'm no cop.)

Spoiler, click to toggle visibilty

To summarize a bit, these codes just give your character a movement speed based on the values on the .cns and dictate how/when the state changes when you jump, prompting the statedef 40, or stop, prompting the 101. In the 101, you have the same for jumping soon after the stop or just doing nothing.

Anims 100 and 101 are, quite obviously, for the run and the stop.

Spoiler, click to toggle visibilty

DASH
The code themselves for the back dash are, luckily, pretty samey between the reference characters, with some differences regarding the coding of the velocity, both horizontal and vertical. A vertical velocity may seem odd at first, but it can be useful if your character moves from the ground while dashing. Let's dash in.

Spoiler, click to toggle visibilty

New anims: 105 and 106. Which are, guess what? Back dash and stop.

Spoiler, click to toggle visibilty

The following is the first part that needs to get completely re-done. Not because there are big differences between old Ryu and the references, but because Ryu uses some different StateDefs for this dash, and I'll have to change them. It's a bit weird that this one is different when the back one was not, but oh well. Evolution is often funny.

The old StateDef for this dash were 102 and 103. Newer characters had 110 and 111.

Spoiler, click to toggle visibilty

Time to add some more anims. I'm remaking these using Jmorphman's Ken as a template. Note that there's an additional one for Evil Ryu's forward dash.

Spoiler, click to toggle visibilty

DODGE
Another easy peasy lemon squeeze part, luckily. Basically, what we're seeing is the animation, some sounds, a playerpush state (which is the dodge itself, pretty much), an universal hitby state we can leave as it is, and the attacks that can be performed after.

The tricky thing is the fact that in newer characters this is StateDef 700, while in old Ryu is 710 (and 700 is the parry). Worry not, I'll redistribute the means of production the states. Let's dodge in.

Spoiler, click to toggle visibilty

These two nice blocks right before the endstate dictate which attacks will be done right after the dodge. We can customize them freely, but I'll be leaving old Ryu's values (unless I change my mind). The second trigger for the AI attacks was worded a bit differently in the old Ryu, but coded for the same effect. I put the new one.

One thing I changed to suit my tastes is the probability for CPU Ryu to attack with 210 (HP) or 220 (MK) after the dodge. It's 50/50 (random < 500). Insert obvious Thanos quote here.

Now for the animation. It was 710 on old Ryu, now it's 700.

Spoiler, click to toggle visibilty

ROLL
This is a part where customization is vital. While the code itself is fairly easy, each character has different looking animations. As such, positions and velocities must fit the animation.

EDIT: KarmaChameleon pointed out that this was, for the most part, bullcrap. The roll velocity is almost always the same (-5.625), and differences in the distance covered are due to the animation itself.

Again, the state was different on old Ryu, being 720. Here, I'll put it at 710 as in newer characters. Let's roll.

Spoiler, click to toggle visibilty

About that weird PlaySnd block, that was a mean for P.o.t.S to randomize even more Ryu's grunts during the roll, so I went "why not?" and kept them.

Next is the backwards roll, which was 725 on old Ryu and now will be 715.

Spoiler, click to toggle visibilty

Nothing to say here that I haven't said already for the previous section, the code is pretty much the same, the only difference is the negative VelSet value (obviously). I don't think it's mandatory for it to be the exact opposite, I reckon there are characters in which the two roll animation are not symmetrical. But that's not the case.

EDIT: considering what KarmaChameleon told me, this is probably false too.

Another couple of anims: 710 (was 720) and 715 (was 725).

Spoiler, click to toggle visibilty

POWER CHARGE
There's not much room for creativity in this section. There's no reason for changes unless you want to change the mechanic itself for whatever reason.

The code itself is pretty self-explanatory. There's a PowerAdd state tied to the command and the amount of power, with a mathematic value that can be changed to speed/slow down the gain. Then there's the flash, the universal helpers, grunt sounds, and an end state.

As far as differences go, in the old Ryu the power charge was state 740. As usual, I'll change that. Other than that, there's an additional StateDef for the end in the newer characters, so I'll be adding it, even though I don't think it makes any true difference. Let's charge in.

Spoiler, click to toggle visibilty

One thing you need to note is the position of the helper, which must fit the animation. In this case, pos = 0,0 works just fine. By the way, I didn't say that until now, but we'll tackle all these explods later, all at once.

Of course, we need the appropriate 730 and 731 anims.

Spoiler, click to toggle visibilty

ZERO COUNTER
Ah, the beloved SFA mechanic. Call me a scrub, but I never managed to pull these off during an actual fight... I'm more of an offensive player. And by that I mean that you'll probably get offended by how much of a scrub I am.

Again, not much to customize here except maybe the attacks tied to the counter. Let's, uh, zero counter in.

Spoiler, click to toggle visibilty

Once again, the position of the helper must fit the animation, so pay extra care. For the SuperPause, I need to remember to rearrange the sounds. Good thing I have this post as a reference.

One thing I was confused about is the button detect. There's new variable in play here, which we'll see a lot again, so I'll spend two words on it. Var(10) is the button detect trigger. Basically, If you input the punch (412p) command, you'll set the var to = 0 and the 1100 (a Shoryuken) attack will be triggered. If you input the kick (412k) command, you'll set it to = 1 and the 255 (HK) attack will be triggered.

These two attacks themselves can be customized by simply replacing the values with those corresponding to other attacks. I was thinking about putting the Jouen kick instead of the HK, but at the end I decided to leave things as they are.

Spoiler, click to toggle visibilty

PARRY
Since this is a pretty universal move in P.o.t.S styled chars, I found no differences between reference characters as far as the actual code goes. Ryu had some negligible difference, the biggest one being the StateDef number (700). Let's parry carry on (this is getting weird).

Spoiler, click to toggle visibilty

As always, pay extra attention to the position of the hitspark Explod. This time I found some raw numbers in some reference characters, and ceil-based ones in others, including Ryu. I honestly don't see which is the advantage of using one instead of the other, I'd like to hear some opinions.

Spoiler, click to toggle visibilty

Nothing much to say here, it's pretty much the same code again adapted to the crouching and aerial states. Newer characters had an extra StateDef for the falling after the aerial parry, which I gave to Ryu too, of course.

Spoiler, click to toggle visibilty



And that's it for today. Next time I'll be handling the Custom Combo, which will be fun for me, since it has always been something I wanted to learn to implement. And then the Safe Fall and Fall Recovery, and probably the Guard states too.


Before hitting the button, I want to thank everyone who commented and supported my first post. I received much more constructive criticism than I expected, and I appreciated every advice. If I sometimes sound like I don't really know what I'm doing it's because it is mostly true, so please bear with me. But one of the goals of these posts is to learn something, and hopefully give others something they can learn upon. So, I invite everyone to give criticisms and point out any mistake.

Until we meet again, humans! Now I'll restart the audiobook cause I wasn't really listening to it. I'm no multitasker I'm afraid.



Previous parts:

Part 1: Basic Movements

Next parts:

Part 3: Custom Combo, Recovery, Guard

Part 4: Lose and Intro animations

Part 5: Constants, Win animations, Taunts

Part 6: Universal Helpers

Last Edit: September 12, 2020, 07:36:53 pm by Ziltoid
Re: Diary of the creation of a P.o.t.S character Part 2: Run Forrest, Run!
#2  August 30, 2020, 03:53:20 pm
  • ***
  • In a few minutes, bitch
    • Germany
I hope you don't mind if I hijack your thread with some of the insight that I gained coding now 4 characters from CvS2. Most of the stuff here is quite basic and there's not much confusion. There's a couple things that are partially universal and CvS2, and I would like to talk about them.

Back Dash
If you go thru the CvS2 cast you'll find that most of the time there's basically two types of dashes:

1) The character leaves the ground.
2) The character does not leave the ground.

Let's talk about 1) first. Most of the characters (Blanka, Morrigan, Chun-Li, Terry, Kyo, Iori, too many) with this kind of backdash share the exact same set of veloticies and accelerations.

Vel X = -8.125
Accel X = 0.09765625

Vel Y = -5.625
Accel Y = 0.78125

The duration of the animation is determined by the time the character touches the ground, and in that sense, the relationship between Vel Y and Accel Y is crucial. There are exceptions to the rule when it comes to these values, and most of the time it's either Vel X or Vel Y getting reduced/aumented to reflect the agility of the character. Dhalsim has lower vels, for example. Same with Honda. King and Rugal too, for some reason. Some of the characters have different Accel Y values, the most notable one being Sakura who gets half the acceleration and shorter veloticies overall.

There's one value that is universal to all of them, tho. As far as I'm aware of, all of CvS2 cast share the exact same Accel X value of 0.09765625. And this is something that extends to the second type of dash, the one where the character doesn't leave the ground. You'll find this back dash on characters like Yun, Haohmaru, and the shotos. Yes, Ryu. Because of the nature of the move, this back dash doesn't have any Vel Y or Accel Y values, and the Vel X and Accel X values seem to be universal:

Vel X = -5.625
Accel X = 0.09765625 (the same accel as with jumping back dashes)

Now, if you're being patient, you'll tell me: hold the fuck up. The relationship between the vertical velocity and acceleration is what determined the duration of the move. How does that play in here where there are no vertical velocities? And wait a fucking minute Karma, I played CvS2 enough to know that Yun and Haohmaru don't share the same back dash distance.

The thing is, dash back duration is determined by the amount of frames the animation has. Statedef switches to the landing state once the animation stops, hence the !AnimTime trigger on the ChangeState. This means that to determine the amount of frames your character moves, you'll have to alter the framecount of Animation 105.

Last thing: IIRC, Ryu and Evil Ryu share the same values

This being explained (hopefully), I can start talking about the second mechanic you got here...

Roll

I'll start by quoting you.

ROLL
This is a part where customization is vital. While the code itself is fairly easy, each character has different looking animations. As such, positions and velocities must fit the animation.
You're not entirely wrong, but most of the time this is a part where you don't need that much customization.

CvS2 cast share the exact same internal roll values for all of his characters with only 8 exceptions (neither Ryu or Evil is not one of them). This value is an horizontal value (vel X) of 5.625. No acceleration. The snowflakes are Rolento, with the slowest internal value of 4.375; Raiden, Honda, and Zangief, the three of them having a Vel X value of 5; Iori, with his infamous excellent roll that exceeds the "universal" value; and finally Kim, Kyo, and Orochi Iori, all of them sharing the highest vel x value that exceeds even Iori's. You could make a rule here and say: fuck it, heavy characters have a lower value and light characters higher value... And then you find out that Nakoruru, Ryu and Chang share the almost universal value of 5.625.

But hold up, Karma. This time you don't get me. I played enough CvS2 to know that this is not possible. There's no way in the world all of those characters share the same roll values you jabroni. And you claim to be the person who will carry Jmorphman's mantle? Welp, this is because once again the distance covered by the moves is determined by the amount of frames the roll has. You'll find out that different characters have different frames counts in the roll. The more frames the roll has, the longer distance it covers. However, the more frames the roll has, the more predictable it is to punish. Iori's roll is so good because it has a low frame count and a internal vel x value that is higher than usual, this why he covers more distance without compromising his safety.

With this explanation out of they way, I'll like to point out that while it looks like customization is vital, it really isn't. Only 8 out of 48 characters will need different values roll values, and the most important thing to determine at which point of the animation the character should stop and lose his invincibility. The big player here happens on the .air file, where you'll customize the framecount to balance out how much the character rolls. Is important for me to point this out because a common misconception that pops up in new coders, and it corresponds with the second part of your statement:

ROLL
This is a part where customization is vital. While the code itself is fairly easy, each character has different looking animations. As such, positions and velocities must fit the animation.

It doesn't really matter how the character animation looks, what matter is how it functions. Making things look good make for visually appealing characters, making things work properly make for characters that feel good to play. You may think I'm being way too conservative but this kind of stuff matters a lot when it comes to good character design and solid balance. If you don't trust me, ask any SF4 player what does he/she thinks about Rose's back dash. The answer will surprise you :P

With things being say...

TL;DR
* Accel X on backdash is universal (0.09765625)
* Ground back dash is universal in terms of velocities (-5.625), what determines its distance is the duration of the animation.
* Roll velocity is 85% of the time the same value (5.625), what determines its distance is once again the duration of the animation.

Also, I didn't really went thru this on the post but... Try datamining the game. Today's tools leave you everything on silver plate with little to no effort.  Even for games with no data tool you'll have a better experience coming up with "custom" values if you know how CvS2 velocity values usually are.

I hope you have a nice day :)
Last Edit: August 30, 2020, 03:57:10 pm by KarmaCharmeleon
Re: Diary of the creation of a P.o.t.S character Part 2: Run Forrest, Run!
New #3  August 30, 2020, 05:11:02 pm
  • **
  • Indeed
I would never call what you're doing here "hijacking the thread", you contribution is as important as the post itself. I'm very grateful you took the time to give me such an extensive insight, and I'll update the post as I analize it.

I hope you don't mind if I hijack your thread with some of the insight that I gained coding now 4 characters from CvS2. Most of the stuff here is quite basic and there's not much confusion. There's a couple things that are partially universal and CvS2, and I would like to talk about them.

Back Dash
If you go thru the CvS2 cast you'll find that most of the time there's basically two types of dashes:

1) The character leaves the ground.
2) The character does not leave the ground.

Let's talk about 1) first. Most of the characters (Blanka, Morrigan, Chun-Li, Terry, Kyo, Iori, too many) with this kind of backdash share the exact same set of veloticies and accelerations.

Vel X = -8.125
Accel X = 0.09765625

Vel Y = -5.625
Accel Y = 0.78125

The duration of the animation is determined by the time the character touches the ground, and in that sense, the relationship between Vel Y and Accel Y is crucial. There are exceptions to the rule when it comes to these values, and most of the time it's either Vel X or Vel Y getting reduced/aumented to reflect the agility of the character. Dhalsim has lower vels, for example. Same with Honda. King and Rugal too, for some reason. Some of the characters have different Accel Y values, the most notable one being Sakura who gets half the acceleration and shorter veloticies overall.

There's one value that is universal to all of them, tho. As far as I'm aware of, all of CvS2 cast share the exact same Accel X value of 0.09765625. And this is something that extends to the second type of dash, the one where the character doesn't leave the ground. You'll find this back dash on characters like Yun, Haohmaru, and the shotos. Yes, Ryu. Because of the nature of the move, this back dash doesn't have any Vel Y or Accel Y values, and the Vel X and Accel X values seem to be universal:

Vel X = -5.625
Accel X = 0.09765625 (the same accel as with jumping back dashes)

I assumed the values I found on the various characters were arbitrary based on what worked best, case by case. The fact that they're based on the original game makes sense and is, in fact, reassuring.

I'll try to summarize what you're telling me to see if I'm understanding this correctly. All CvS-based character have a constant Accel X value on back dash (= 0.09765625), which applies to both ground-dashing and jump-dashing characters, whereas the universal Accel Y value (= 0.78125) is exlcusive to jump-dashing ones (although it can be adjusted through messing with Vel X and Vel Y).

So, the code for Ryu should be changed as just this:

Code:
[State 105, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(2) > 0
x = 0.09765625

The fact that you're telling me that the Vel X and Y values are also kinda universal is a bit confusing, because I'm seeing different values in each character I look at. Ryu, right now, has a run.back value of -10, 0, while Ken has -4.8, 0.
(It makes me wonder... We're talking about the values under [Velocity] in the Constants.cns, right? Or should I edit the VelSet itself?)

Now, if you're being patient, you'll tell me: hold the fuck up. The relationship between the vertical velocity and acceleration is what determined the duration of the move. How does that play in here where there are no vertical velocities? And wait a fucking minute Karma, I played CvS2 enough to know that Yun and Haohmaru don't share the same back dash distance.

The thing is, dash back duration is determined by the amount of frames the animation has. Statedef switches to the landing state once the animation stops, hence the !AnimTime trigger on the ChangeState. This means that to determine the amount of frames your character moves, you'll have to alter the framecount of Animation 105.

Ok so, the difference between Yun and Haoh is the fact that, although they share the same velocity / acceleration value, the animation itself is longer and thus the acceleration is "in play" for longer, causing a slightly bigger dash distance. It's like saying that two cars with the same acceleration will travel different distances if in one the accelerator is pressed for a longer time. Same thing below about the rolls. Am I understanding this correctly?

About Evil Ryu, I felt confident in keeping the multiplier because Jmorphman's Ken also have one for Violent. But I'll be removing it for now. EDIT: I'm dumb, the multiplier was for Master mode, which of course is overpowered.

You're not entirely wrong, but most of the time this is a part where you don't need that much customization.

CvS2 cast share the exact same internal roll values for all of his characters with only 8 exceptions (neither Ryu or Evil is not one of them). This value is an horizontal value (vel X) of 5.625. No acceleration. The snowflakes are Rolento, with the slowest internal value of 4.375; Raiden, Honda, and Zangief, the three of them having a Vel X value of 5; Iori, with his infamous excellent roll that exceeds the "universal" value; and finally Kim, Kyo, and Orochi Iori, all of them sharing the highest vel x value that exceeds even Iori's. You could make a rule here and say: fuck it, heavy characters have a lower value and light characters higher value... And then you find out that Nakoruru, Ryu and Chang share the almost universal value of 5.625.

Here I probably just expressed myself ambiguously. Sorry about that. But yeah, once again my mistake was rooted in the fact that I didn't understand that there were semi-universal values.

So, in short, the value of 6 I took from old Ryu needs to be changed to 5.625.

With this explanation out of they way, I'll like to point out that while it looks like customization is vital, it really isn't. Only 8 out of 48 characters will need different values roll values, and the most important thing to determine at which point of the animation the character should stop and lose his invincibility. The big player here happens on the .air file, where you'll customize the framecount to balance out how much the character rolls. Is important for me to point this out because a common misconception that pops up in new coders, and it corresponds with the second part of your statement:

ROLL
This is a part where customization is vital. While the code itself is fairly easy, each character has different looking animations. As such, positions and velocities must fit the animation.

It doesn't really matter how the character animation looks, what matter is how it functions. Making things look good make for visually appealing characters, making things work properly make for characters that feel good to play. You may think I'm being way too conservative but this kind of stuff matters a lot when it comes to good character design and solid balance.

Ok, this is an important point you're making. My train of thought was pretty much: "the amount of distance should fit the realistic amount of distance covered by that movement". For example, a small roll should not make the character move as much as someone who does three spinning backflips as his back roll animation. ...which is, in retrospective, a naive thought. If you're telling me there are semi-universal values, I trust you and I'll use those. it suits me better, actually.


If you don't trust me, ask any SF4 player what does he/she thinks about Rose's back dash. The answer will surprise you :P

Nah, I don't think it will surprise me  ;D

I have a question now. What about the forward dash? Is there some rule I should follow, too?

Again, thank you for your insights! I truly appreciate them!
Last Edit: August 31, 2020, 08:19:29 am by Ziltoid
Re: Diary of the creation of a P.o.t.S character Part 2: Run Forrest, Run!
#4  August 30, 2020, 06:10:36 pm
  • ***
  • In a few minutes, bitch
    • Germany
I would never call what you're doing here as "hijacking the thread", you contribution is as important as the post itself. I'm very grateful you took the time to give me such an extensive insight, and I'll update the post as I analize it.
I'm glad :) please note that if I correct something or explain something it will never came from a bad place and it will always be to contribute to the development of your knowledge.
I'll try to summarize what you're telling me to see if I'm understanding this correctly. All CvS-based character have a constant Accel X value on back dash (= 0.09765625), which applies to both ground-dashing and jump-dashing characters, whereas the universal Accel Y value (= 0.78125) is exlcusive to jump-dashing ones (although it can be adjusted through messing with Vel X and Vel Y)..
Yes! I did not went thru all the CvS2 cast but yes. All of them share accel X value and I'd confidently say that you can count with one hand the amount of characters with a jump dash that has an Accel Y value different to 0.78125.

So, the code for Ryu should be changed as just this:

Code:
[State 105, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(2) > 0
x = 0.09765625
Yup.

The fact that you're telling me that the Vel X and Y values are also kinda universal is a bit confusing, because I'm seeing different values in each character I look at. Ryu, right now, has a run.back value of -10, 0, while Ken has -4.8, 0.
(It makes me wonder... We're talking about the values under [Velocity] in the Constants.cns, right? Or am I confusing things?)
Yes, in this particular case we're talking about the values under [Velocity]. I'm pretty sure that the back dash is coded differently on POTS Ryu, which is why it has the -10 value. For Ken's value, I think you might be using an outdated Jman's Ken. Have you downloaded his beta? It's pretty much finished and more in line with modern PotS characters.
https://mugenguild.com/forum/msg.2481154
You'll notice that he has:
Code:
run.back = -5.625,0
the universal value for grounded back dashes.


Ok so, the difference between Yun and Haoh is the fact that, although they share the same velocity / acceleration value, the animation itself is longer and thus the acceleration is "in play" for longer, causing a slightly bigger dash distance. It's like saying that two cars with the same acceleration will travel different distances if in one the accelerator is pressed for a longer time. Same thing below about the rolls. Am I understanding this correctly?
Yes in a vacuum, but have in mind that in this case we're talking about negative acceleration (the character slows down with the passage of time) and it's not really dependent on acceleration itself. I'll say a proper analogy would be to think that the two cars with the same acceleration will travel different distances if they press the brakes at different times. In this sense, Haohmaru and Yun startup with the same velocity and acceleration, but Haohmaru presses the brakes first which is why he covers less distance. To be precise, if I'm not mistaken, Yun dash back lasts two more frames than Haoh.


So, the value of 6 I took from old Ryu needs to be changed to 5.625.
Yes! And don't forget to update the timings on the .air file.

Ok, this is an important point you're making. My train of thought was pretty much: "the amount of distance should fit the realistic amount of distance covered by that movement". For example, a small roll should not make the character move as much as someone who does three spinning backflips as his back roll animation. ...which is probably a naive thought. If you're telling me there are semi-universal values, I trust you and I'll use those.

Yes! They are. The amount of distance it covers depends 85% of the time only on how much the roll lasts, which is why you'll find that shoryuken.com has a chart with the amount of frames it takes each characters to finish rolling:

Code:
24F Iori , Kim , King , Benimaru , Yuri , Athena
25F Balrog , Sagat , Sakura , Terry , Mai , Yamazaki
26F M.Bison , Rolento , Kyosuke , Vice
27F Ryu , Ken , Chun-Li , Honda , Vega , Dan , Maki , Eagle , Yun , Goon , Ryo , Rugal , Nakoruru , Joe , Todo , Haohmaru
28F Guile , Blanka , Raiden , Geese
29F Zangief, Dhalsim , Morrigan , Kyo
30F Hibiki
31F Rock
32F Cammy
33F Chang

Karma's note: These values are not accurate for MUGEN coding in the sense that they come from non-turbo framecount, so as usual, the best way to get frame data is to record at 60 fps and just count frames.

This, that often times is looked upon something to accommodate aesthetics, is a crucial part of competitive gameplay that is worth documenting. While Nakoruru and Chang share the same internal velocity for rolling, Chang covers more distance because he has a longer roll animation, which complements the notion of a larger character covering more distance at a "slower" pace.

Again, thank you for your insights! I truly appreciate them!
It makes me happy to be able to share things that might help to step up the quality in the MUGEN community :)

Re: Diary of the creation of a P.o.t.S character Part 2: Run Forrest, Run!
#5  August 30, 2020, 08:20:06 pm
  • Joy-Con Men
  • Tommy Ber#5446
    • Argentina
Damn this is a good guide! Im keen on seeing how this will continue, good job dude!
Re: Diary of the creation of a P.o.t.S character Part 2: Run Forrest, Run!
#6  August 30, 2020, 09:08:19 pm
  • **
  • Indeed
Damn this is a good guide! Im keen on seeing how this will continue, good job dude!

Thanks! But please bear in mind that this is not intended to be an actual "guide", I don't have the capabilities to give anyone a guide.

I'm glad :) please note that if I correct something or explain something it will never came from a bad place and it will always be to contribute to the development of your knowledge.

Don't worry, your intentions are very clear!

Yes, in this particular case we're talking about the values under [Velocity]. I'm pretty sure that the back dash is coded differently on POTS Ryu, which is why it has the -10 value. For Ken's value, I think you might be using an outdated Jman's Ken. Have you downloaded his beta? It's pretty much finished and more in line with modern PotS characters.
https://mugenguild.com/forum/msg.2481154
You'll notice that he has:
Code:
run.back = -5.625,0
the universal value for grounded back dashes.

I was 100% sure I was using the new beta, but apparently I was using an older version the whole time. Good thing you noticed. And thanks for saving me the time to search for it.

Yes in a vacuum, but have in mind that in this case we're talking about negative acceleration (the character slows down with the passage of time) and it's not really dependent on acceleration itself. I'll say a proper analogy would be to think that the two cars with the same acceleration will travel different distances if they press the brakes at different times. In this sense, Haohmaru and Yun startup with the same velocity and acceleration, but Haohmaru presses the brakes first which is why he covers less distance. To be precise, if I'm not mistaken, Yun dash back lasts two more frames than Haoh.

Clearly. Thanks for the explanation!

Code:
24F Iori , Kim , King , Benimaru , Yuri , Athena
25F Balrog , Sagat , Sakura , Terry , Mai , Yamazaki
26F M.Bison , Rolento , Kyosuke , Vice
27F Ryu , Ken , Chun-Li , Honda , Vega , Dan , Maki , Eagle , Yun , Goon , Ryo , Rugal , Nakoruru , Joe , Todo , Haohmaru
28F Guile , Blanka , Raiden , Geese
29F Zangief, Dhalsim , Morrigan , Kyo
30F Hibiki
31F Rock
32F Cammy
33F Chang

I will be saving this for future reference.