You can write your topic however you want, but you need to answer these questions:
What do you want to achieve? Keep it simple and clear!
I want to make a script where it detects a player graphics and if is is lower then 2 it will send a SendNotification
What is the issue? Include screenshots / videos if possible!
No issues I just need help scripting it, I’ve already tried making one but none of them work
You are looking at UserSettings(), which should give you the Settings, with .GameSettings, look for .SavedQualityLevel, which should give you the Quality level.
if UserSettings():GetService("UserGameSettings").SavedQualityLevel < 2 and UserSettings():GetService("UserGameSettings").SavedQualityLevel ~= 0 then
--send notification
end
Sorry, the last script had an error in it. This will work 100%, I tested it. It should be in a local script in StarterPlayerScripts, or StarterCharacterScripts
local SavedQualityLevelsEnums = {
["Low"] = {Enum.SavedQualitySetting.QualityLevel1,Enum.SavedQualitySetting.QualityLevel2,Enum.SavedQualitySetting.QualityLevel3},
["Mid"] = {Enum.SavedQualitySetting.QualityLevel4,Enum.SavedQualitySetting.QualityLevel5,Enum.SavedQualitySetting.QualityLevel6},
["High"] = {Enum.SavedQualitySetting.QualityLevel7,Enum.SavedQualitySetting.QualityLevel8,Enum.SavedQualitySetting.QualityLevel9,Enum.SavedQualitySetting.QualityLevel10},
}
function returnQualityLevel()
local saveQualityLevel = UserSettings():GetService("UserGameSettings").SavedQualityLevel
for qualityLevel, enumTable in SavedQualityLevelsEnums do
for _, enum in enumTable do
if saveQualityLevel == enum then
return qualityLevel
end
end
end
return "Automatic"
end
print(returnQualityLevel())
This is a function that returns the quality level as a string. It only fires once when the player joins, so if they change it mid way through it will not update.