SUCC - SurfsUp Character Controller¶
A multiplayer-focused, inheritable, state-based first/third-person character controller for Godot 4, written in statically typed GDScript.
Based on the Quake movement code and the physics/mouse-look feel of Valve's Source SDK 2013 - the lineage behind bhop, surf, and every Source-engine mod you've loved.
This is the character controller from SurfsUp, now open-sourced under the MIT License for anyone to use, learn from, and build on.
What SUCC is¶
- Source-engine-inspired movement: WASD, jump, duck, crouch, sprint, air acceleration, bunnyhopping, slope surfing, step climbing.
- First-person and third-person cameras with mouse look and smoothed step transitions.
MovementStateandGameStateextension enums with signals and override hooks.MultiplayerSynchronizer-based networking via a stripped-downSUCCPawnfor remote peers.- Physics tuning via a swappable
SUCCConfigresource - no subclassing required to make a "heavy" or "low-gravity" character.
What SUCC is not¶
SUCC is just the controller. It does not provide health, ammo, scoring, checkpoints, UI, chat, VOIP, or leaderboards. Those live in your game code extending SUCC.
Example games and modes (hunter-vs-prop, surf, bhop, climb) will live in the separate SUCC Demos repo.
Install¶
Godot Asset Library (recommended): search for "SUCC" in the Godot editor's AssetLib tab.
Manual: download the latest release zip from GitHub Releases and copy addons/SUCC/ into your project's addons/ folder. SUCC's scripts use class_name, so Godot registers them automatically - no Plugins toggle needed.
Continue to the Quickstart.