Hello everyone
As the title says, I find integrating top down movements, animations and extra stuff (like Dodge-Roll, PixelPerfect Movement, dash, or crouching) is OVERLY complicated.
Its always a key feature in any game to have control over the movement of your player, and its always important that its movement and animation transition are smooth and well implemented. But the work needed to implement this is just too much.
I know developing a VideoGame requires passion and hard work, but this being a base feature of any game, and always one of the most important to be polished, its required to be one of the easiest to implement.
TopDown Animations and TopDown Movements behaviors are good tools, but they are unusable once you start developing other features. Idle animations, move animations, triggers, frames, timers, Finite State Machines, transitions… (And it gets EVEN MORE complicated and extense if you want to add Joystick and Android/iPhone UI support) its a lot of time for a feature that is one of the most “basic”, used, shared and explained over the internet guides for gdevelop, and everyone thinks is something very time consuming and overly complicated (and almost everyone has their own way of doing it, one more complicated than the other)
Its something that could be solved if it comes as a prefab that you could import to your own project, then you could edit it. Something that the own program would recognize and know how to handle. You would need to provide animations, “states”, time for each one, and so on…
It would be even better if it comes with something to handle Attack animations, or if you could assign the whole thing to another object like enemies, for example.
And in events only thing i check is is player moving or not and set variable to angle player is moving
Then i can use that variable in conjunction of animation name to give it proper animation
Now adding dash would be only matter of adding another variable for when player is in dash and not
For example i press space and player will dash toward direction he is facing for some period of time i would set with timer
Next i would only need to reflect that in events
To play idle and walk animation when dash variable is false
And play dash animation when dash variable is true and player is moving based on direction variable
I don’t want to say what you are proposing is pointless
Cause i can see how it can be useful for many ppl
But i just want to demonstrate that what you describe as OVERLY complicated
Actually is not complicated at all
Its same story as pealing potatoes
Its not hard its not complicated you just need to sit and do it
I get your point, but try adding and making good transitions between all those stances (idle, walking, running, dodge, crouching, etc) and you have got 60k of potatoes to peal.
I get it, its relatively easy, but that’s why we advance in technology, to get jobs that require a lot of “potato peeling” in less time and easier for everyone.
Its something that would make a big difference as the movement mechanics are a “basic” part of most games…
I know that with this kind of feature everyone would be gratificated, from beginners to experts, as everyone has to peal potatoes to make their dish.
I think this would be easy to implement, important for most people, a big time saver, it would give more time for other stages of development, it would make the program even more beginner friendly, and it would be used by a lot of projects. It would be a win-win for everyone at a low cost.
I see ppl do way more than 60k potatoes in their games so that is not an argument
And just to be clear i am not against your idea in fact i am all in for it
I was simply proposing alternative in case it will not be implemented
Can you see my point, Davy? It would be a big win for everyone. Most people would use it and it would give everyone the chance to focus on other stages of development. We all agree that its an easy task, but a loong one to make. Why not steping up from the “behavior-solution”?
It would be like pre-peeling 60k of potatoes for every restaurant (that wants your potatoes) in the world.
Its a problem when you are using them along other movement mechanics. I always end up just making it myself. I mean, the animator behavior just saves up the “pressing direction key → change animation → stop → get back to start animation” part, right?
It doesn’t help with other top down movement mechanics (like jumping, crouching, dodging, holding position…) that require movement key press + other keys in order to work. I have always found it to be rather a problem when i want to mix it with other mechanics.
It doesn’t help with other top down movement mechanics (like jumping, crouching, dodging, holding position…) that require movement key press + other keys in order to work
It has an action to set the animation name and it automatically suffixes it with a number according to the direction. So, it fits well for what you listed.