official_Faceit_roles_bot

official_Faceit_roles_bot

0
2

Panoramica

Compare

Автоматические роли Faceit (уровень, K/D, карты), LFT с рейтингом, стили ника, достижения, монеты – всё для Discord CS2 бота


🤖 FACEIT RANK BOT – ПОЛНОЕ ОПИСАНИЕ ВСЕХ ФУНКЦИЙ

  1. ВЕРИФИКАЦИЯ (привязка Faceit и Steam)

Зачем: чтобы бот мог получать статистику с Faceit API и выдавать роли, нужно привязать Discord аккаунт к Faceit нику и подтвердить владение Steam профилем.

Как работает: Пользователь пишет боту в личные сообщения (бот не принимает команды верификации в общих чатах для безопасности): /verify moneself 76561198000000000 Первый параметр – ник на Faceit. Второй – Steam ID (17 цифр из ссылки профиля).

Бот проверяет: существует ли ник на Faceit, есть ли CS2 профиль, не привязан ли уже этот ник к другому Discord аккаунту. Затем генерирует случайный 8-значный код (буквы+цифры), сохраняет в БД на 10 минут и отправляет инструкцию: "Вставьте этот код в поле Real Name (настоящее имя) вашего Steam профиля → сохраните → напишите /confirm X7G9K2M4".

Бот проверяет через Steam API, появился ли код в поле Real Name. Если да – верификация пройдена.

Что даёт верификация:

  • Роль Verified на всех серверах, где есть бот.
  • Удаление роли Unverified.
  • Faceit ник, Steam ID и статистика сохраняются в БД.
  • Возможность использовать /refresh для обновления статистики.

Команды (только ЛС): /verify ник steam_id – начать верификацию /confirm код – подтвердить код

  1. АВТОМАТИЧЕСКИЕ РОЛИ ПО СТАТИСТИКЕ FACEIT

После верификации или после команды /refresh бот получает актуальную статистику с Faceit API и автоматически назначает роли.

2.1. Уровень Faceit (1-10) Роли: Faceit Level 1, Faceit Level 2, ..., Faceit Level 10. Цвета: градиент от тёмно-красного (1) до ярко-красного (10).

2.2. Средние убийства за матч (AVG Kills) Диапазоны: <10, 10-11, 11-12, 12-13, 13-14, 14-15, 15-16, 16-17, 17-18, 18-19, 19-20, 20+. Цвета от белого до оранжевого.

2.3. Соотношение K/D Диапазоны: <0.9, 0.9-1.0, 1.0-1.1, 1.1-1.2, 1.2-1.3, 1.3-1.4, 1.4-1.5, 1.5-1.6, 1.6-1.7, 1.7-1.8, 1.8-1.9, 1.9-2.0, 2.0+. Цвета от белого до чёрного.

2.4. Любимая карта (по количеству сыгранных матчей) Карты: Mirage, Inferno, Dust2, Nuke, Overpass, Ancient, Anubis, Vertigo. Роли: Mirage Main, Inferno Main и т.д. (фиолетовый цвет).

2.5. Базовые роли

  • Verified (зелёная) – выдаётся после верификации, даёт право писать в LFT-канал.
  • Unverified (красная) – выдаётся всем новым участникам до верификации.

Обновление статистики:

  • Автоматически раз в сутки (бот обходит всех верифицированных пользователей).
  • Вручную командой /refresh (только на сервере, не в ЛС).
  1. МАГАЗИН СТИЛЕЙ НИКА И МОНЕТЫ

3.1. Монеты (валюта)

  • /daily – 100 монет раз в 24 часа.
  • В будущем: за достижения, за участие в LFT.

3.2. Бесплатные стили (0 монет)

  • жирный (текст)
  • курсив (текст)
  • подчёркнутый (текст)
  • моноширинный (текст)

