Blog Layout

Introducing the Lightweight Advanced First-Person Controller!

183:924032007 • 21 January 2023

Easy to setup, fun to play, tricky to master.

This started as a weekend project, but I had too much fun with it!


Features:

  • Wallrun
  • Slide
  • Walljump
  • Mantle
  • Airstrafe
  • Dynamic impulse force


I've always adored the movement systems present in Source engine games, and wanted to try to replicate it with my own spin. The main goal was to give the player both complete control over their movement, as well as a proper sense of momentum and pseudo-physics. I used Unity's character controller component to give me absolute control over the player's movement while also letting me take advantage of features such as the step-offset.


One of the drawbacks of the character controller based approach is the lack of dynamic physics provided by Rigidbody controllers. For instance, if you wanted to have an explosion knockback a rigidbody character, assuming it's designed properly, you could just use Rigidbody.AddForce(). This is something I wanted to maintain with my system, so I added a 'AddImpulseForce()' function to the controller script, which appends the velocity given to the player's velocity at the end of the next physics update, giving the desired effect. This is even used within the script for jumping and mantling.


As you can see in the above gif, there is a stamina system which is enabled by default. Stamina is required to sprint, and sprinting is required to perform the parkour moves. Players regain stamina with every walljump and mantle, and only lose stamina when sprinting on flat ground. This encourages players to chain together different moves to maximise their sprint time, but of course if it fits your game better it can be disabled.

Inspector Values

Customisability was something I wanted to make a priority with this asset, so every physics and control option is exposed to the inspector under the appropriate header and with tooltips to explain what each value is for from the editor. As a dev using this asset you have absolute control over your player's movement.


Get it

The asset is currently undergoing pending review for release on the Unity asset store, where it will be available for $20.

by 183:924032007 20 November 2024
Game is not cancelled, don't worry.
by 183:924032007 6 November 2023
I still love you, itch.io
22 October 2023
Featuring explosives. 
by 183:924032007 19 October 2023
A lot.
by 183:924032007 19 October 2023
I am speed.
by 183:924032007 6 October 2023
Erectin' a dispenser.
by 183:924032007 3 October 2023
Plus, Unity VS My Soul. 
by 183:924032007 26 August 2023
We're gonna need a bi gger CPU.
by 183:924032007 15 August 2023
Ok, it still looks like a Minecraft clone. Trust the process.
by 183:924032007 15 August 2023
That's right, I'm making video games.
More posts
Share by: