Настройки
ReUnion настраивается целиком через файл reunion.cfg. Файл по умолчанию снабжён подробными комментариями — эта страница кратко описывает каждый его раздел.
Файл открывается предупреждением в духе «не меняйте ничего, если не понимаете, что это значит», и не без причины — большинство значений по умолчанию уже подобраны. Меняйте их осознанно и по одному.
Типы идентификаторов клиентов (cid_*)
Каждый параметр cid_* назначает тип идентификатора определённой категории клиентов. Доступны следующие коды типов:
| Код | Значение |
|---|---|
1 | Настоящий (или сгенерированный по оборудованию) Steam ID (STEAM_xx:xx:xx). |
2 | Настоящий (или сгенерированный по оборудованию) Valve ID (VALVE_xx:xx:xx). |
3 | Идентификатор STEAM_, сгенерированный по IP-адресу клиента. |
4 | Идентификатор VALVE_, сгенерированный по IP-адресу клиента. |
5 | Устаревшее значение — клиент отклоняется. |
6 | Зарезервировано для будущего использования. |
7 | HLTV. |
8 | STEAM_ID_LAN. |
9 | STEAM_ID_PENDING. |
10 | VALVE_ID_LAN. |
11 | VALVE_ID_PENDING. |
12 | STEAM_666:88:666. |
| Параметр | По умолчанию | Применяется к |
|---|---|---|
cid_Steam | 1 | Легитимные клиенты Steam. |
cid_SteamPending | 5 | Клиенты, успешно прошедшие авторизацию, но не получившие пригодный Steam ID. |
cid_HLTV | 5 | Ретрансляторы HLTV. |
cid_NoSteam47 | 5 | Клиенты протокола 47 без поддержки генерации уникального идентификатора. |
cid_NoSteam48 | 5 | Клиенты протокола 48 без поддержки генерации уникального идентификатора. |
cid_RevEmu | 1 | revEmu ≥ 9.74. |
cid_RevEmu2013 | 1 | RevEmu 2013. |
cid_SC2009 | 1 | SteamClient 2009 / revEmu > 9.82. |
cid_OldRevEmu | 1 | Более старые версии revEmu. |
cid_SteamEmu | 1 | SteamEmu авторства hCupa. |
cid_AVSMP | 1 | AVSMP (взломанный Steam). |
cid_Setti | 3 | Сканер серверов SETTI. |
cid_SXEI | 1 | Клиенты sXeI. |
Параметр HLTVExcept_IP (по умолчанию 127.0.0.1) позволяет HLTV с указанного IP-адреса подключиться даже тогда, когда cid_HLTV отклоняет HLTV-клиентов.
Настройки авторизации
| Параметр | По умолчанию | Назначение |
|---|---|---|
AuthVersion | 4 | Версия протокола авторизации: 1 — DProto (устарела), 2 — Reunion 2015–2018, 3 — Reunion 2018–2024, 4 — текущая (рекомендуется). |
SteamIdHashSalt | (пусто) | Соль для хеширования генерируемых Steam ID: необратимо изменяет их и тем самым препятствует краже идентификаторов. Рекомендуемая длина — от 32 символов, минимальная — 16. При AuthVersion >= 3 пустое значение приводит к сбою инициализации ReUnion — чтобы отключить хеширование (не рекомендуется), укажите явно 0, а не оставляйте поле пустым. |
SC2009_RevCompatMode | 1 | Делает идентификаторы, сгенерированные SC2009, совместимыми с revEmu. Не может быть отключён при AuthVersion >= 3. |
EnableSXEIdGeneration | 0 | Включает генерацию идентификаторов на основе данных клиента sXeI. Включайте только в том случае, если у вас действительно развёрнута конфигурация с поддержкой sXeI. |
EnableGenPrefix2 | 0 | Добавляет второй префикс идентификатора, снижая вероятность коллизий среди генерируемых идентификаторов. Действует только при заданном SteamIdHashSalt; не может быть отключён при AuthVersion >= 3. |
Устаревшие префиксы authid
Параметры IPGen_Prefix1/2, Native_Prefix1, RevEmu*_Prefix1, SC2009_Prefix1, OldRevEmu_Prefix1, SteamEmu_Prefix1, AVSMP_Prefix1, Setti_Prefix1 и SXEI_Prefix1 применяются только при значении AuthVersion, равном 1 или 2. При рекомендуемом AuthVersion = 4 весь этот раздел игнорируется — оставьте значения по умолчанию.
Независимо от версии, banid всегда использует SteamID без какого-либо префикса.
Серверные запросы
| Параметр | По умолчанию | Назначение |
|---|---|---|
ServerInfoAnswerType | 0 | 0 — ответы нового образца, как у Steam (рекомендуется), 1 — ответы старого образца GoldSrc, 2 — гибридный режим: сервер виден и там, и там, но отвечает на каждый запрос трижды. |
FixBuggedQuery | 1 | Исправляет поведение клиентов с некорректным браузером серверов, которые иначе зависают при подключении. |
EnableQueryLimiter | 1 | Ограничивает частоту серверных запросов (TSource, список игроков и т. п.). Укажите 0, если частота уже ограничивается внешними средствами. |
QueryFloodBanLevel | 400 | Количество запросов в секунду, при котором IP-адрес блокируется. Диапазон 320–2048; легитимный трафик редко превышает ~80 запросов в секунду. |
QueryFloodBanTime | 10 | Длительность блокировки за флуд запросами в минутах, 0–60. Значение 0 блокирует запросы, не выдавая бан. |
QueryLimiterExceptIP | (раздел, пуст) | Список IP-адресов (по одному в строке в разделе [QueryLimiterExceptIP]), на которые ограничитель запросов не распространяется. |
AllowSplitPackets | 0 | Разрешает разбивать исходящие пакеты размером более 1400 байт, как это делает оригинальный клиент Steam. Некоторые средства мониторинга такое разбиение не поддерживают. |
IDClientsLimit | 1 | Максимальное число одновременных подключений с одним Steam ID, 0–32. Значение 0 снимает ограничение. Полезно при отладке с несколькими экземплярами клиента. |
Журналирование
| Параметр | По умолчанию | Назначение |
|---|---|---|
LoggingMode | 0 | 0 — выключено, 1 — в консоль, 2 — в файлы журнала, 3 — и то, и другое. |
Частые вопросы
- Я задал
SteamIdHashSaltтак же, как в DProto, но у игроков другие SteamID. В ReUnion используется другой, более надёжный алгоритм хеширования. Знание SteamID игрока до включенияSteamIdHashSaltне помогает воспроизвести его после. - Можно ли что-то сделать с подменой SteamID? Нет — программы подмены идентификаторов формируют корректные тикеты авторизации, поэтому сервер не в состоянии определить, что идентификатор подменён. Заданный
SteamIdHashSaltпо крайней мере не позволяет намеренно выдать себя за конкретного другого игрока. - Некоторые средства мониторинга серверов не могут получить список игроков. Скорее всего, они используют устаревший формат запроса; применяйте актуальную библиотеку запросов, например PHP-Source-Query или аналогичную.
- В DProto был параметр
Game_Name, а в ReUnion его нет. Изменяйте отображаемое название игры из плагина.