I am making a movement system for my fps game, I’ve done some research on movement systems and I gather that the best way would be to scrap the default movement system and make a new one using inputs and lookVectors.
How would I go about disabling the default Roblox movement system?
Just disbale the movement controller in player scripts.
Mind you can only do this in local scripts
local controller = require(game.Players.LocalPlayer.PlayerScripts):GetController()
-- disable movement
controller:Disable()
-- enable movement
controller:Enable()
Or just set WalkSpeed to 0
Wait I read it wrong
Copy the player module and put it in StarterPlayerScripts, so the normal one doesn’t spawn and change the code in the Controller module
Under starter character, find DevComputerMovementMode and set it to scriptable. That disables the default character movement. You can find great articles on accelerated movement or smoothed movement.
I have found an even better solution, instead of wasting valuable space in your RAM you should stick by adding BooleanValues inside StarterPlayerScripts and changing the name to fit the script you may wish to remove.
This only works because Roblox does not check for the Class of the instance, only the name of the instance is checked. Keeping these as boolean values lowers the amount of RAM used by a tiny amount and keeps your StarterPlayerScripts area clean from any unused scripts.
Please do not flag my post for necrobumping because this issue hasn’t been fully addressed until years later.