I've been trying for hours, but I can't figure it out. Here is the badge awarding script below:
local BadgeService = game:GetService("BadgeService") local Players = game:GetService("Players") local badgeID = 2124518441 -- Change this to your badge ID local function awardBadge() local player = Players.LocalPlayer local hasBadge = false -- Check if the player already has the badge local success, message = pcall(function() hasBadge = BadgeService:UserHasBadgeAsync(player.UserId, badgeID) end) -- If there's an error, issue a warning and exit the function if not success then warn("Error while checking if player has badge: " .. tostring(message)) return end if hasBadge == false then BadgeService:AwardBadge(player.UserId, badgeID) end end
local BadgeService = game:GetService("BadgeService") local Players = game:GetService("Players") local badgeID = 2124518441 -- Change this to your badge ID local function awardBadge() local player = Players.LocalPlayer local hasBadge = false -- Check if the player already has the badge local success, message = pcall(function() hasBadge = BadgeService:UserHasBadgeAsync(player.UserId, badgeID) end) -- If there's an error, issue a warning and exit the function if not success then warn("Error while checking if player has badge: " .. tostring(message)) return end if hasBadge == false then BadgeService:AwardBadge(player.UserId, badgeID) end end wait(3600) --equivalent to 1 hour in seconds awardBadge() --i have no experience with badges so im not sure this would work
hope that helped