How I can change back the player MouseDeltaSensitivity

Basicly I want to change the player MouseDeltaSensitivity but I cant change back to the player MouseDeltaSensitivity (the sesitivity he got before)

--------UserInputService Setup--------
local userInput = game:GetService("UserInputService")
local UserGameSettings = UserSettings():GetService("UserGameSettings")
local savehere = UserGameSettings.MouseSensitivity
local newSens = 2


		button2DownListener = mouse.Button2Down:Connect(function()
			
			-----MouseSensitivity-----
			
			local mouseDeltaSensitivity = newSens  / UserGameSettings.MouseSensitivity 
			userInput.MouseDeltaSensitivity = mouseDeltaSensitivity

			UserGameSettings:GetPropertyChangedSignal("MouseSensitivity"):Connect(function()
				mouseDeltaSensitivity = newSens  / UserGameSettings.MouseSensitivity 
				userInput.MouseDeltaSensitivity = mouseDeltaSensitivity
			end)
			warn(mouseDeltaSensitivity)  --for test in game with console


button2UpListener = mouse.Button2Up:Connect(function()
			-----MouseSensitivity-----
			local mouseDeltaSensitivity2 = savehere  / UserGameSettings.MouseSensitivity 
			userInput.MouseDeltaSensitivity = mouseDeltaSensitivity2

			UserGameSettings:GetPropertyChangedSignal("MouseSensitivity"):Connect(function()
				mouseDeltaSensitivity2 = savehere  / UserGameSettings.MouseSensitivity  -- trying to change the sensitivity back to normal ( the sesitivity the player was got before)
				userInput.MouseDeltaSensitivity = mouseDeltaSensitivity2
			end)
			warn(mouseDeltaSensitivity2)  -- same thing

This is what happen: Issue

Basicly this change the sensitivity to 2 and when the player press Button2up it change to the roblox deufalt sensitivity.

I guess this is happening due to multiple connection being defined , I would suggest to do this:

--------UserInputService Setup--------
local userInput = game:GetService("UserInputService")
local UserGameSettings = UserSettings():GetService("UserGameSettings")
local savehere = UserGameSettings.MouseSensitivity
local newSens = 2
local Conn1
local Conn2


		button2DownListener = mouse.Button2Down:Connect(function()
			if Conn2 then Conn2:Disconnect() end
			-----MouseSensitivity-----
			
			local mouseDeltaSensitivity = newSens  / UserGameSettings.MouseSensitivity 
			userInput.MouseDeltaSensitivity = mouseDeltaSensitivity

			Conn1=UserGameSettings:GetPropertyChangedSignal("MouseSensitivity"):Connect(function()
				mouseDeltaSensitivity = newSens  / UserGameSettings.MouseSensitivity 
				userInput.MouseDeltaSensitivity = mouseDeltaSensitivity
			end)
			warn(mouseDeltaSensitivity)  --for test in game with console


button2UpListener = mouse.Button2Up:Connect(function()
            if Conn1 then Conn1:Disconnect() end
			-----MouseSensitivity-----
			local mouseDeltaSensitivity2 = savehere  / UserGameSettings.MouseSensitivity 
			userInput.MouseDeltaSensitivity = mouseDeltaSensitivity2

			Conn2=UserGameSettings:GetPropertyChangedSignal("MouseSensitivity"):Connect(function()
				mouseDeltaSensitivity2 = savehere  / UserGameSettings.MouseSensitivity  -- trying to change the sensitivity back to normal ( the sesitivity the player was got before)
				userInput.MouseDeltaSensitivity = mouseDeltaSensitivity2
			end)
			warn(mouseDeltaSensitivity2)  -- same thing

EDIT : My code might be weird , cause Im having a hard time reading your code due to the indentation.

1 Like

It works. It saves the sensitivity the player was before. but the newSens works kinda wierd like this:

what will happen: image

NOTE: I changed the newSens to 0.2

Wait u can change a players mouse DPI?

Yes you can change everything from player settings (volume idk)