3.3. Платные стили

  • зачёркнутый (текст) – 500 монет
  • верхний индекс (ᵛᵉʳʰⁿⁱʸ ⁱⁿᵈᵉᵏˢ) – 1000
  • нижний индекс (ₙᵢжₙᵢᵧ ᵢₙ₍ₑₖₛ) – 1000
  • квадратные буквы (🄺🄱🄰🄳🅁🄰🅃🄽🄾🄴) – 1500
  • круглые буквы (ⓑⓤⓚⓥⓨ ⓥ ⓚⓡⓤⓙⓚⓐⓗ) – 1500
  • маленькие капс (ᴍᴀʟᴇɴᴋɪᴇ ᴋᴀᴘꜱ) – 1500
  • двойные буквы (𝔻𝕧𝕠𝕚𝕟𝕪𝕖) – 2000
  • курсивные (кɥᴩсᴎʙ) – 2000
  • каллиграфия (𝓀𝒶𝓁𝓁𝒾ℊ𝓇𝒶𝒻𝒾𝒶) – 2500
  • готический (🄶🄾🅃🄸🄲🄷🄴🅂🄺🄸🄸̲) – 2500

Как купить и применить: /buy_style название стиля – списывает монеты, меняет ник пользователя на сервере. /styles – показать купленные стили. /reset_nick – сбросить ник к исходному Faceit-нику.

Требование: бот должен иметь право «Управлять никнеймами» на сервере.

  1. LFT (LOOKING FOR TEAM) – ПОИСК ТИММЕЙТОВ

Команда: /lft время карты [описание] [роль] Пример: /lft 20:00 Mirage,Inferno Нужен эймер Саппорт

Что происходит:

  • Проверяется, настроен ли на сервере LFT-канал (администратор должен один раз вызвать /setup_channel в ЛС).
  • Создаётся событие в базе данных с уникальным ID.
  • В настроенный канал отправляется embed-сообщение с кнопками ✅ Пойду и ❌ Не пойду.
  • Участники могут записываться и отменять запись. Создатель получает уведомления в ЛС.
  • За 5 минут до начала бот рассылает напоминание всем участникам.
  • За 1 минуту – предупреждение.
  • Если через 5 минут после начала события набралось меньше 2 участников, событие отменяется.

Рейтинг надёжности (команда /rating):

  • Каждый участник завершённого события (с 2+ участниками) получает +50 к рейтингу.
  • Учитываются также опоздания и пропуски (в разработке).
  • Ранги: <700 – Ненадёжный, 700-899 – Средний, 900-1199 – Хороший, 1200-1499 – Надёжный, ≥1500 – Легенда.

Статистика рейтинга сохраняется в БД и показывает, насколько игрок ответственен.

  1. ДОСТИЖЕНИЯ

Команда /achievements показывает список полученных достижений и условия получения.

Список достижений:

🧭 Первопроходец – верификация в первые 3 дня после захода на сервер. ⚙️ Трудоголик – сыграть 20 матчей за неделю (отслеживается через Faceit history). 🤝 Командный игрок – сыграть 10 матчей с разными игроками (учитываются участники LFT). 📡 Мастер связей – поучаствовать в 20 успешных LFT-событиях (как участник). 🎯 Организатор – создать 50 LFT-событий. 💬 Душа компании – написать 500 сообщений в LFT-канале. 🏆 Ветеран – провести 300 часов в голосовых каналах (бота слушает voice_state_update). ⭐ Коллекционер – получить все вышеперечисленные достижения.

При получении достижения бот выдаёт соответствующую роль на сервере (роли создаются автоматически).

  1. АДМИНИСТРИРОВАНИЕ

6.1. Команды для администраторов сервера (видны только им, скрыты от обычных пользователей)

Настройка: /setup_channel (только в ЛС) – выбор сервера и канала для LFT, создание ролей Verified/Unverified, настройка прав канала (писать могут только Verified).

Управление пользователями: /ban @пользователь причина – бан: удаляет все роли бота, записывает в таблицу banned_users; забаненный не может использовать команды. /unban discord_id – разбан. /banlist – список забаненных.

Логи и диагностика: /logs [пользователь] [кол-во] – показывает действия администраторов (баны, включение рекламы). /check_bot_position – проверяет, выше ли роль бота, чем Verified/Unverified (необходимо для корректной выдачи ролей). /fix_bot_role – пытается автоматически поднять роль бота. /check_configs – список всех серверов, где настроен LFT-канал. /check_server guild_id – детальная информация о настройках конкретного сервера.

Синхронизация ролей: /sync_roles – создаёт на всех серверах недостающие роли карт (Mirage Main и т.д.). /sync_achievement_roles – создаёт роли достижений. /sync_all_roles – создаёт все возможные роли бота (уровни, AVG, K/D, карты, достижения, Verified, Unverified).

