Issue with player control on higher refresh rate than 60 Hz

Even forcing 60 fps using doesn’t work properly:
game.forceSingleUpdate = false;
game.time.desiredFps = 60

On 120 Hz is 2x faster and on 30Hz is slower by 50%. How to solve this problem? Why forcing 60 fps doesn’t work properly on different monitors?

Which Phaser version are you using?

Try Phaser CE game loop plot. Set forceSingleUpdate and desiredFps in the panel. Screenshot.

Which things are faster/slower, and how can you tell?

I’m using Phaser CE v2.20.0
Basically player ship movement is 2x faster on 120 Hz monitor
Here’s example

How to use this https://codepen.io/samme/full/RZKMMw ? WHat should I input there?

Or what’s the best way to control player speed as looks update function isn’t best place.

  • Open https://codepen.io/samme/full/RZKMMw on the 120 Hz monitor
  • In the panel on the right, turn off game: forceSingleUpdate.
  • In the panel on the right, set time: desiredFps to 60.
  • Wait a few seconds.
  • Screenshot the window and post it here.

What’s this code now?

Ok I have sorted using trick. So lets say I need default value of 2:

player_ship.speed = 120 * 0.001 * game.time.delta;

this works like a harm on any refresh rate :slight_smile: