Hello! I’m currently experimenting with Unreal Engine for my game project. I’m trying to implement a Thruster (Boost) system similar to the one in Gundam Battle Operation 2 (GBO2). This system is somewhat similar to a stamina-based sprint system in typical TPS games, but GBO2 has a unique feel due to its physics-based movement. When a mobile suit stops moving, it doesn’t halt instantly but instead gradually slows down, simulating the effect of sudden deceleration after a high-speed movement.
Here’s how the Thruster system works:
Pressing Boost (Thruster) → Increases Maximum Speed
- Pressing the Boost button (normally X on a controller) makes the mech accelerate forward rapidly.
- Boosting can be combined with directional inputs (W, A, S, D) to dash in a chosen direction.
- The movement speed during Boost is higher than normal Walking/Running speeds.
Boosting Locks Movement Direction (No Mid-Boost Turning)
- Pressing Boost + W → The mech dashes forward and cannot change direction mid-dash.
- Pressing Boost + A → The mech dashes left and cannot turn while boosting.
- To change direction, the Boost must be stopped first, then restarted in a new direction.
Thruster Gauge (Fuel) Gradually Depletes
- While Boosting, the Thruster energy depletes over time.
- If the gauge runs out → The Thruster Overheats (needs cooldown before reuse).
- If Boost is stopped before depletion → The Thruster recovers over time.
Boosting + Jumping (Thruster Jump / Quick Hop)
- While Boosting, pressing Jump allows the mech to leap forward in the chosen direction.
- The type of Thruster Jump depends on the mech model.
Cooldown Time After Boost Ends
- When Boosting stops, there is a brief cooldown period before the player can control movement again.
- During this period, the mech remains stationary for a moment before regaining mobility.
I’ve been trying to implement this system for a while, but I’m struggling to make progress. Can anyone help me?