Как пользоваться
- Вставьте или введите игроков, по одному в строке. Пустые строки и лишние пробелы игнорируются — список из Discord или классный журнал подойдёт как есть.
- Укажите число Команд (2–16). Если список не делится ровно, первые команды получают по лишнему игроку — и какие именно, тоже решает случай.
- Выберите стиль названий: Team 1, 2…, Цвета или Животные. Это только подписи, на распределение они не влияют.
- Нажмите Разделить. Не нравится результат — нажмите ещё раз, каждое нажатие — новая тасовка.
- Копировать всё — и состав можно вставить в Discord, чат или лобби.
Как работает тасовка: Фишер–Йетс, а не «сортировка случайным»
Соблазнительный способ перемешать список — names.sort(() => Math.random() - 0.5). И неправильный: алгоритмы сортировки рассчитаны на последовательный компаратор, а со случайным одни порядки выпадают заметно чаще других — это измеряется, а не только теория. Именно так «случайные» делители команд неделю за неделей ставят одних и тех же друзей вместе.
Здесь используется тасовка Фишера–Йетса: идём по списку с конца и меняем каждый элемент местами со случайным из ещё не зафиксированных. Каждая из n! перестановок строго равновероятна, и хватает одного прохода. Случайный индекс берётся из crypto.getRandomValues с отбраковкой, так что нет и смещения от остатка деления. После тасовки список просто режется на нужное число команд, имя за именем.
На практике: для 10 игроков и 2 команд есть 126 вариантов деления, у каждого шанс 1 из 126. Нажмите дважды — и почти никогда не увидите один и тот же расклад.
Честное деление, когда поровну не выходит
| Игроков | Команд | Результат |
|---|---|---|
| 10 | 2 | 5 + 5 |
| 11 | 2 | 6 + 5 |
| 13 | 3 | 5 + 4 + 4 |
| 27 | 4 | 7 + 7 + 7 + 6 |
| 30 | 6 | 5 × 6 |
Лишние игроки достаются первым командам списка — но сам список уже перемешан, а подписи присваиваются потом, поэтому «первые» тоже случайны. Нужны строго равные команды — уберите одно имя и назначьте этого игрока судьёй или добавьте слот под бота.
Где это используют
- Кастомки CS2, Valorant и Dota 2 — 10 ников на входе, две честные пятёрки на выходе, без драмы с капитанами. Для баланса по скиллу разведите двух сильнейших вручную и делите остальных восьмерых.
- Ивенты в Minecraft и Roblox — отряды для Bed Wars, билд-баттлы, прятки на серверном вечере.
- Учителя — групповые проекты и физкультура. Случайные группы ломают привычку «всегда с тем же соседом», а ответ «так решил компьютер» закрывает любые претензии.
- Тимбилдинг и офис — команды на квиз, группы на хакатон, пары для Тайного Санты.
- Дворовый спорт — футбол, баскетбол, волейбол; выберите названия по цветам и раздайте манишки.
- Стримеры — игры со зрителями: вставили ники из чата, разделили на отряды прямо на экране.
Как делить «без обид»
Случайно — значит честно, но не всегда сбалансированно. Несколько приёмов, чтобы было и то и другое:
- Капитанов назначьте сами. Делите только остальных, потом по капитану в каждую команду. Честно для всех, ровно наверху.
- Два прохода по уровню. Сначала перемешайте сильных на N команд, потом остальных на N команд и объедините «Команда 1» с «Командой 1» и так далее.
- Покажите экран. Смысл честной тасовки в её публичности. Расшарьте экран или сразу вставьте скопированный состав в чат.
- Правило переброса. Договоритесь заранее: максимум один переброс, и только единогласно. Иначе кто-нибудь будет жать, пока не понравится.
Чем наш инструмент лучше
- Настоящий Фишер–Йетс на криптографическом источнике, а не кривой трюк «сортировать случайным».
- До 16 команд, неровные группы делятся честно и предсказуемо.
- Названия по цветам и животным — для детей, классов и манишек.
- Весь состав копируется одним нажатием для Discord или чата лобби.
- Без регистрации, без лимита на число имён, без рекламы поверх кнопки, работает с телефона прямо на площадке.
Конфиденциальность
Вставленные имена не покидают ваше устройство. Тасовка идёт в браузере, ничего не сохраняется, нажатие кнопки ничего не отправляет на сервер. Закрыли страницу — список исчез.
Вопросы и ответы
Сколько человек можно разделить?
Жёсткого лимита на имена нет, команд — от 2 до 16. Параллель из 200 учеников на 16 групп делится за доли секунды.
Рандомайзер действительно случайный?
Да: алгоритм Фишера–Йетса на криптографическом источнике, каждое возможное деление строго равновероятно. Прошлые расклады не запоминаются, скрытых весов нет.
Можно задать размер команды, а не число команд?
Разделите число игроков на нужный размер и введите результат как число команд: 20 игроков по 4 человека — это 5 команд.
Можно ли балансировать по скиллу?
Автоматически нет — у инструмента нет данных о рангах. Сначала разделите сильных, потом остальных и объедините группы; или назначьте капитанов вручную и рандомьте только остальных.
Что будет при нечётном числе игроков?
Первые команды получат по лишнему игроку. Список перемешан до присвоения подписей, поэтому какая команда получит лишнего — тоже случайность.
Подходит для школьного класса или тренинга?
Это один из самых частых сценариев. Вставьте список класса, выберите число групп, нажмите один раз и покажите экран — с тасовкой, которую видели все, не поспоришь.