So, I’m making a game where I thought it would be a great addition to add some sort of account registration (not linked to Roblox in any way) so that you could have the same data and purchases between Roblox accounts by logging into the in-game account that you made. Obviously this registration is not required.
It was only after a bit of work that I realized that letting the user provide a password for their in-game account felt like it would violate the ToS.
I would’ve loved to implement this idea not only for the data management but also for picking usernames (obviously goes through Roblox’s filter)
I was wondering if it’s even allowed to have any form of account registration depending on the method and warnings and requirements, for example making the password completely random so that no player could ever provide any sensitive information unintentionally. The need for this system might make a bit more sense if you knew what I was making but this is no place for advertising.
My idea is to use a random 3 words for the password. These words are randomly assigned, so all the player has to memorize, for example, is “driver zeppelin fox” and that would be their “password”. You could call it something such as a “security code” so as not to be suspicious.
As for a username system, it works very well in my game Ro-Chat. We don’t have a password system in Ro-Chat, but we don’t have data management for the most part either, so no passwords works for us but not for you probably. We have, however, had to ban some users for some inappropriate usernames. Make sure to scan the username database periodically for your game to stay safe.
Telling us your game idea isn’t advertising but I would advise against it just in case a user decides to steal the idea.
Thank you, I’ll give this method a try. And yes I was already planning to name it something like “code” to be safe.
About the username scanning, do you think running every username through Roblox’s text filter periodically would be good enough? Since they might update it to patch some bypasses. Also if “FilterStringAsync” asks for a UserId do you think I should use one with SafeChat or not? (<13/13+)
Running the user through text filter once is fine enough. I filter all usernames based on the player’s ID. If the player is 13+, they get the 13+ filter and vice versa; this is in contrast to the rest of my game where everything uses GetNonChatStringForBroadcastAsync (forces safe chat). If you’d like to use safe chat, use the lengthy method I just mentioned, otherwise just pass the username through their own appropriate filters.
I’ll probably use SafeChat because at the moment I can’t come up with a solution for if a username only gets moderated for people with SafeChat, because then I can’t display it for them and don’t know what to replace it with.
Just do be aware that since SafeChat runs through an extremely restrictive filter, most usernames are forced to be common words. I recommend showing <13 users filtered-for-them usernames as, for example, “Anonymous[UserId]”. (I got the idea from Fortnite Anonymous Mode) This allows a unique username that takes the UserId of the user who first signed up and allows a safe environment for <13 users.