Skip to content
Pablo Rodriguez

Movement Systems

Getting movement mechanics implemented early is extremely important for early level design and iteration. Movement systems allow you to truly feel out level pacing and exploration as you navigate through your world.

Create movement functions in the character master blueprint to be used by both players and enemies:

  • Function name: F_Move_Speed_Walk
  • Set Max Walk Speed to 200
  • Provides slower, deliberate movement
  • Function name: F_Move_Speed_Run
  • Set Max Walk Speed to 500 (default run speed)
  • Standard movement speed for most gameplay
  • Function name: F_Move_Speed_Sprint
  • Set Max Walk Speed to higher value (800-1000)
  • Fast movement with limited duration

Sprint requires additional systems beyond simple speed changes:

  • Sprint Variable: Boolean to track sprint state (on/off)
  • Sprint Duration: 3-second timer for sprint length
  • Sprint Cooldown: 2-3 second delay before sprint can be used again
  • Prevent Spam: Branch check to prevent ability spamming
// Sprint activation check
if (sprint_is_off) {
set_sprint_to_true;
use_move_speed_sprint_function;
start_3_second_timer;
}
// Sprint end after timer
after_3_seconds {
use_move_speed_run_function;
set_sprint_to_false;
start_2_second_cooldown;
}

Update animation blend spaces to support sprint speeds:

  • Horizontal and Vertical Axis: Check “Snap to Grid”
  • Vertical Maximum: Change from 400 to 600 for sprint speeds
  • Animation Nodes: Copy middle animations and paste above for sprint
  • Rate Scale: Set sprint animations to 0.5 rate scale for faster animation playback

Apply these changes to all movement blend spaces:

  • Verify “Snap to Grid” is checked on both axes
  • Increase vertical maximum axis to 600
  • Copy and paste middle animations to top section
  • Adjust rate scale for sprint animations
  • Run animations already set to rate scale 1.5
  • Set stealth sprint animations to rate scale 2.0
  • Provides appropriate speed feeling for stealth movement

Temporary keybind setup for testing:

  • Left Control: Toggle between walk and run (use flip-flop node)
  • C Key: Activate sprint
  • Test all movement speeds to verify proper implementation

Movement speed changes can be subtle. Consider adding:

  • Camera effects to emphasize speed differences
  • Particle effects for sprint activation
  • UI indicators for movement state changes
  • Standard Movement: Use default animation speeds
  • Sprint Movement: Reduce rate scale to make animations feel faster
  • Walk Movement: May require slower animation scaling depending on design goals

Ensure all blend spaces follow the same pattern:

  • Same axis ranges across all blend spaces
  • Consistent rate scaling approaches
  • Proper snap-to-grid settings
  • Complete animation coverage for all speed ranges

The movement system provides the foundation for all character navigation and should feel responsive and appropriate for each game mode’s requirements.