Управление рекламой на сервере: /advertising_on – включить приём рекламных рассылок от главного админа. /advertising_off – отключить.

Очистка ролей: /force_unverified – выдать роль Unverified всем участникам (кроме админов). /cleanup_old_roles – удалить роли бота, у которых нет участников. /force_delete_all_roles – принудительно удалить все роли бота (даже с участниками). /remove_all_bot_roles_from_users – снять все роли бота со всех участников (роли остаются, но пустеют).

6.2. Команды главного администратора (проверка по ID из config.py)

/stop – остановить бота (бот выключается). /advertising (скрытая команда) – активирует режим рассылки рекламы: админ отправляет одно сообщение в ЛС, бот рассылает его во все серверы, где реклама включена и настроен LFT-канал. Время ожидания 5 минут.

  1. ТЕХНИЧЕСКИЕ ДЕТАЛИ
  • Язык: Python 3.11+
  • Библиотеки: discord.py, aiohttp, python-dotenv
  • База данных: SQLite (таблицы: faceit_users, verification_codes, banned_users, server_config, message_stats, voice_stats, events, reliability_rating, achievements, admin_logs, user_coins, user_style, owned_styles).
  • API: Faceit (получение игроков, статистики, истории матчей), Steam (проверка Real Name).
  • Частота обновления: один раз в сутки автоматически, или по /refresh.
  • Поддержка нескольких серверов: бот может быть приглашён на любое количество гильдий, везде работают все функции.
  • Все конфиденциальные данные (токены) хранятся в .env файле, который не попадает в репозиторий.
  1. ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

Пользователь заходит на сервер:

  • Получает роль Unverified.
  • Бот отправляет ему ЛС с приветствием и инструкцией по верификации.

Пользователь верифицируется:

  • Пишет /verify nik steam_id → получает код → вставляет в Steam → /confirm код.
  • Бот выдаёт ему роль Verified, убирает Unverified, сохраняет ник и статистику.
  • Автоматически выдаются роли: Faceit Level 5, AVG Kills 15-16, K/D 1.2-1.3, Mirage Main.

Администратор настраивает сервер:

  • Вызывает /setup_channel в ЛС → выбирает сервер и канал #team-find.
  • Бот настраивает права: @everyone может читать, @Verified может писать, @Unverified не может писать.
  • Создаёт все необходимые роли, если их нет.
  • Включает рекламу командой /advertising_on.

Участники создают LFT:

  • /lft 21:00 Mirage Нужен эймер → создаётся событие.
  • Другие игроки нажимают ✅ Пойду.
  • Бот напоминает за 5 минут.
  • Все участники получают +50 к рейтингу надёжности.

Главный админ делает рассылку:

  • /advertising → отправляет рекламное сообщение в ЛС.
  • Бот рассылает его во все серверы, у которых advertising_enabled = 1.
  1. ССЫЛКИ
  • Пригласить бота: [вставьте ссылку OAuth2 с правами bot и applications.commands, права Administrator]
  • GitHub: https://github.com/Vladisley666/faceit-bot
  • Поддержка: [ваш сервер Discord]
  1. ИТОГ

Faceit Rank Bot – это полноценная система управления сервером для CS2/CS:GO комьюнити, которая:

  • Автоматизирует выдачу ролей по реальной статистике Faceit.
  • Привязывает аккаунты через безопасную Steam-верификацию.
  • Даёт игрокам возможность менять стиль ника за монеты.
  • Организует поиск тиммейтов с системой рейтинга надёжности.
  • Мотивирует активность через достижения.
  • Предоставляет администраторам мощные инструменты управления без захламления списка команд.
  • Поддерживает работу на нескольких серверах одновременно.

Бот не хранит пароли, не требует прав администратора на серверах (достаточно Manage Roles, Send Messages, Manage Nicknames, Manage Channels для настройки), но для простоты рекомендуется выдавать права администратора.

Valutazioni e Recensioni


0

0 recensioni

Reviews can be left only by registered users. All reviews are moderated by Top.gg moderators. Please make sure to check our guidelines before posting.

5 stelle

0

4 stelle

0

3 stelle

0

2 stelle

0

1 stella

0



Ancora nessuna recensione!