Regarding the Display Direction of Accelerating Moving Objects

Currently, I am enabling acceleration movement in MoveAndJumpSettings to create a character that slides on the ground.

In the animation set settings, I have enabled “Auto Flip Y Axis.” However, when accelerating to the right and then pressing the left key, I want the character to immediately face left and decelerate.

However, in actual behavior, the character continues facing right while decelerating and only flips to face left once the speed reaches zero. This suggests that the facing direction is switching based on the amount of left/right movement.

My goal is to change the facing direction immediately in response to key input. If there is a setting to achieve this, could you please guide me?

Additionally, I considered disabling “Auto Flip Y Axis” and separating states for left-facing and right-facing, but since this would make the visual script more complex, I would prefer to avoid this method if possible.

Thank you for your assistance.

1 Like

Currently, it seems we have no choice but to separate the states. Here is a proposal for how to do that.

What if we add a “Deceleration State”?

For example, we could split the transitions from movement based on the following three conditions:

  1. No input is given, and the variable x_speed is equal to 0. (Standard stop action)
  2. Left input is given, and the variable x_speed is greater than 0. (Reversal from right movement to left)
  3. Right input is given, and the variable x_speed is less than 0. (Reversal from left movement to right)

The added deceleration actions would be configured as follows:

  • For the reversal action from right to left, set a left-facing image. Then, transition to Idle when the variable x_speed is equal to 0.
  • For the reversal action from left to right, set a right-facing image. Then, transition to Idle when the variable x_speed is equal to 0.

With this approach, we gain the following benefits:

  • The number of movement actions does not increase, minimizing the complexity of the visual script.
  • Deceleration can be made flexible. (For example, stopping at twice the speed during the deceleration action, playing a braking sound effect like “ki-ki-ki”, or setting a dedicated animation)
2 Likes

Thank you very much.
It is also very helpful that you provided a solution. I will use it as a reference.

I understand that we currently have no choice but to separate the states.

Thank you once again for your response.

2 Likes

In the accelerated movement settings, even if you reverse direction while jumping, it doesn’t reverse immediately. This wasn’t an issue in MV, so I’d like this to be addressed as a bug if possible.

1 Like

Even though acceleration settings are configured, the fact that it does not accelerate while airborne is, in a sense, an abnormal specification, which could also mean the Action MV side was a bit off.
(Of course, some users may feel that this behavior is more convenient!)

In this version, you can switch acceleration movement on/off by modifying object properties via actions.
How about switching it off with the Jump action and turning it on with the Landing action?

1 Like

Thank you.
I was also anticipating the behavior of the Access MV, so I am a bit confused.

Thank you for providing an alternative solution.
However, since I want the movement to retain inertia even while jumping (in mid-air), I would like to be able to change direction at any arbitrary timing, even when acceleration-based movement is active.

(In the previous work, I recall that direction could be specified by assigning 90 or 270 to the display direction variable even during acceleration-based movement, but it is not working properly this time…)

1 Like

I also liked the MV’s behavior, so I’m casting my vote (^^; Also, I’ve been searching ever since I received a reply from Moonling, but I just can’t find the “Other Action Selection” screen… Is it not about modifying the properties of Switch/Variable in the Add Execution Action of Visual Scripting?

Ah, sorry, I posted it in the English version; changing the switch variable is correct.
My apologies.

1 Like

Oh, was it correct? I thought it wasn’t here because I couldn’t find the item named _normal_accel_move… I’ve been working with 1.0.5, but is it possible that the item has been removed? Anyway, it seems like it will take quite some time to master this (^^;)


Here is a screenshot of the relevant tab. The scrolled portion is also posted on the right. There is no item named _normal_accel_move, correct? Could it appear if I check a box elsewhere? The current version is 1.0.6. It was not present in 1.0.5 either.

Dear Kome,
Has “MoveAndJumpSettings” been specified in the “Node Name to Change”?
This should bring up _normal_accel_move.

1 Like

suiran-san,

Thank you! I found it. I mistakenly assumed that since the node name at the top matches the object’s name, it would naturally differ from the image you provided (^^; However, the acceleration movement behavior in the Access MV did seem more natural, so I would have liked it to be done that way. With the current AGM acceleration movement behavior, there doesn’t seem to be any suitable use case… Thank you for your advice!

1 Like

I tried creating it as you instructed, but the behavior did not change. After trying various things, I found that checking “Do not accept changes to the display direction during operation” in the “Right-to-Left Flip” state resulted in the desired behavior. Is this the correct function of this checkbox? I apologize for asking repeatedly.

The effect of this check is, as its name suggests, that the display direction will no longer change during operation.
By default, the display direction of the animation is automatically changed to face the same direction as the movement direction.

1 Like

If that’s the case, it might still be a bug. When the checkbox is selected, it slides while reversing. Additionally, I’ve been testing various scenarios by running the VS you provided and observing the console output, but when reversing again during a reverse walk, the graphics do not change. Therefore, I created links to transition from right-to-left reversal to left-to-right reversal, and vice versa, but if the reversal happens immediately after another reversal, it enters a moonwalk state. I plan to investigate this further, but I would appreciate it if you could check the behavior that might indicate the bug mentioned above. P.S. It seems the checkbox for “Do not accept changes to the display direction during motion” for the states of right-to-left reversal and left-to-right reversal is inverted.

On my end, it works normally with the “Do not accept changes to display direction while in operation” option unchecked, so there might be a configuration error related to some animation settings…?

1 Like

I see, hmm, then I’ll try various things again. Thank you for your busy time m(__)m

For now, I tested the above settings using the sample player character from the tutorial.

1 Like

I suspect this is because I am using original graphics instead of bones, so I tried setting up the aforementioned VS with the tutorial’s sample player character, but the situation remains the same.
When the checkboxes for “Do not accept changes in display direction during animation” are selected for both the “Flip from Right to Left” state and the “Flip from Left to Right” state, the character flips smoothly as desired. However, if I flip again immediately after flipping, it enters a moonwalk state.
I attempted to record a video to show the behavior in both the tool screen and the game screen, but it seems I cannot upload mp4 files here.

It should work even if you do not check “Do not accept changes to display direction,” but does it fail if you don’t check it?
Ah, sorry. I tried again on my end, and indeed, it does not work this way.
Please wait a moment.