Blog Layout

Introducing the Lightweight Advanced First-Person Controller!

183:924032007 • Jan 21, 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 06 Nov, 2023
I still love you, itch.io
22 Oct, 2023
Featuring explosives. 
by 183:924032007 19 Oct, 2023
A lot.
by 183:924032007 19 Oct, 2023
I am speed.
by 183:924032007 06 Oct, 2023
Erectin' a dispenser.
by 183:924032007 03 Oct, 2023
Plus, Unity VS My Soul. 
by 183:924032007 26 Aug, 2023
We're gonna need a bi gger CPU.
by 183:924032007 15 Aug, 2023
Ok, it still looks like a Minecraft clone. Trust the process.
by 183:924032007 15 Aug, 2023
That's right, I'm making video games.
by 183:924032007 27 Jun, 2023
We've been here before.
More posts
Share by: