substepping is not a silver bullet, it has its limits. for ex. when substep dt is 0.01 and max substep is 5 then 0.01x5=0.05 → that means the game will slow down below 20 fps. you should maybe define a minumum playable framerate for your game and then configure it accordingly.