Install Asset
Install via Godot
To maintain one source of truth, Godot Asset Library is just a mirror of the old asset library so you can download directly on Godot via the integrated asset library browser





Quick Information

All the informations are on the Github repository page !An advanced and complete state machine first person controller asset, made in Godot 4.-------------------------------------------------------------------------------------------This asset provides a simple, fully commented, finite state machine based controller, camera, as well as a properties HUD.A test map is provided to test the controller.The controller use a finite state machine, designed to be easely editable, allowing to easily add, remove and modify behaviours and actions.Each state has his own script, allowing to easly filter and manage the communication between each state.He is also very customizable, with a whole set of open variables for every state and for more general stuff. This is the same for the camera.The asset is 100% written in GDScript, and respect the GDScript convention.He works perfectly on Godot 4.5 and Godot 4.4, and should also works well on the others 4.x versions (4.3, 4.2, 4.1, 4.0), but you will have to remove the uid files.-------------------------------------------------------------------------------------------Features : - Finite state machine based controller - Smooth moving - Ability to move on slopes and hills - Walking - Crouching (continious and once pressed input) - Running (continious and once pressed input) - Jumping (multiple jump system) - Jump buffering - Coyote jump/time - Air control (easely customizable thanks to curves) - Bunny hopping (+ auto bunny hop) - Dashing (multiple dash system) - Sliding (on flat surfaces and on slopes) - Flying - Camera FOV management - Camera tilt (forward and side tilt) - Camera bob - Camera lean - Camera zoom - Reticle - Properties HUD
An advanced FPS Controller Template made in Godot 4
General
This template provides a complete, advanced and fully commented controller, camera, as well as a properties HUD
A template map is provided to test the controller.
The controller use a finite state machine, designed to be easely editable, allowing to easily add, remove and modify behaviours and actions.
He is also very customizable, with a whole set of open variables for every state and for more general stuff. This is the same for the camera.
The template is 100% written in GDScript.
He works on Godot 4.3 and Godot 4.2. I didn't test it in Godot 4.1 and Godot 4.0, but it should work just fine.
The video showcasing the template features : https://www.youtube.com/watch?v=qdmzIYgVb1E
And the video showcasing the added features of the 2.0 version : https://www.youtube.com/watch?v=3jwx65NFijI
Features
Smooth moving
Walking
Crouching
Running
Jumping (multiple jump system)
Jump buffering
Coyote jump/time
Air control
Sliding (and air slide)
Dashing
Bunny hopping
Wall running
Grappling hook (pull type)
Knockback
Camera tilt
Camera bob
Custom smooth FOV
Pause menu
Options menu (keybinding, video, audio)
Crosshair
Properties HUD
Controls
All keys bindings can be modified
- W, S, A, D (alternatively : up, down, left, right) = move / wall run
- Space = jump
- Left shift = run
- C = crouch / slide
- Left control = dash
- Escape = pause menu
- Left mouse button = grapple hook
- Right click button = knockback tool
Purpose
My main goal with this project was to provide a complete and easy to manage/modify controller for FPS games (It can be apply to first person games in general, even if the movement list has been thinking as an FPS one)
I hope that it will be the case.
I didn't found any bug during the last tests, but i probably missed out a few, so if you find out a bug, feel free to tell me in response to my comment in the showcase video.
How to use
This plugin is a template, which means it's a project that has been designed to be a base of a new project, not an addon to an existing one.
So to correctly use it, you simply have to download it, and then import the project on the Godot app welcome page, and that's all !
All the informations are on the Github repository page !
An advanced and complete state machine first person controller asset, made in Godot 4.
-------------------------------------------------------------------------------------------
This asset provides a simple, fully commented, finite state machine based controller, camera, as well as a properties HUD.
A test map is provided to test the controller.
The controller use a finite state machine, designed to be easely editable, allowing to easily add, remove and modify behaviours and actions.
Each state has his own script, allowing to easly filter and manage the communication between each state.
He is also very customizable, with a whole set of open variables for every state and for more general stuff. This is the same for the camera.
The asset is 100% written in GDScript, and respect the GDScript convention.
He works perfectly on Godot 4.5 and Godot 4.4, and should also works well on the others 4.x versions (4.3, 4.2, 4.1, 4.0), but you will have to remove the uid files.
-------------------------------------------------------------------------------------------
Features :
- Finite state machine based controller
- Smooth moving
- Ability to move on slopes and hills
- Walking
- Crouching (continious and once pressed input)
- Running (continious and once pressed input)
- Jumping (multiple jump system)
- Jump buffering
- Coyote jump/time
- Air control (easely customizable thanks to curves)
- Bunny hopping (+ auto bunny hop)
- Dashing (multiple dash system)
- Sliding (on flat surfaces and on slopes)
- Flying
- Camera FOV management
- Camera tilt (forward and side tilt)
- Camera bob
- Camera lean
- Camera zoom
- Reticle
- Properties HUD
Reviews
Quick Information

All the informations are on the Github repository page !An advanced and complete state machine first person controller asset, made in Godot 4.-------------------------------------------------------------------------------------------This asset provides a simple, fully commented, finite state machine based controller, camera, as well as a properties HUD.A test map is provided to test the controller.The controller use a finite state machine, designed to be easely editable, allowing to easily add, remove and modify behaviours and actions.Each state has his own script, allowing to easly filter and manage the communication between each state.He is also very customizable, with a whole set of open variables for every state and for more general stuff. This is the same for the camera.The asset is 100% written in GDScript, and respect the GDScript convention.He works perfectly on Godot 4.5 and Godot 4.4, and should also works well on the others 4.x versions (4.3, 4.2, 4.1, 4.0), but you will have to remove the uid files.-------------------------------------------------------------------------------------------Features : - Finite state machine based controller - Smooth moving - Ability to move on slopes and hills - Walking - Crouching (continious and once pressed input) - Running (continious and once pressed input) - Jumping (multiple jump system) - Jump buffering - Coyote jump/time - Air control (easely customizable thanks to curves) - Bunny hopping (+ auto bunny hop) - Dashing (multiple dash system) - Sliding (on flat surfaces and on slopes) - Flying - Camera FOV management - Camera tilt (forward and side tilt) - Camera bob - Camera lean - Camera zoom - Reticle - Properties HUD