How do I detect how high or low a player's graphics setting is? I've tried this:
print(tostring(game:GetService('RenderSettings').GraphicsQuality))
It just returns this:
singleton RenderSettings already exists
Can you help me? Even I can't figure this out, and I'm a great scripter.
Nevermind about this since the global settings() table is protected and can only be accessed by roblox corescripts and game:GetService'RenderSettings' isn't working, there is no way to access the quality level that I know of, sorry for getting your hopes up.
--[[ print(settings().Rendering.QualityLevel) -- Quality level of the player if settings().Rendering.QualityLevel == Enum.QualityLevel.Level21 then -- Level 10 print("Highest quality level") elseif settings().Rendering.QualityLevel == Enum.QualityLevel.Level01 -- Level 1 print("Lowest quality level") end -- The lowest value is Enum.QualityLevel.Level01 (AKA 1) -- The highest value is Enum.QualityLevel.Level21 (AKA 10) ]]--
You can access a user's graphics level through:
UserSettings().GameSettings.SavedQualityLevel
You can do this. (ONLY use this code in a LocalScript, otherwise it will error)
print(UserSettings():GetService("UserGameSettings").SavedQualityLevel))
That code returns Enum.SavedQualitySetting.1 which is Level 1 and so on until 10. It sometimes can also return Enum.SavedQualitySetting.Automatic, in that case their level is automatically set by Roblox.