Помогите Бот дс

HLMNG

17 Май 2023
26
1
6
Как сделать бота который на дискорд сервере показывает онлайн который на сервере раст
 
Для создания бота, который будет показывать онлайн игроков на сервере Rust на Discord, вам понадобится следующее:

1. Создайте новое приложение на платформе Discord Developer Portal и получите токен бота. Убедитесь, что ваш бот имеет разрешение на присоединение к серверам и чтение состояния чата.

2. Установите необходимые библиотеки для работы с Discord API и RCON (Remote Console) сервера Rust. Например, discord.py для работы с Discord API и rcon для работы с RCON сервера Rust. Вы можете установить их с помощью pip:

Код:
   pip install discord.py
   pip install rcon

3. Создайте новый файл Python, например, rust_bot.py, и импортируйте необходимые модули:

Код:
python
   import discord
   import rcon
   import asyncio

4. Создайте экземпляр клиента Discord и подключитесь к серверу:

Код:
python
   client = discord.Client()

   @client.event
   async def on_ready():
       print('Bot is ready.')
       await client.change_presence(activity=discord.Game(name='Rust'))

5. Создайте функцию, которая будет подключаться к RCON серверу Rust и получать информацию о сервере:

Код:
python
   async def get_online_players():
       rcon_client = rcon.Client('RCON_SERVER_IP', RCON_SERVER_PORT, 'RCON_PASSWORD')

       try:
           await rcon_client.login()
           response = await rcon_client.command('status')
           players = response.split('\n')[2:-2]
           return players
       except rcon.AuthenticationError:
           print('RCON authentication failed.')
       except rcon.ConnectionError:
           print('Failed to connect to RCON server.')
       finally:
           await rcon_client.close()

6. Создайте команду для бота, которая будет вызывать функцию get_online_players и отображать онлайн игроков на Discord:

Код:
python
   @client.event
   async def on_message(message):
       if message.content.startswith('!online'):
           players = await get_online_players()
           if players:
               await message.channel.send(f'Online players: {", ".join(players)}')
           else:
               await message.channel.send('No players online.')

7. Запустите бота:

Код:
python
   client.run('YOUR_BOT_TOKEN')

8. Теперь вы можете пригласить своего бота на свой Discord сервер и использовать команду !online для проверки онлайн игроков на сервере Rust.

Обратите внимание, что вам нужно будет заменить 'RCON_SERVER_IP', RCON_SERVER_PORT и 'RCON_PASSWORD' на соответствующие значения вашего RCON сервера Rust. Также убедитесь, что у бота есть достаточные разрешения для отправки сообщений в текстовые каналы.
 
  • Мне нравится
Реакции: Drop Dead
Активность
Пока никто не печатает сообщение

Похожие темы