README ¶
TourneyBot
English
TourneyBot is a project for tournament organizers on the startgg platform for the Tekken 8 game that helps solve the problem of interaction between players and organizers.
Using the open API startgg the bot receives data about a tournament in which different groups with different sets and participants participate. Then messages are sent to the participants of the tournament, which are located on the discord server of the organizer.
If you want to help the project, suggest ideas and developments in your pull requests.
To be realized in the future
- SF6 support;
- Different battle formats for different stages of the tournament;
- Dynamically changing time interval until disqualification from the tournament with each repeated message
- Role assignment on the Discord server;
Features
- Single and double elimination tournament formats are supported;
- Sending messages to all tournament participants every 5 minutes;
- Bot control and configuration of templates and variables via commands;
- Loading player data from a
.csv
format table; - Different invitations are sent depending on the type of match:
A message with opponent's contacts | A message with parameters to find a closed Tekken 8 lobby where the game will be played live |
---|---|
Getting Started
Installing
-
You need to get:
- developer token for:
- discord application ID; How get?
- guild ID (discord server ID); How get?
- role ID for locales (currently supported is russian); How get?
It is assumed that you have organized a tournament on the startgg platform, where participants fill out a registration form. In the form you need to provide the following information:
- Gamer Tag;
- Tekken ID;
- Login to the organizer's Discord server (mandatory);
-
Download the finished build and create a
config
folder in the directory.- Create file
config.toml
- Copy the template and fill the previously created file with it:
[startgg] token = "your token" [discordbot] token = "Bot <your token>" guildID = "your id" appID = "your id" [roles] ru = "your id"
- Create file
tournament.toml
- Copy the template and fill the previously created file with it:
[stream] area = "any" # any | close language = "any" # any | same crossplatform = true # Enable: true | Disable: false connection = "any" # any | "1"-"5" passCode = "1234" # Min: "0000" | "Max: 9999" [rules] stage = "any" # Name stage or any (check names in stages.go) format = 2 # FT (first N to win): 1-10 rounds = 3 # 1-5 duration = 60 # 30-99 waiting = 10 # Time before disqualification in minutes: 1-any crossplatform = true # Enable: true | Disable: false [logo] img = "your link to image"
- Create file
-
Invite a bot to your discord server;
-
Set a role restriction on the use of commands on your discord server How?
Usage
- Start the project;
- Write a command
/set-event link: <link to event your tournament>
- Start the tournament on startgg;
- Write a command
/start-sending
- Enjoy the process!
All commands have a description and the necessary tips for their execution.
Documentation
Command | Description |
---|---|
/check |
Check startgg, discord and bot variables |
/start-sending |
Start sending out invitations to tournament participants |
/stop-sending |
Stop sending invitations to tournament participants |
/сontacts |
Get list contact players from csv file |
/set-event link:<link> |
Set an event in the bot configuration to retrieve all phaseGroups. The event reference must include the path: tournament/<tournament_name>/event/<event_name> |
/edit-rules format:<[1-10]> stage:<name or any> rounds:<[1-5]> duration:<[30-99]> crossplatformplay:<true or false> |
Edit match rules |
/edit-stream-lobby area:<any or close> language:<any or same> conn:<any or [3-5]> crossplatformplay:<true or false> passcode:<[0000-9999]> |
Edit stream-lobby configurations |
/edit-logo-tournament url:<url> |
Edit the link to the tournament logo |
Русский
TourneyBot проект для организаторов турнира платформы startgg по игре Tekken 8 который помогает решить проблемы взаимодействия между игроками и организаторами.
Используя открытое API startgg бот получает данные о турнире в котором есть группы, в которых есть сеты, в которых есть участники. После отправляются сообщения участникам турнира, которые находятся на discord сервере организатора.
Если хотите помочь проекту, предлагайте идеи и разработки в ваших пул реквестах.
Будет реализовано в будущем
- Поддержка игры SF6;
- Различные форматы сражений для разных этапов турнира;
- Динамически изменяющийся интервал времени до дисквалификации из турнира при каждом повторном сообщении;
- Выдача ролей в Дискорд сервере;
Особенности
- Поддержка форматов Single and double elimination;
- Отправка сообщений всем участникам турнира каждые 5 минут;
- Контролирование бота и изменение конфигурации шаблонов и переменных при помощи команд;
- Загрузка данных игроков из файла таблицы формата
.csv
; - В зависимости от типа матча рассылаются разные приглашения:
Сообщение с контактами оппонента | Сообщение с параметрами для поиска закрытого лобби Tekken 8 где игра будет на стриме |
---|---|
Начало работы
Установка
-
Вам нужно получить:
- токен разработчика для:
- discord; Как получить?
- startgg; Как получить?
- discord application ID; Как получить?
- guild ID (discord server ID); Как получить?
- role ID для локалей (В настоящее время поддерживается русский); Как получить?
Предполагается, что вы организовали турнир на платформе startgg, участники которого заполняют регистрационную форму. В форме необходимо указать следующую информацию:
- Gamer Tag;
- Tekken ID;
- Вход на дискорд сервер организатора (обязательно);
- токен разработчика для:
-
Загрузите готовую сборку и создайте в каталоге папку
config
.- Создайте файл
config.toml
- Скопируйте шаблон и заполните им ранее созданный файл:
[startgg] token = "ваш токен" [discordbot] token = "Bot <ваш токен>" guildID = "ваш id" appID = "ваш id" [roles] ru = "ваш id"
- Создайте файл
tournament.toml
- Скопируйте шаблон и заполните им ранее созданный файл:
[stream] area = "any" # any | close language = "any" # any | same crossplatform = true # Включена: true | Выключена: false connection = "any" # any | "1"-"5" passCode = "1234" # Мин: "0000" | "Макс: 9999" [rules] stage = "any" # Имя локации или любое (any) (проверить имена в stages.go) format = 2 # FT (до N побед): 1-10 rounds = 3 # 1-5 duration = 60 # 30-99 waiting = 10 # Время до дисквалификации в минутах: 1-any crossplatform = true # Включена: true | Выключена: false [logo] img = "ваша ссылка на изображение"
- Создайте файл
-
Пригласите бота в ваш дискорд сервер;
-
Установите ограничение по ролям на использование команд на вашем сервере discord Как?
Использование
- Запустите проект;
- Напишите команду
/установить-ивент link: <ссылка на ивент турнира>
- Запустите турнир на startgg;
- Напишите команду
/начать-рассылку
- Наслаждайтесь процессом!
Все команды имеют описание и необходимые подсказки для их выполнения.
Документация
Команда | Описание |
---|---|
/проверка |
Проверка startgg, discord and bot переменных |
/начать-рассылку |
Начните рассылать приглашения участникам турнира |
/остановить-рассылку |
Прекратите рассылать приглашения участникам турнира |
/контакты |
Получить список контактов игроков из csv файла |
/установить-ивент link:<link> |
Установите событие в конфигурации бота для получения всех phaseGroups. Ссылка на событие должна содержать путь: tournament/<название_турнира>/event/<название_ивента> |
/редактировать-правила-матчей format:<[1-10]> stage:<name or any> rounds:<[1-5]> duration:<[30-99]> crossplatformplay:<true or false> |
Редактировать правила матчей |
/редактировать-стрим-лобби area:<any or close> language:<any or same> conn:<any or [3-5]> crossplatformplay:<true or false> passcode:<[0000-9999]> |
Редактировать конфигурацию лобби для стрима |
/редактировать-лого-турнира url:<url> |
Редактировать ссылку на логотип турнира |
Documentation ¶
There is no documentation for this package.