Log in with to leave a comment.

This is so amazing, thank you.

how do i do the camera?


i was struggling to do a good platformer movement this will really help me . Thanks !


how can I add new states like an attack state, im a little lost

(1 edit)

Yup, to add new states you just need to create functions for the enter, exit, and step logic an example for an attack state would be 

func attack_emter_logic():


func attack_logic():


func attack_exit_logic():


Hi, one question for the airFriction. If i increase the number or lover the number nothing changes. How could i change the air movement speed of the player? Thank you in advance. 

Holy, your completely right I cant believe I didn't catch that. I've updated the files in the GitHub and itch, but if you don't wanna go through the hassle of re downloading it just swap out this line in the move horizontally function:

"currentSpeed = move_toward(currentSpeed, maxSpeed , acceleration"

to this

"currentSpeed = move_toward(currentSpeed, maxSpeed - airFriction, acceleration)"

can I use animated sprites instead of the animation player?

Im sure you can, but I'm not really experienced in using the animated sprite node


I finally had time to actually try this one

My goodness, I like how clean and easy to understand AND extend this template

I added sprinting, then extended double jumps to allow multiple jumps but with a limit. Actually finishing on time for game jams is gonna be cinch... if I stop procrastinating, just maybe. Cries in a corner. 


You are a fucking god my man, I am so sick of creating basic state machines and player controllers at the start of every game prototype <3


I cannot download the asset--- when I click "Download Now" it opens this same page in a new tab.

If your your having trouble downloading the template from itch you could try the github

Thank you!!

(1 edit) (+1)

This is very nice of you to do, keep up the good work! Also is there a way to make the character squash when falling down?

Thank you so much for your kind words. The character already does squash on landing by calling the squash_stretch() function in the fall state when checking if you are on the floor. You can change the amount it squashes, and stretches by changing the landingSquash, and landingStretch vars

oh ok, I get it now thankyou for your respond!

(2 edits) (+1)

hi how do i add a new sprite sheet (nice template i really like it)

To change the sprites on the player first you need to go to the player.tscn file, then click on the sprite node, and change the texture property. 

Next you need to adjust the hframes, and vframes values to the amount of rows and columns your sprite sheet has. 

Lastly you need to click on the AnimationPlayer node and remake the animations to fit how many frames your spritesheet has.

This video goes over the whole process: 


I cant run the code, the error I'm given is that it can't find the function move_towards. Am i missing something?

What version of Godot are you using?


Ah, I was using 3.1, it fixed itself once i tried running it in 3.2!