You are correct, if the game is running at a different FPS the player will seemingly move faster or slower!
The solution is to multiply the speed by the delta
time, this way regardless of the FPS movement will be consistent.
This was also discussed recently in this thread Need Help With Delta Time
The delta parameter in the _process() function refers to the frame length - the amount of time that the previous frame took to complete. Using this value ensures that your movement will remain consistent even if the frame rate changes.
From docs Coding the player — Godot Engine (stable) documentation in English