Expandable Character controller for 2D platformers based off the work of Noasey.

Godot Asset Store:

Github Repo:

Source material:

Pig assets:

In addition to the amazing parametrization on the base project by Noasey now movement modes are modular. So unneeded code does not live in the character script and so expansion is easier since the code doesn't have to be touched.

There's an included demo that uses all the previously included movement types now made into modules. The debug menu used in the demo can be expanded easily for extra modules, just use the included SpecialMovementSample.gd file to add new movement modes.

All the code is commented and sample movement types have been provided in the source code so you can expand the controller easily.

Default controls for the demo:

  • Arrow keys for movement
  • Z for jumping
  • X for dash and roll
  • C for latch and ground pound

Expandable Platformer Controller 2D © 2024 by Messy Bytes is licensed under CC BY 4.0 

Updated 19 days ago
StatusReleased
CategoryTool
PlatformsHTML5
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
AuthorMessy Bytes
GenrePlatformer
Made withGodot
Tags2D, Controller, Godot

Download

Download
Project Files 3.1 MB

Comments

Log in with itch.io to leave a comment.

Hey, I really like what you’ve done with this controller! However, I’ve noticed a bug with the wall jump. When jumping off the left wall, everything works fine, but when jumping off the right wall, the jump feels significantly more powerful. You can see this issue in the demo you posted.

Ooooh. I'll look into it! Thank you for checking it out and letting me know :D

With pleasure! Let me know if you find any solution. 😊 However, I wanted to ask you something: how can I add another animation? I’ve been trying for 3 hours, but I just can’t get it to work. ^^

(1 edit)

Your animations should be defined in the animated sprite. Animations will appear on the animation section of the inspector (that section can be seen in the screenshot I included in this page, itch isn't letting me add it to this comment).

If you  are not seeing it there after adding them to the animated sprite then it might be some issue with the refresh function, reload the scene and it should be there. 

The way those dropdowns world is each movement type has some animations defined. When those movement types call for an animation they use the animation you define on the inspector. So for example, if you make a new animation in the animated sprite for running you can set it for the run variable in the animation section and you will see it when you start running.

Hey there! I like what you did here. But I think you forgot about wall jumping which is one of the most important aspect of a platformer.

There's wall jumping included! It should be turned on by default. Check the wall jumping section of the settings. It works like in megaman x and you can latch to the wall with C. 

Niceeeeee! Thanks for contributing!

No, thank you for sharing your work. All I did was make it modular and expandable. Your work inspired me :D