Revert to this for more info; https://scriptinghelpers.org/questions/46597/gamepass-rainbow-trails-do-not-work
This is my new script, when someone comes in with a pass they're supposed to get a trail but it still isn't working.
local passIDs = { 971425430; 000000000 } function playerHasPass(plr) for _,id in pairs(passIDs) do if game.MarketplaceService:PlayerOwnsAsset(plr, id) then return true end end return false end game.Players.PlayerAdded:Connect(function(player) if playerHasPass(plr) then player.CharacterAdded:Connect(function(char) local trail = game.ServerStorage.Trail:Clone() trail.Parent = char.Head local attachment0 = Instance.new("Attachment",char.Head) attachment0.Name = "trailAttachment0" local attachment1 = Instance.new("Attachment",char.Torso) attachment1.Name = "TrailAttachment1" trail.Attachment0 = attachment0 trail.Attachment1 = attachment1 end) end end)
taken from the roblox wiki
Badges and Game Passes are no longer qualified as assets, and they should not be used with this method.
To check if a Player owns a game pass, use the GamePassService's PlayerHasPass method.
http://wiki.roblox.com/index.php?title=API:Class/MarketplaceService/PlayerOwnsAsset