Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

1 Screenshot

  • 3,164
  • 47
  • 35.21 MB

About Discord Pop Bot+

This is a script capable of controlling multiple bots from one program and with a single config file without ever connecting to your server over RCON.

You may need Administrator privileges on the system to setup & run this script depending on your server's setup.

Feature List

  • Run multiple bots from the one script
  • Change your config using the included "Config Editor & Generator" - no JSON knowledge needed!
  • Lowest possible performance impact - there are no new RCON connections ever made to your server.
  • Show players, max players, queued players, AND joining players!
  • Threshold message - when your pop falls below XX%, show a different message such as your wipe schedule.
  • Special variables that are replaced in your strings, allowing you to have any variable in any part of your pop bot's message.
  • Global pop bots - add up the total players across your servers and show it on a dedicated bot!
  • Detailed logging - always know what went on whilst you were gone.


How does it work?

This script works by querying the BattleMetrics API - even if you don't have a purchased RCON subscription! If you do, you'll be able to display the amount of players joining.


Install (Windows + Linux)

  1. Install Python (3.8 Only)
  2. Make sure you tick "Add to PATH" and "Install Path" if presented with the options
  3. Enter the Distributions folder and take the .pyd or .so file out of whichever distribution most closely matches your operating system - it needs to go into the same directory as run.py.
  4. If a build doesn't exist for your distribution, let me know.
  5. Create a .bat or .sh file depending on your OS and create an infinite loop (Win | Linux) with one of the following commands:
  • py -3.8 run.py
  • python3 run.py
  • python run.py
  • python3.8 run.py
  1. Install dependencies with one of the following commands:
  • py -3.8 -m pip install jishaku aiohttp websockets discord.py
  • python3 -m pip install jishaku aiohttp websockets discord.py
  • python -m pip install jishaku aiohttp websockets discord.py
  • python3.8 -m pip install jishaku aiohttp websockets discord.py

Method 2 - Hosting Platforms

All hosting platforms do things differently. You will need to use run.py and make sure that it automatically restarts the script when it closes! This is needed because Discord occasionally kills the connection between themselves and your server, which causes the bot to no longer function. When this happens, the script will detect it and close itself automatically, allowing whatever is handling the execution of the code to start the script again.

If you are asked which packages are required you need discord.py, aiohttp, websockets

For Pterodactyl users, you will need to use a Discord bot egg which you can find with a quick search. The startup command will typically be python run.py.

For Pebble users, you can simply use run.py with Python3.8 and the appropriate packages.


The Config

Once you've installed the code, you should now be able to see in your selected directory that there is a "Config Editor & Generator" file. Run this and it will walk you through editing the configuration file. I strongly recommend you select "Create a New Config" when installing for the first time, so that you can select whether or not you want logging enabled, and add your own bots from scratch.

When you are specifying the messages that will be displayed, you will be told that {{players}}, {{maxplayers}}, {{queue}}, {{joining}} will all be replaced on the bot. What this means is that if you want your bot's message to look like >150/150 (71 Queued)< you would need to enter >{{players}}/{{maxplayers}} ({{queue}} Queued)<. You can use this feature to customise your pop bots however you like.

If you feel you are a bit more tech savvy than others, there is a folder examples that contains sample configs for you to read over, one even including a full description of each JSON key + value.


Update Intervals

During the creation of your pop bots, you may be asked what "Update Interval" you would like. If you are running more than 4 bots, it is recommended you increase your update interval appropriately so that you do not spam Discord's API - a quick way to get your server banned that a lot of Discord-related Rust scripts do not account for. Additionally, Discord will attempt to kill the connection a few times before banning you, which could result in crashes! Not to worry though, this script has been built to be as reliable as possible and will automatically restart itself if you follow the steps under "Running the Script".



The threshold feature will wait for your pop to fall under a set percentage (referred to as threshold in the config), and display an alternative message so that you do not have to display potentially embarassingly low pop to your Discord members. If this is something you are not worried by, simply set the threshold to 0 and it will never trigger. It is important to remember that the threshold is a percentage not a set value! A threshold of 10 and a max player count of 100 will only show the threshold when there are less than 10 players online.

The message shown can be changed by altering threshold_msg in the config, or you will be asked to enter the text you wish to display when using the config editor.


Joining Players

If you would like to show the amount of players joining, it is absolutely necessary that you have a BattleMetrics RCON subscription purchased. You will be asked by the config generator if you would to create a Pop Bot with BM Token or Pop Bot without a BM Token - if you wish to display the players currently joining your server, choose the former. If you do not wish to show this or do not have a BM subscription, use the latter.


Obtaining a Discord Bot Token

First, head over to https://discord.com/developers/applications and create yourself an application. It'll most likely need your server logo, the name of the server, and any other information you wish for people to see appear.
Once that's done, select the "Bots" tab and press create a bot. You'll be presented with "Click to reveal a token" and a button that reads "Copy". You can just press Copy and it's on your clipboard ready to insert into your config file.


Obtaining a BattleMetrics API Token

If you have purchased a BM RCON subscription, this is for you.
Head over to https://www.battlemetrics.com/developers. You want to select "New Token".
Fill in the identifier with something such as "Pop Bots" and ensure it has the "Execute any RCON command" permission. The rest aren't used at all, so whether or not you grant them or not are completely your choice.
You'll have only one chance to copy this token somewhere safe (such as the config.json file), so make sure you do. Luckily for you, this one token will work with all of your pop bots, so don't worry about generating a new one for each bot (unless you really want to keep things nice and tidy).


Running the Script

At last, your configuration file is complete! You have probably noticed that there are 2 .bat files included. If you have NSSM installed you can use nssm.bat and run the pop bots as a service, then simply forget about them.

If not, you can just double click run.bat and the bot will always restart itself no matter what issues it encounters.

If the above does not apply to you, please see the installation section as it includes steps for running the script in more complicated environments.

  • Like 1
  • Love 1

Neko's Other Downloads

User Feedback

About Us

Codefling is a forward-thinking platform for developers to share and monetize their work from plugins to game assets and everything in-between.

3,285 files sold to 351 customers and $48,008 of payments processed this year!

  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.