Hello, as many of us know the recent free badge update has led to many issues with badges failing to award. Sometimes they are delayed, sometimes they fail, and other times the notification does not show up. After weeks of experimenting and checking analytics I have determined a few ways to minimize the number of errors you will experience.
The API appears to be having issues once you surpass an award rate of 60 badges per minute. There is no documented limit and sometimes the data shows as high as 70+ awarded in a minute, but to be safe it is good practice to limit it to 60 per minute. Here is some advice if you wish to minimize these errors:
It is primarily your duty to improve the experience for your users. You will experience better game ratings, happier users, and more returning visitors if your game is reliable and provides a good user experience. Here are a few ways you can minimize the issues:
If your game uses a long path of badges, you should size them fairly large. I recommend at least 9x9. This will assure that as players walk the path, they have time to be awarded each badge- players should be walking about 60 badges per minute at most. Other methods that can help you limit this without inconveniencing the player is adding a small space between badges. A space of 0.5-1 stud between each badge should be plenty. You also should only award badges once when the player touches it- not every time they step on it.
If your game uses a mass awarder of some kind you should implement delays to prevent passing this limit. A 1.1 second delay between awarding each badge should be sufficient. You may also limit it to 50-60 badges awarded at a time. If you have multiple bulk badge awarders, you should prevent players from triggering multiple in a short timeframe. You can add a small obby between awarders, use multiple smaller ones spaced out, or have timed barriers of some kind. I recommend doing this is a way where users will stay entertained as they may quickly get bored of standing in a single place.
If you award badges on-join, be sure it only awards once per player. Do not waste API calls by spam awarding.
If you have meet badges, be sure it only awards once per player.
If you have time badges, only award once when the player passes the required time. Or have a platform that checks if the requirement is met once the player touches it.
Edit: Here is a kit by Unmannerliness that should fix many of these issues. Find which one you need and delete the others. If you need help feel free to ask in the community’s social server. 6 Badge Awarder Kit - Roblox
Even though the developer has the responsibility to make their game work properly, sometimes they are lazy or do not care. There are a few things you can do to make it more likely to work for you.
If you are walking down a path, be patient. You may have to wait a second every few badges in order for them to award. Some games automatically move you forward at too fast of a rate, if this happens occasionally running against the path works. This assumes the developer does not attempt to award multiple times per step.
If there are multiple mass badge awarders, only trigger one at a time. If you start multiple at once it is unlikely to award many of the badges. The more you trigger at once the higher the chance that random badges will fail is.
If you are playing a badge hunt, do not spam touch the awarders in a short time period. This is rarely an issue, but I have experienced it once or twice before.
If you continue to experience issues, contact the developer with this thread. They may be willing to implement some of the fixes, if they do be sure to thank them.
If you have any further tips, feel free to contact NoahG59 with your advice to have it added. I may update this in the future with more information for developers, but this is just intended to be a general overview of common issues.