What I used to do back when I used BGT was a code system.
When you create an account, you were assigned a recovery code that was hashed. You would be asked to store said code in a secure place. The code consisted of letters, numbers, and special characters.
If you forgot the password, you would then be required to enter said recovery code. If you got it correct, you could create a new password. Otherwise you would have to talk to a member of staff. Staff did not have access to recovery codes, as that was the player's job, but they could reset your password to a temporary one, which you would change on your own. For instance, it may be reset to something like password, or changeme.
Before you go, this is good, there are major drawbacks to this system.
1. The big one is security. "What do you mean, you said the code was hashed." Yes, but here is the problem. Someone gets a hold of that code, and boom. Instant access to everything on that account.
2. Limited verification. You could ask to make sure the e-mail on the account matches the e-mail the person is providing, but it's yet another flaw. If the person knows your e-mail, there's a higher chance of that player gaining access.
3. It falls all on you. There is no external verification involved. You could put yourself behind a wall and say, "I'm not responsible if your code gets leaked." But that wall can be easily broken, because in a way, you are responsible for making a system that allowed such casualties to happen, probably on a very frequent basis.
A better system is to send a verification code to an e-mail, like others recommended in this post. If someone gains the code, that's not necessarily your fault. That's on the user for choosing such a weak password on their account, e-mail account, or both. That's out of your control. You've done your job by sending them a verification code. They receive it, they enter it, bada bing bada boom.
Also, in full agreement with Quin here. You either help, or shut up and continue drinking your beverage or eating your snack, or whatever you are doing.
-----
YouTubeGitHubDiscord: @tunmi13#1880