In order to keep scaling with our growing user base, we are going to be making some changes to badges which may affect your games. You may need to update your scripts to handle these changes.
If you are calling MarketplaceService:PlayerOwnsAsset() on a badge, please use BadgeService:UserHasBadge() instead. In the near future PlayerOwnsAsset will not handle badges properly and may return an incorrect result.
We understand that some of you are using PlayerOwnsAsset() on badges because it can be called from LocalScripts, so we are looking into modifying UserHasBadge to support this.
If you are calling BadgeService:UserHasBadge() on an asset that is not a badge, please use MarketplaceService:PlayerOwnsAsset() instead. UserHasBadge should only be used on badges otherwise it may return an incorrect result.
We will be notifying developers who are misusing these methods and add warnings to output to make sure everyone is aware of this change, but you do not need to wait for these warnings before you fix your scripts.
We're still figuring out the exact timeline and will follow up when we have a target date for the change, but we expect it to fall within the next 4-6 weeks.