Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/projectborealis/pbcharactermovement
HL2-style, classic FPS movement for Unreal Engine implemented in C++
https://github.com/projectborealis/pbcharactermovement
half-life half-life-2 quake source-engine ue4 ue4-plugin ue4-plugins unreal unreal-engine unreal-engine-4 unreal-engine-plugin
Last synced: 1 day ago
JSON representation
HL2-style, classic FPS movement for Unreal Engine implemented in C++
- Host: GitHub
- URL: https://github.com/projectborealis/pbcharactermovement
- Owner: ProjectBorealis
- License: mit
- Created: 2019-05-24T16:59:17.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-01-23T23:59:14.000Z (11 days ago)
- Last Synced: 2025-02-02T18:07:50.320Z (1 day ago)
- Topics: half-life, half-life-2, quake, source-engine, ue4, ue4-plugin, ue4-plugins, unreal, unreal-engine, unreal-engine-4, unreal-engine-plugin
- Language: C++
- Homepage: https://www.projectborealis.com/movement
- Size: 28.8 MB
- Stars: 1,305
- Watchers: 43
- Forks: 164
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PBCharacterMovement
Project Borealis character movement component.
Includes all your standard classic FPS movement from HL2:
* Strafe bunnyhopping
* Accelerated back hopping (and forward and back hopping)
* Strafe boosting
* Circle strafing
* Surfing
* Ramp sliding/trimping/collision boosting
* Wall strafing
* Smooth crouching and uncrouching
* Crouch jumping
* Optional pogo jumping (automatic bunnyhopping): `move.Pogo` cvar
* Optional forward bunnyhopping: `move.Bunnyhopping` cvarMore info in this blog post: https://www.projectborealis.com/movement.
## Binaries
Binaries are compiled for `4.27`, and will work on C++ projects.
If you have a Blueprint project, you must upgrade to a C++ project, or else the game will fail to package.
If you are using a different version of Unreal Engine, you will need to recompile the plugin.
## Redistribution note
Our ladder movement code and sprinting speed logic is game specific and is not publicly redistributed at this time.
# Instructions
1. Paste the [PBCharacterMovement folder](https://github.com/ProjectBorealis/PBCharacterMovement/archive/master.zip) into your project's `Plugins/` folder.
2. Open your Unreal Engine project.
3. Add Enhanced Input actions and mappings for forward, right, look up, turn, jump, and crouch.
4. Create a new player controller in Blueprint or C++. Here's a [simple Blueprint example](https://blueprintue.com/blueprint/l7vxktwk/). Please note this example binds to the legacy input system, but Enhanced Input should similarly bind to the same functions.
5. Create a Blueprint child class of PBPlayerCharacter.
6. Create a gamemode with Default Pawn set to your Blueprint character class, and Player Controller set to your player controller.
7. Enjoy the movement!You may also want to use HL2 gravity settings. Go to Settings > Project Settings > Engine > Physics > Constants > Default Gravity Z and set it to `-1143`.
Additionally, your default physics material should have a friction of `0.8` and restitution of `0.25` if you want Source defaults.