How do people achieve group auto-rank systems?

I’m sorry if this is a “Noob” question but I’ve always wondered how people managed to create group-auto rank systems. Example: If a player owns a certain badge then they are automatically ranked up in a group?

I’ve held events in my game before where I’d manually rank players up in the group if they achieve certain stats but it was a really hard task and I only had about 1,000 members in my group. I don’t understand how these groups with 10k+ members manage to do this? I’m pretty sure it’s via an automated system. I’d appreciate it if you guys could leave any links to tutorials or youtube videos or if you left any advice/insights.

5 Likes

You need to use a bot of some kind running on an external code. It is not possible within Roblox itself.

1 Like

Where can I learn more about how to do this? Also, is this allowed on roblox? I don’t want to get a warning or ban.

You can learn about this from many sources on the devforum or even Google search.

These bots are written externally to roblox and are hosted on a server. They make use of the Roblox web apis to log into an account and perform actions as a user. In my opinion, they should introduce a proper bot system with an actual API that works with OAuth2, but hey - I’m not Roblox

I would definitely check out libraries such as noblox.js (for Javascript), and one of the many other user-created libraries.

If you can’t find a nice Lua library (I’m not sure how many there are), the unfortunate thing is you may have to learn a new language. On the birght side, I’m almost certain there’s a library for every major programming language. If you want to just bite the bullet and ditch the library idea, you can interact directly to Roblox’s web api by sending Http requests.


As for if it’s ok, this post was a bit inconclusive, but generally it does seem like they are allowed.
edit - apparently this is an old thread (I didn’t realize it at the time) but policies haven’t changed so it still stands

5 Likes

There’s a couple ways to do it. The most common way is through a discord bot. You can use a library with x-amount of coverage of the Discord API and have it cater to what you need.

You’d set up a command through the bot that accepts both a player name or userid (preferably a userid since player names can change) and a string that represents the role name (you could also use the roleid).

From there, you could do two things:
1). Create a bot account that ranks up the user automatically (there’s a bunch of Roblox API libraries out there… mine being one of them).

2). Store it in a separate database that can be interfaced to your game via a wrapper or simple RESTful API. You can use firebase and directly interface it with Roblox or you can set-up a neat little web-server that functions like a RESTful API.

In my experience in both creating a library and seeing the multitude of ways this can be accomplished, #2 is your best option. #1 is the most common way but, often times people don’t realize that there’s no way to login other than using your the authentication cookie of the bot account (changed every time you log out) or that endpoints change quit frequently, meaning that the library of choice could potentially break, ruining your service while you’re at the mercy of the library’s maintainer. #2 allows you to tailor your service to your exact needs and relies on things in your control (unless you use firebase but, that’s hardly an issue). For me, and perhaps some others, this a huge win. When you code services or projects, you always want to have as much freedom as possible. Cool little tip life taught me over the years.

All-in-all, this should give you a firm understanding of where to start. If you find yourself confused by some of the terms, it’s always a good idea to research it at your own discretion before attempting projects outside your knowledge scope, per-say.

Sorry for the long post. Hope this helps!

5 Likes

Promotional bots are usually hosted on an external website that stores its data. There isn’t really anything that involve Discord unless you want to keep up to date with notifications on promotions. (Badge related things) would usually just be a website.

2 Likes

I’m currently in the process of a re-write for a server that you can practically copy paste and deploy on hosting with minimal editing. As you can see by the last commit on the repository however, this may take a little bit more time to complete.

If you do know a language that you can use to deploy your own web server to interact with the Roblox API, great! You should search google for an appropriate library to use. If you don’t have much experience, but still want to achieve this I suggest waiting for me to finish writing it. It’ll help you get an idea of how to receive requests and use the data in them to send requests to Roblox to perform actions such as promoting, denoting, etc.

Shameless plug, I know

7 Likes