Обновление CS2 (10 сент. 2026 г.)
В обновлении CS2 добавлены новые настройки шифрования GOTV, экспериментальная система CustomPlayerCamera для скриптов и зрителей, а также расширенные опции для показа кастомных HUD зрителям.
Кратко
- Новые опции шифрования GOTV и управления ретрансляцией чата дают организаторам турниров и вещателям более тонкий контроль над тем, какие данные видят зрители и инструменты.
- Экспериментальная система `CustomPlayerCamera` с режимами follow и offset заменяет старый API камеры для скриптов и пользовательского контента.
- Пользовательские сообщения чата получили флаг `textallchat`, а устаревшие форматы CS:GO явно помечены как `_CSGOLegacy` для интеграций.
- Сущности пользовательских HUD‑макетов можно пометить как наблюдаемые, чтобы зрители видели индивидуальные скриптовые UI каждого игрока.
- Обновления упаковки и строк (включая иконки `de_cache` и несколько языковых файлов) согласуют инструменты и активы с новыми сетевыми и камерными возможностями.
Это обновление сосредоточено на новых средствах шифрования GOTV, более гибкой системе пользовательской камеры для скриптов и зрителей, а также на ряде сопутствующих правок в сетевом стеке и инструментах.
Шифрование GOTV и управление ретрансляцией чата
Добавлено несколько новых опций, задающих, как отправляются данные GOTV и кто их может расшифровывать — в первую очередь для организаторов турниров, вещателей и операторов серверов.
-
Ключи для клиента:
cl_decryptdata_key— ключ для расшифровки зашифрованных GOTV‑сообщений.cl_decryptdata_key_pub— ключ для расшифровки публичных зашифрованных GOTV‑сообщений.
Эти конвары позволяют совместимым клиентам (например, инструментам вещания) предоставлять ключи для декодирования зашифрованных данных из GOTV. Судя по всему, это рассчитано на официальные или приватные трансляции, а не на обычных игроков.
-
Ключи на сервере:
tv_encryptdata_key— при установке в валидный ключ сообщения связи будут шифроваться для GOTV.tv_encryptdata_key_pub— при установке в валидный ключ публичные сообщения связи будут шифроваться для GOTV.
С этими настройками трафик GOTV может шифроваться на сервере до отправки зрителям или инструментам вещания. Это помогает защитить конфиденциальную информацию — например, командную связь или тактические данные на профессиональных событиях.
-
Тип зашифрованного сетевого сообщения:
- Новый служебный пакет
svc_EncryptedDataсCSVCMsg_EncryptedDataнесёт зашифрованный полезный груз и полеkey_type. - Пакеты голоса (
CSVCMsg_VoiceData) теперь содержат флагcaster, который, вероятно, позволяет отличать голос комментатора от голоса игрока в GOTV.
В совокупности эти изменения указывают на более продвинутую схему выборочного шифрования разных категорий данных GOTV (например, внутренняя командная связь vs. публичные сообщения) с возможностью дешифровки авторизованными инструментами.
- Новый служебный пакет
-
Опции ретрансляции чата в GOTV:
tv_relaytextchat— ретрансляция текстового чата в GOTV:0 = off, 1 = say, 2 = say+say_team.tv_show_allchatудалён.
Операторы серверов получили более явный контроль над тем, какие текстовые чаты игры видны зрителям GOTV, включая возможность ретрансляции только командного чата.
Пользовательские сообщения чата и совместимость с наследием
Определения пользовательских сообщений были уточнены так, чтобы явно разграничивать поведение CS2 и устаревшие форматы CS:GO.
-
Переименованы устаревшие сообщения:
CS_UM_SayText,CS_UM_SayText2,CS_UM_TextMsgиCS_UM_UpdateTeamMoneyбыли помечены суффиксом_CSGOLegacyво внутренних перечислениях.
Это означает, что CS2 явно маркирует некоторые типы сообщений как форматы из CS:GO, при этом номера сообщений остаются прежними. Плагины, инструменты или сторонние сервисы, полагающиеся на сырые ID пользовательских сообщений, должны учитывать явную метку «legacy».
Кроме того, сообщения чата получили дополнительную метаинформацию:
-
Новое поле
textallchat:CUserMessageSayTextиCUserMessageSayText2теперь включают булево полеtextallchat.
Этот флаг предназначен для указания, относится ли сообщение к «all chat» (общему чату), что помогает HUD, парсерам и оверлеям надёжнее отличать глобальный чат от командного или локального.
Новая система CustomPlayerCamera для скриптов и зрителей
Введена новая, более функциональная система камеры для скриптового контента; старая интерфейсная часть помечена как устаревшая.
-
Новый API камеры в
point_script:CSPlayerPawn.GetCustomCamera()теперь возвращаетCustomPlayerCamera.- Предыдущий метод
GetCamera()пока остаётся, но явно помечен как deprecated.
-
Класс
CustomPlayerCamera:- Экспортируется в скрипты как
CustomPlayerCamera(внутри —CCSCustomPlayerCamera). - Основные методы:
GetPlayer()— возвращает связанныйCSPlayerPawn.GetMode()/SetMode(mode: CustomCameraMode)— управляют поведение камеры.SetFollowConfig(followConfig: CameraFollowConfig)— настраивает параметры слежения.
- Экспортируется в скрипты как
-
Режимы камеры (
CustomCameraMode/CustomCameraMode_t):DISABLED— камера использует обычную позицию глаз и углы игрока.CONTROLLED— позиция и углы берутся напрямую из сущности камеры.CONTROLLED_POSITION— позиция берётся из сущности камеры; углы остаются под контролем игрока.FOLLOW_POSITION— позиция следует за настроенным смещением от отслеживаемой точки; углы управляются игроком.
-
Параметры
CameraFollowConfig:followEntity— сущность для слежения.followEyes— брать ли позицию слежения от глаз сущности вместо её origin.followOffset— смещение от позиции слежения.cameraOffset— смещение камеры вокруг отслеживаемой позиции, повернутое по углам глаз игрока.clipCameraOffset— выталкивать ли камеру ближе, чтобы избежать клиппинга в солидные объекты.cameraOffsetReturnStrength— насколько сильно камера возвращается к идеальному смещению после клиппинга.
Для создателей, использующих cs_script, это открывает более продвинутые возможности: следование за игроками с настраиваемыми отступами, орбитальные кадры с учётом коллизий и кинематические постановки, не требующие перемещения самого pawn игрока. Система помечена как экспериментальная — скрипты, использующие её, могут потребовать правок по мере развития API.
- Старый
CSPlayerCameraобъявлен устаревшим:GetCamera()и классCSPlayerCameraпока присутствуют, но планируются к удалению в будущем.- Старые поля вроде
m_bEnabledиm_bIsControllingAnglesудалены в пользу новой общей базыCustomPlayerCamera.
Авторам карт и игровых режимов, использующим старую камеру, сто́ит начать миграцию на CustomPlayerCamera и GetCustomCamera().
Наблюдаемость пользовательских HUD‑макетов
Пользовательские HUD‑макеты получили метаданные, позволяющие управлять тем, что видят зрители.
-
Новое свойство
Observableв Hammer (csgo.fgd):- Сущность
cs_custom_layout(Panorama UI, управляемая черезcs_script) теперь имеет ключobservable(boolean):- Описание: "Show each player's own version of this UI to whoever is spectating them."
- Сущность
-
Соответствующее сетевое поле:
- Внутренний
CCSCustomHudLayoutполучил булево полеm_bObservableкак на клиенте, так и на сервере.
- Внутренний
Практически это значит, что скриптовые элементы HUD могут быть помечены так, чтобы зрители видели ту же версию интерфейса, что и сам игрок — аналогично встроенному HUD. Это упрощает создание турнирных оверлеев или информационных панелей, которые автоматически показываются зрителям, следующих за конкретным игроком.
Инструменты, локализации и упаковка
Обновление также содержит мелкие чистки и фоновые правки.
-
Иконки карты:
- В манифесте затронуты записи для скриншотов‑иконок карты
de_cacheв нескольких разрешениях (360p, 720p, 1080p), но в итоге пути остались прежними. Обычно это указывает на репак активов или небольшие пересжатия изображений загрузочного экрана.
- В манифесте затронуты записи для скриншотов‑иконок карты
-
Записи локализации:
- В манифесте обновлялись ссылки на
resource/csgo_dutch.txt,csgo_romanian.txt,csgo_schinese.txt,csgo_swedish.txtиcsgo_tchinese.txt. Файлы остались, что говорит скорее об их репаках/обновлениях, чем о добавлении или удалении языков.
- В манифесте обновлялись ссылки на
-
Строки для сетевых и инструментальных компонентов:
- В нескольких бинарниках движка и инструментов обновлены внутренние строки в соответствии с новым типом зашифрованного сообщения GOTV и изменениями камеры.
- Некоторые старые упоминания общего
key_typeв инструментах убраны — вероятно, в рамках консолидирования обработки ключей шифрования.
Эти изменения в основном не затронут повседневный игровой процесс, но улучшат стабильность инструментов и подготовят почву для будущих фич.
Итоговое влияние
Для большинства игроков изменения будут прозрачно незаметны. Основные бенефициары:
- Турниры и вещательные сетапы: получают более детальную настройку шифрования GOTV и контроля ретрансляции чата, а также чёткое разграничение публичных и чувствительных данных.
- Создатели скриптов и карт: приобретают мощную систему
CustomPlayerCameraи возможность помечать пользовательские HUD‑макеты как видимые для зрителей. - Разработчики инструментов и плагинов: должны учесть новые и переименованные пользовательские сообщения, дополнительную метаинформацию чата и новый тип зашифрованного сетевого сообщения при обновлении интеграций.
Поскольку новая камера и система HUD помечены как экспериментальные, а часть старых API объявлена устаревшей, сообществу авторов стоит начать адаптацию заранее, чтобы избежать будущих несовместимостей.
