After exporting my project from my PC to my laptop the physics of my game work differently.

I am currently working on a project which involves a lot of physics. I used to do this on my PC but I would never get above 20 fps in a scene which involves just my character and an environment. This was because my PC was really bad and ran most games on lowest settings on about 20 fps. Because of this I recently bought a good laptop which runs most games on high settings with at least 60 fps. After exporting my project to this laptop
(I did this by copying the Assets and the ProjectSettings folders to a USB stick like suggested in this 1)
the physics are all messed up. For example, I have a self-made rigidbody fps character. I control it by setting the velocity to the horizontal and vertical axis. I also calculate what part of the velocity was a result of the player input and what part of it was a result of outside forces. This way my character always has the same influence on his speed. The outside forces can be infinite. On my laptop my character is about a 100x as fast and it keeps acceleration forever. What seems to be the case is that the script recognizes the player input as an outside force and because of that the velocity can become infinite.

However, when I stop charging my laptop and it goes into what I think is a power conservation mode, because when I do it while gaming I have to turn down my settings a little bit, my game works exactly the way it worked on my PC. However my fps is around ten for some reason.

After I opened a script in Visual Studio for the first time it asked me if I wanted to change my line endings to windows(I am developing a game for windows). I did this because I always received errors about it in the console windows. I think this might be what caused it. since it could have changed my script. However looking though it they seem the exact same. Because of this I am really desperate and I would really appreciate it if someone could help me.

Thank you in advance.

It sounds like you are changing your players velocity in Update(). Try moving it into FixedUpdate() and it will become framerate-independent and should function the same regardless of your FPS.

Edit: Actually, since you are also detecting input you might try leaving it in your update method which is what im assuming you’re using and try multiplying your final velocity by Time.deltaTime