I can't change walk speed in setting

Hi,

I tried changing the player’s walk speed in game setting, but it won’t save it.

It seems to be stuck on 16.

If seetings bug, you can always do a server script and do this:

local walkspeed = 20 -- The walkspeed you want the player to get

game.Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function(char)
local hum = char:WaitForChildOfClass("Humanoid")
if not hum then return end
hum.WalkSpeed = walkspeed
    end)
end)

In a local script inside of StarterCharacterScripts, put this:

local hum = script.Parent:WaitForChildOfClass("Humanoid")
local walkspeed = 20 -- The walkspeed you want the player to get

hum.Died:Connect(function()
task.wait(game:GetService("Players").RespawnTime)
hum.WalkSpeed = walkspeed
end)

Press the save button? Or just manually change the default walkspeed in StarterPlayer.

2 Likes

That works too instead of scripting 30 lines.

Is team create enabled? This may cause problems, not sure.

Yes it is enabled. Could that be causing the issue?

Tried that, but it won’t work. I’m not sure why.

It might, but I’ve never had a problem like that. Try turning it off if you don’t work with other people in your game.

It might be that you’re a collaborator to the Owner’s game.

I’m bumping this again. It won’t save somehow.

I’m the owner of the game. I tried turning off collab, but not fixed.

Try disabling the Team Create and see if it works.

If it doesn’t work try doing this script and put it on StarterCharacterScripts.

local newWalkSpeed = 24 -- Example

while true do
	task.wait(18/287) -- This results as: 0.0627177700348432 seconds.
	game.Players.LocalPlayer.Character:WaitForChild("Humanoid").WalkSpeed = newWalkSpeed
end

please dont use this script, you don’t need to set the walk speed every frame. the server script by achdef looks fine though

another way to do this without needing to script is to go in Explorer > StarterPlayer
and there, you’ll see “CharacterWalkSpeed”. Set it to whatever you want

1 Like

I have the same problem I thank you for making this post as I haven’t found anything else relating to this topic

1 Like

There isn’t really a need to do this on the server. Just do it on the client, LocalScript in StarterPlayer > StarterCharacterScripts:

local walkSpeed = 16
local humanoid = script.Parent:WaitForChild('Humanoid')

humanoid.WalkSpeed = walkSpeed

@Nabilekes see if this works.

3 Likes

IIRC, in the explorer there is something along the lines of StarterCharacter (Starter Player → StarterCharacter). In the properties of it, it mentions the walkspeed and you can change it from there

It’s a LocalScript, not a ServerScript.

Because “StarterCharacterScripts” can hold LocalScripts with The Character.

yeah ive tried changing the world settings, starterplayer properties and even tried a script and it’s not working