I was working on a small Mario style 2D platformer. For the project capstone, I was to modify the game significantly. Being a programmer and not a good artist, I took a sprite sheet online and worked in making a couple of things like Player Movements. The course already taught Jump and Double Jump. I added two more movements: Crouch and Climbing.

Here is a modified animation showcasing the flow and the FSM.

Crouching (C Keyboard or X on Xbox):

Crouch Movement

Climbing (Up/W Keyboard or LS-Up on Xbox):

Climb Movement

Here is the FSM …

Movement FSM

The below link contains a dist of the concept game. It supports both WebGL and Windows. (For WebGL Chrome will not work due to security reason [blocked access to file:// url via xhr]. You can still try with other browsers, or setup an http-server pretty easily on almost any programming language.)

Distribution – Coursera File