работа автотим баланса
1 февраля 2026 г, 21:06
naruto

Создатель

Рейтинг: 1223

Сообщений: 398

Спасибок: 165

Полная логика работы AutoTeamBalance v3.0

1. Когда срабатывает баланс

Проверка происходит в конце каждого раунда (с задержкой 3 сек). Баланс срабатывает если:

Условие Значение Пример
Разница игроков ≥ 2 и > 1 CT 7 vs T 4
Серия побед ≥ 3 подряд CT выиграли 3 раунда
Разница счёта ≥ 3 Счёт 5-2
Соотношение сил > 1.5 Force CT 15000 vs T 10000

Кулдаун: минимум 2 раунда между балансами.


2. Направление переноса

Если численный дисбаланс (разница > 1):
    → Из БОЛЬШЕЙ команды в меньшую

Иначе если разница счёта:
    → Из ВЫИГРЫВАЮЩЕЙ команды в проигрывающую

Иначе (равный счёт):
    → Из команды с БОЛЬШЕЙ силой в слабую

3. Сколько игроков переносить

При численном дисбалансе:

Переносов = (разница + 1) / 2, минимум 2, максимум 4
Пример: 8 vs 4 = разница 4 → (4+1)/2 = 2 переноса

При разнице счёта:

Разница счёта Переносов
3-4 2
5-7 3
8+ 4

4. Выбор кандидатов для переноса

Порядок переносов:

  1. Первый перенос → выбирается СИЛЬНЫЙ игрок (максимальный Force)
  2. Последующие → выбираются СРЕДНИЕ игроки (ближе к целевому Force)

Кого НЕ переносят:

  • Админы с иммунитетом (флаг i)
  • Недавно перенесённые (< 120 сек или < 2 раундов назад)
  • Кто уже переносился 3 раза за карту
  • Некалиброванные (если включена защита)

Приоритет: мёртвые игроки (+5000 к скору для сильных, +1000 для средних)


5. Остановка переносов

Цикл переносов останавливается если:

  • Команды сравнялись по численности (from ≤ to)
  • Силы сбалансированы (ratio между 0.7 и 1.4)
  • Нет подходящих кандидатов
  • Достигнут максимум переносов (4)

6. Расчёт силы игрока (Force)

Force = EffectiveSkill + SessionBonus

EffectiveSkill = Skill из БД
    + VIP бонус (если VIP): Skill × 1.2 + 200

SessionBonus = (K/D - 1.0) × 100
    Пример: K/D 2.0 → +100
    Пример: K/D 0.5 → -50
    Если 0 смертей: +50 за каждый килл

7. Пример работы

Ситуация: CT 8 - T 8, счёт 7-0 в пользу CT

1. Триггер: Score diff 7 >= 3 ✓
2. Направление: CT выигрывает → кидаем из CT в T
3. Количество: Разница 7 → 3 переноса
4. Выбор:
   - Перенос #0: СИЛЬНЫЙ игрок из CT (Force 2500) → T
   - Перенос #1: СРЕДНИЙ игрок (Force 1200) → T  
   - Перенос #2: СРЕДНИЙ игрок (Force 900) → T
5. Проверка: CT 5 vs T 11? Стоп, from < to
   Реально: CT 5 vs T 8 (если было 8-8 изначально)
6. Итог: перенесли 3 игрока
7. Следующий баланс: через 2 раунда

8. Настройки (CVars)

CVar Значение Описание
atb_enabled 1 Вкл/выкл
atb_minplayers 4 Мин. игроков для баланса
atb_protect_top 0 Защита топ N (0 = никого)
atb_protect_time 120 Защита после переноса (сек)
atb_protect_rounds 2 Защита раундов после переноса
atb_max_switches 3 Макс переносов за карту
atb_balance_cooldown 2 Раундов между балансами
atb_max_score_diff 3 Триггер по разнице счёта
atb_max_winstreak 3 Триггер по серии побед
atb_immunity 1 Админ иммунитет
Отредактировал: naruto, 1 февраля 2026 г, 21:08
Спасибо сказали: kiskis, Тигран Хачатрян, D.A.M.N.E.D

naruto

Создатель

Рейтинг: 1223

Сообщений: 398

Спасибок: 165

Настройки защиты игрока:

Параметр Значение Описание
atb_protect_rounds 6 Не трогать игрока 6 раундов после переноса
atb_protect_time 120 Не трогать игрока 120 сек (2 мин) после переноса
atb_max_switches 3 Максимум 3 переноса на игрока за карту
atb_protect_top 0 Топ игроков НЕ защищены (кидаем сильных)
atb_calibration_protect 0 Некалиброванных тоже переносим
atb_immunity 0 Админы НЕ защищены
Ping-pong защита 10 раундов Не возвращать игрока обратно в команду откуда перенесли

Итого: После переноса игрока не тронут минимум 6 раундов или 2 минуты, и не вернут обратно 10 раундов.

D.A.M.N.E.D

CS Модератор

Рейтинг: 41

Сообщений: 16

Спасибок: 5

Доработай балансер.
В моем примере зайду за тт, перекинет за кт 99%. Логика плагина понятна. Только у нее линейность работы, ну дай Бог 2 варианта. В моем случае перекинуть меня или нет (это сраный 1%). Пример: за тт играют (100 - цифры это скилл)
1. 100
2. 90
3. 60
4. 40
Почему кидает 1 и 4 игрока, а это 99%, а не 2 и 3. Как будто плагин не учитывает другие варианты.
Далее плагин смотрит на нынешнюю общую статистику топа и подсасывает от туда логику для своей работы? Я вот в пример очень часто меняюсь при разнообразных составах с 4 20 (Амелией). Что я имею ввиду, я 1 в топе, она в пример 200. Даже сама она уже акцинтирует внимание на это.

Спасибо сказали: Yaponec, Тигран Хачатрян
D.A.M.N.E.D

CS Модератор

Рейтинг: 41

Сообщений: 16

Спасибок: 5

Еще 1 пример непонятной работы автобаланса:

карта awp_india, играем 2х2 (вск уже все разбежались)
за ТТ (я - 15-0, и гипноз - 15-0) счет как пример, но там сильная разница скилла
за КТ (1кт - 6-18, 2кт - 6-18), они естественно проигрывают в счете
далее баланс нас просто меняет местами, КТ ушли за ТТ, а ТТнаоборот за КТ

Логика? 2я команда дальше будет страдать от дисбаланса скилла команда. Ну да, там счет станет в конце равным, далее перейдет перевес счета на сторону сильной (по скиллу команда), и снова поменяют команды местами? Или дальнейшая логика автобаланса такова, что она "увидела" не работу такого сценария и поменят в итоге 1 сильного на 1 слабого (или 2 на 2 и т.п)?

Раньше 1 топа кидало за слабую, не помогало через 3 раунда (или 5... не помню) кидало 2го топа сильнейшей стороны на слабую сторону. Допил бы тот плагин, ну или этот в совершенство приведи. В пример замена 1 сильного на 2 слабых. 

Последняя активность

Тема: Как зайти на Кракен через Tor в 2026 году

Автор: dante4

Дата: 3 час. назад

Тема: Кракен Даркнет: полный гайд по входу в 2026

Автор: dante4

Дата: 3 час. назад

Тема: Как попасть на Кракен 2026

Автор: dante4

Дата: 3 час. назад

Тема: Игра <<Отгадать слово>>

Автор: D.A.M.N.E.D

Дата: 15 февраля 2026 г, 23:38




SvaRoG-GaMe.COM
Яндекс.Метрика