This is a Discord bot that I made for my friends and me to use in our Discord server. It is a work in progress, and I will be adding more features as time goes on.
- Able to very quickly find servers based on a filter
- Able to scan ip ranges for servers from discord
- List players that are currently online on a server
- List streamers that are currently streaming on a server
- Show stats about the database
- Attempt to join premium servers to test a whitelist
- Quickly scan all ipv4 addresses for servers (separate program)
- Server information:
- Version (name/protocol)
- Players (online/max/uuids)
- Is Cracked or Premium
- Is modded
- Host organization
- Geolocation
- Whitelist
 
Follow the instructions here to set up the bot and db.
- Make it work well
Click to show all commands
/find <filter>:<value>
This command will find a server based on the filter and value you give it. You can use multiple filters at once, and the bot will find a server that matches all of them.
/stats
This command gives stats about the database
/graph
This command will show you a graph of various statistics about the server.
/streamers
This command will show you a list of all the streamers that are currently streaming on a server in the database.
/scan <file> <dilimiter>
This command will take a file of ip ranges (10.0.0.0/32, 127.0.0.0/24, ...) separated by a delimiter (,   ;) and
scan them for servers.
/ping
This command will show you information about a provided server.
/help
This command will show you a list of all the commands and how to use them.
- ip- An ip range in the subnet mask format like- 127.0.0.0/32
- version- The version of the server either as a name like- 1.16.5or as an id like- 754
- max_players- The maximum number of players the server can hold
- online_players- The number of players currently online
- logged_players- The number of players that have logged into the server
- player- The name or uuid of a player that has logged into the server either as an uuid or name
- sign- The text on a sign
- description- The text in the description of the server matched via RegEx
- cracked- Whether the server is cracked
- has_favicon- Whether the server has a favicon
- country- The country the server is in
The docs are in the following json format:
Click to show example doc
{
  "_id": {
    "$oid": "1534978d9f542e403cfa5026"
  },
  "description": {
    "text": "A Minecraft Server"
  },
  "enforcesSecureChat": null,
  "hasFavicon": false,
  "hasForgeData": true,
  "ip": "127.0.0.1",
  "lastSeen": 1682995170,
  "cracked": false,
  "players": {
    "max": 20,
    "online": 1,
    "sample": [
      {
        "id": "c0a80001-0000-0000-0000-000000000000",
        "name": "Player",
        "lastSeen": 1234567890
      }
    ]
  },
  "port": 25567,
  "version": {
    "name": "1.16.5",
    "protocol": 754
  },
  "modpackData": {},
  "preventsChatReports": false,
  "previewsChat": false,
  "forgeData": {},
  "geo": {
    "lat": 0,
    "lon": 0,
    "city": "",
    "country": "",
    "hostname": ""
  }
}This project is licensed under the GNU Affero General Public License v3.0. See the LICENSE file for more
- Am I sus?
- Maybe