Multiplying by delta not fixing inconsistent speeds

Godot Version

4.7

Question

When I don’t multiply my velocity by delta then movement speed is the same at both moderate and high FPS but still slow at low FPS but if I do multiply by delta then my character becomes slower at high FPS and faster at low FPS

We can’t help you without seeing your code and more context.

Please check Posting guidelines in #Help channel and try to answer all questions posted there.

I figured out that the problem was that I was using get_process_delta_time() when I should’ve been using get_physics_process_delta_time() and or moved the code to a _physics_process function and used regular delta. now the issue is mostly fixed except movement speed is still slower when at extremely FPS but I’m not sure if this is normal or not

If this isn’t normal then the relevant code I am using is

extends CharacterBody2D
var Friction = 15

@onready var Speed = 7000



func _physics_process(delta: float) -> void:
	var direction := Input.get_axis("MoveLeft", "MoveRight")
	if direction:
		velocity.x = direction * Speed * delta
	move_and_slide()

move_and_slide already handles frame-time, velocity is used as per-second a unit; multiplying by delta is actually worsening your frame dependency issue.