Обновление CS2 (9 июл. 2026 г.)
Последний билд CS2 сосредоточен на движке, инструментах и отладке: добавлены опции для визуализации урона от бомбы и стрельбы по брошенным гранатам, расширены инструменты навигации и аудио Beat Pattern, улучшены GPU-отсечение и параметры теней, а также проведё
Кратко
- Новые конвары и команды добавляют инструменты для визуализации урона от бомбы и опциональное правило для детонации брошенных гранат при выстреле (`mp_shoot_dropped_grenades`).
- Навигация и поведение ботов получили новые отладочные хелперы и правки сглаживания пути, включая `nav_edit_draw_navlinks` и изменение `nav_smooth_push_from_walls`.
- Рендеринг и тени получили расширенные опции GPU-отсечения и визуализации meshlet-ов, а рендеринг sparse shadow tree включён по умолчанию в dev-конфиге.
- Аудиосистема переходит от устаревших sequencer к системе Beat Pattern с новыми командами `snd_beatpattern_*` и подробными SOS-флагами для отладки.
- Внутренние списки карт для матчмейкинга и veto были обновлены: в разных пулах появятся карты вроде Cache, Boulder, Fachwerk, Shelter, Debris и Eldorado.
- Обширный рефактор схем и метаданных по клиенту, серверу, Pulse, физике, аудио и инструментам улучшает интроспекцию движка и гибкость для будущих функций.
Это обновление в основном посвящено «внутренней» работе движка, но при этом добавляет несколько полезных игровых и отладочных хуков для урона от бомбы, гранат, навигации, звука и рендеринга — информация, которая пригодится мапперам, моддерам, администраторам серверов и пользователям инструментов.
Изменения игрового процесса и серверной части
- Стрелять по брошенным гранатам (
mp_shoot_dropped_grenades): Новый реплицируемый релизный конвар управляет тем, будут ли брошенные гранаты детонироваться при попадании. Это серверное правило (видимое и на клиентах) — полезно для кастомных серверов и экспериментов с более реактивным поведением гранат. В официальном матчмейкинге поведение не меняется, пока Valve не включит его там. - Инструменты для визуализации урона от бомбы (
cs2_bomb_damage_showdebugwindow,bake_bomb_damage_render_visualization,cl_bake_bomb_damage_debug): Новые параметры только для разработки/читов предназначены для отладки и визуализации расчётов повреждений от взрыва. Это указывает на то, что Valve продолжает работать над тем, как рассчитывается и визуализируется радиус урона бомбы — возможно, ради более точных инструментов для создателей карт. - Команда перезапланировки бомбы (
replant_bomb): Новый чит-команд в игровом DLL позволяет переустановить бомбу. Полезно для отладки, воспроизведения ситуаций и внутренних инструментов, но не для обычного геймплея. - Флаг корректности Steam-аутентификации (
sv_steamauth_correct): Новый релизный конвар описывается как «Correct behavior» и дополняетsv_steamauth_enforce. Это признак работы над проверкой/принуждением Steam-сессий — операторы серверов могут заметить тонкие изменения в обработке редких проблем с подключением/аутентификацией, если этот флаг будет использоваться.
Навигация и инструменты поведения ботов
- Новые хелперы для тестов навигации (
nav_test_search_on_path_setgoal): Чит-конвар помогает тестировать тактические «on path» поиски сSetGoal, переключаясь между альтернативными поисками. Нацелен на авторов нав-сеток и тюнинг Valve. - Визуализация в
nav_edit(nav_edit_draw_navlinks): В режимеnav_editновая опция может отрисовывать нав-ссылки. Это облегчит нав-редакторам и мапперам понимание и отладку сложных соединений между нав-областями (прыжковые ссылки, переходы и т. п.). - Настройки сглаживания пути:
nav_smooth_push_from_wallsтеперь по умолчанию равен12вместо-1, что, вероятно, меняет то, насколько сглаживание толкает агентов от стен. В продакшне это может слегка поменять поведение ботов на углах.- Несколько переменных генерации и тестирования нав-сеток получили обновлённые пределы и опции (например,
nav_gen_opt_to_quads_weld_limit_startтеперь допускает0), что в основном затронет тех, кто генерирует или уточняет нав-сети.
- Упорядочение определений стоимости пути: Внутренние схемы/типы для
CNavPathCost,CNavFlagsи связанных перечислений по гравитации/атрибутам были перемещены или рефакторены. Это управляет тем, как ИИ оценивает лестницы, полёт/плавание и переходы. Поведение в матчах не должно измениться, но это делает систему более гибкой для будущих улучшений.
Рендеринг, тени и контроль производительности
- Sparse shadow tree включён по умолчанию (
sparseshadowtree_enable_rendering true): Отрисовка SST, которая обрабатывает статическую геометрию в каскадных картах теней, теперь включена по умолчанию в dev-конфигурации. Это указывает на продвижение Valve в сторону оптимизированных и качественных путей теней. - Тонкая настройка каскадных карт теней (
csm_*): Многие отладочные и переопределяющиеcsm_*конвары получили явные флагиclientdllи уточнённые значения по умолчанию:csm_sst_shadow_focus_region_thin_compensationувеличен с500до1500.- Ряд переопределений CSM теперь классифицирован как client-only cheats, что делает область их применения понятнее и ограничивает случайное серверное воздействие. Эти изменения в первую очередь для графических инженеров и QA, но они могут повлиять на дальнейшую подгонку солнечных теней.
- Визуализация meshlet-ов и GPU-отсечения:
- Новая режим визуализации:
sc_visualize_sceneobjects_meshletsс значениями изESceneObjectMeshletVisualization(none/meshlet/culled) даёт возможность увидеть culling на уровне meshlet-ов. - Новые флаги для экспериментов с mesh-пайплайном:
sc_mesh_gpu_occlusion_culling,sc_mesh_gpu_volume_culling,sc_mesh_mesh_shaders,sc_mesh_shadows_batch_across_materials,sc_mesh_use_pmb. Эти опции только для разработки и по умолчанию выключены, но демонстрируют работу над GPU-ориентированным рендерингом и mesh shaders.
- Новая режим визуализации:
- Параллельное обновление UI с сервером (
r_ui_update_parallel_with_server): Новый защитный флаг позволяет обновлять UI параллельно с работой сервера. Это часть усилий по снижению фризов и улучшению отзывчивости, особенно на загруженных серверах. - Замораживание отрисовки GPU для отладки (
r_gpu_debug_draw_freeze): Позволяет разработчикам зафиксировать GPU-отладки отрисовки. Чисто диагностическая функция, но говорит о более глубокой поддержке GPU-отладки во внутренних инструментах. - Удалены устаревшие переключатели производительности: Несколько низкоуровневых рендер-конваров, таких как
r_force_zprepass,r_zprepass_normals,r_texture_stream_resolution_biasи некоторые отладочные просматривающие рендер-таргеты были удалены. Это упрощает поверхность конфигурации рендера и указывает на то, что соответствующие кодовые пути закреплены в одном поведении по умолчанию.
Симуляция ткани и интерполяция
- Опции интерполяции вращения ткани (
cloth_interp_rot,sv_cloth_interp_rot): Новые клиентский и серверный флаги только для разработки позволяют переключать ротационную интерполяцию ткани. Они предназначены для отладки и настройки, и подтверждают работу над устойчивостью и визуальным качеством ткани (например, рукава, флаги и другие привязанные пропы).
Сеть, дельты и очереди команд
- Дельта-кодирование команд пользователя (
sv_cq_delta_encode_svc_usercmds,sv_cq_validate_encoded_svc_usercmds,cl_svc_usercmds_delta_validate):- У серверов появился переключатель на дельта-кодирование пользовательских команд (
svc_UserCmds) и очень дорогой режим валидации, который отправляет и дельты, и полные команды для перекрёстной проверки. - На клиентах
cl_svc_usercmds_delta_validateможет сотрудничать с сервером для валидации. Это глубокая сеточная доработка и не изменит геймплей напрямую, но показывает, что Valve укрепляет корректность и производительность передачи команд игроков.
- У серверов появился переключатель на дельта-кодирование пользовательских команд (
- Настройки Steam-аутентификации (
sv_steamauth_correct): Как отмечено выше, этот флаг уточняет поведение принуждения Steam-сессий в паре сsv_steamauth_enforceи может уменьшать краевые несоответствия или некорректные отключения в будущих обновлениях. - Очистка отладочных флагов дельт/смещений сущностей: Несколько dev-only конваров вокруг упаковки сущностей и проверки networkvar были удалены (
sv_enable_delta_packing,sv_log_change_offsets,sv_max_change_offsets,sv_ents_write_alarm,sv_pack_entities_verbose_*,sv_recipients_check,sv_networkvar_validate). Это указывает на стабилизацию этих систем до уровня, когда тяжёлые диагностические флаги больше не нужны.
Инструменты для мапперов, моддеров и технической отладки
Hammer, ResourceCompiler и набор инструментов
- Открыть Pulse-граф карты в инструменте (
open_current_map_pulse_in_tool): Новая команда только для редактора открывает граф логики Pulse, используемый в текущей карте. Pulse — визуальная система логики/скриптинга Valve; это облегчает переход от карты к её логике в редакторе. - Анализ логических сущностей (
logic_entity_analyzer_debug): Новый чит/отладочный конвар для логических сущностей. Вероятно используется для визуализации или логирования I/O и состояний сущностей — полезно при отладке сложных скриптов карт. - Detail props и суб-ассеты: Схемы инструментов для
CDetailPropModelиCSubassetTypeInfoтеперь раскрывают свойства вродеm_bWorldSpaceOrientation,m_bAllowDefinitionsиm_bAllowReferences. Для авторов это даёт более тонкий контроль над ориентацией детал-пропов в мировом пространстве и тем, как решаются субассеты при авторинге. - Рефактор Pulse-системы: Большой набор связанных классов и перечислений (
CPulseCell_*,PulseCursorExecResult_t,PulseDurationStringFormat_tи т. п.) был перераспределён между runtime (pulse_runtime_lib), authoring (pulse_system,pulsedoc_lib) и компиляторными (resourcecompiler) библиотеками. Это не меняет геймплей напрямую, но упрощает работу с Pulse в инструментах.
Сцена, анимация и звуковое авторство
- Данные анимации и look-at цепочки:
- Новые/обновлённые типы в
animlibиanimdoclibдля узлов цепочек look-at, переопределений root motion и сжатых float-каналов (CNmFloatChannelData,CNmFloatChannelSet_t,ChannelSettings_t) были перераспределены между рантаймом и инструментами. - Описания в редакторе, такие как «Add an additional local space offset to the end effector to use for aiming the lookat», перемещены из рантайма в документацию инструментов. Это подчёркивает разделение runtime и редакторских забот: бинарники игры легче, возможности авторинга шире.
- Новые/обновлённые типы в
- Meshlet-ы в сценовой системе: Новое перечисление
ESceneObjectMeshletVisualizationи связанный конвар позволяют пользователям инструментов и QA видеть, какие meshlet-ы отрисовываются или отсеиваются — важно для оптимизации сложных моделей и геометрии карт. - Расширение
sounddoc_libи описателей узлов аудиографа:- Полный набор дескрипторов узлов (реквербы свёртки, фильтры, динамика, вокодеры и т. п.) добавлен или перераспределён.
- Низкоуровневые команды для обработки импульсных откликов (
CMD_BLEND_VSNDS_TO_IMPULSERESPONSE,CMD_IMPULSERESPONSE_DELAYи т. п.) были объединены. Это даёт звуковым дизайнерам более гибкие возможности по созданию сложных микс-графов и пространственных ревербов.
- Контейнеры голосов и рандомный паннер: Новые/уточнённые схемы, такие как
CVoiceContainerLoopTriggerWithRandomPanner,CVoiceContainerVsndRadioButton,CVoiceContainerVsndTriggerиCRandomPannerControls, дают структурированные способы рандомизировать панорамирование и громкость — для менее повторяющихся и более разнообразных звуков.
Workshop и облачные утилиты
- Управление облачными сохранениями Workshop (
workshop_clear_cloud_save,workshop_dump_cloud_contents): Две новые dev-only команды позволяют:- Очистить сохранение Workshop в Steam Cloud по published file ID или очистить не-workshop addon save.
- Вывести содержимое текущего облака. Это рассчитано на QA Valve и продвинутых моддеров при отладке синхронизации облака.
Аудиосистема и Beat Pattern
В обновлении старую терминологию «sequencer» в аудио заменили на систему Beat Pattern и добавили инструменты для неё.
- Новые команды beatpattern:
snd_beatpattern_flush— перезагрузить все данные beat pattern.snd_beatpattern_print_activetracks/snd_beatpattern_print_patterns— вывести активные треки и известные паттерны.snd_beatpattern_set_track_bpm/snd_beatpattern_set_track_transpose— изменить темп и транспозицию для отдельных треков.snd_beatpattern_stop_all_tracks/snd__beatpattern_stop_track— остановить один или все треки. Эти команды заменяют устаревшую семьюsnd_sequencer_*, которые были удалены.
- Визуализационные конвары для beatpattern:
snd_beatpattern_show_bpm,snd_beatpattern_show_events,snd_beatpattern_show_quantize_queue,snd_beatpattern_use_lookaheadпомогают отлаживать расписание и срабатывание аудиособытий.snd_sos_beatpattern_show_operator_updatesпоказывает изменения операторов на уровне SOS.
- Улучшения отладки SOS:
snd_sos_print_frametimeвыводит время кадра по звуку.snd_sos_tools_detailed_debugging— dev-only архивный флаг для включения более подробной отладки.
Эти инструменты ориентированы на звуковых дизайнеров, но помогут лучше синхронизировать музыку, стингеры начала/конца раунда и ритмические эффекты в мире.
Субтитры и интерфейс
- Новый контроль для субтитров (
cc_force_combine_chatter): Dev-only конвар для Combine chatter. Хотя CS2 не использует Combine NPC, это может быть общий механизм или оставшийся ярлык; фактически — инструмент/отладка для субтитров. - Удалены старые команды обслуживания субтитров: Команды вроде
cc_findsound,cc_flush,cc_random,cc_showblocksудалены из публичного списка команд — это очистка инструментов субтитров. - Отображение конваров на экране (
display_convars_onscreen_in_big_text): Новый реплицируемый чит позволяет перечислить имена конваров для показа крупным текстом на экране — удобно для записи, QA и контент-креаторов. - Декали подтверждения попадания и обратная связь (
r_decal_hit_confirmation): Новый реплицируемый конвар указывает на эксперименты с декалями подтверждения попадания. Пока dev-only, но показывает интерес к дополнительным визуальным каналам обратной связи. - Отладка имён игроков (
cl_playerslot_in_names): При включении клиент будет добавлять индекс слота контроллера перед именами — полезно для локальных multi-controller сетапов и отладки.
Физика, материалы и отрисовка мира
- Обновлённые схемы составных тел/шаров: Классы вроде
RnCompound_t,RnCompoundDesc_t,FeBoneMergeLink_t,CastSphereSATParams_tбыли рефакторены или перемещены. Это внутренняя работа представления физики, которая может улучшить авторинг, предварительный просмотр коллизий или производительность. - Поля эмиссивности мира удалены из некоторых инструментов: Некоторые инструменты больше не экспортируют
AggregateVertexEmissiveStreamOnDiskData_tи связанные поля эмиссивного буфера в их таблицах строк — признак переработки обработки вершинной эмиссивности в более унифицированный путь. - Упорядочение локальной экспозиции постобработки:
PostProcessingLocalExposureParameters_tиCLocalExposureLayerперемещены в схемы инструментов.- Референсы рантайма сокращены, и
resourcecompiler/materialsystemтеперь разделяют ясные структуры для локальной экспозиции. Это делает рантайм легче, позволяя художникам по постобработке настраивать слои локальной экспозиции.
Мелкие изменения в командах и dev-флагах
Множество небольших поправок повышают согласованность и уменьшают шум для разработчиков и продвинутых пользователей:
- Предсказание и отладочный текст:
cl_predictioncopy_describeтеперь явно ссылается наPredictionMap_tвместо общегоdatamap_t, что проясняет структуру данных.debugoverlay_circle_vertsдаёт возможность менять разрешение круга для отладочных оверлеев.
- Timedemo во флаге релиза:
timedemo_startиtimedemo_endтеперь помечены как релизные команды, а не только dev/защитные — полезно для официальной профильной работы. - Инструменты записи микрофона:
start_rec_mic,stop_rec_mic,stop_rec_mic_allбыли добавлены как связанные dev-команды для записи голоса в WAV — для QA и аудио-отладки (и потенциально полезно контент-креаторам во внутренних инструментах).
- Управление облаком Workshop: Команды управления облачными сохранениями стали явнее (см. выше).
- Удалены команды управления мутами голоса: Несколько dev-only команд (
voice_mute,voice_unmute,voice_show_mute,voice_reset_mutelist) убраны из общего списка команд — вероятно, они перемещены в UI или остаются только во внутренних сборках.
Пулы карт и конфигурация матчмейкинга
Внутренние cvar-ы со списками карт, которые использует матчмейкинг для определения плейлистов, слегка пересобраны (они имеют хэшированные суффиксы, например player_competitive_maplist_8_10_0_A062AC6A):
- Список для 2v2: Теперь включает
mg_de_debrisиmg_de_eldoradoвместе с уже существующими Inferno, Nuke, Vertigo, Poseidon и Overpass. - Список для 5v5 (8–10 игроков):
- Убраны
mg_de_wardenиmg_de_stronghold, добавленыmg_de_boulder,mg_de_fachwerkиmg_cs_shelter. Сохраняются классики: Dust2, Train, Ancient, Inferno, Nuke, Vertigo, Mirage, Overpass, Office, Italy, Cache и Anubis.
- Убраны
- Порядок veto-пиков карт (
sv_mapvetopickvote_maps): В наборе по умолчаниюde_overpassзаменён наde_cache, итоговый порядок:de_cache, de_anubis, de_inferno, de_mirage, de_dust2, de_nuke, de_ancient.
Эти cvar-ы не являются официальными объявлениями плейлистов для игроков, но показывают, какие карты Valve готовит или тестирует для внутренних сценариев и потоков veto. Официальные ротации режимов могут не совпадать сразу.
Очистки схем и метаданных движка
Большая часть изменений — это правки схем и метаданных по всем подсистемам движка:
- Обновления схем API клиента/сервера:
client.kv3иserver.kv3содержат широкий набор новых или уточнённых API (для игроков, оружия, гранат, камер для превью карт, окружения и т. п.).- Многие классы, ранее неявные, теперь явно перечислены с суффиксом
*_API, что упрощает работу инструментов и систем интроспекции.
- Новые типы полей (
FIELD_NETWORK_QUANTIZED_VECTORWS,FIELD_NETWORK_ORIGIN_CELL_QUANTIZED_VECTORWS): Перечисления типов полей были скорректированы, некоторые устаревшие записи удалены. Это согласует метаданные схем с фактической сериализацией в сетке векторных полей в мировых координатах. - Pulse observables и blackboards: В разных бинарниках появились новые строки вроде
m_DependentObservableVars,m_DependentObservableBlackboardReferences,m_EvaluateConnection, в то время как старые описания «Asynchronous / Fire and Forget» исчезают. Это указывает на реорганизацию текста runtime/debug Pulse в более структурированную, data-driven форму.
Эти изменения невидимы игрокам, но важны для стабильности и работы сторонних инструментов, которые анализируют или используют данные движка.
Общий итог
Это не большой балансный патч — обновление уплотняет движок и набор инструментов вокруг CS2 и при этом тихо включает эксперименты:
- Операторы серверов получают переключатель для стрельбы по брошенным гранатам и более понятные инструменты по визуализации урона от бомбы — это даёт пространство для более гибких сценариев и инструментов для создателей.
- Мапперы и редакторы навигации видят больше опций для отладки ссылок навигации и режимов поиска, а также улучшенные средства инспекции сущностей и логики.
- Звуковые команды и инструменты консолидированы вокруг системы Beat Pattern, что обеспечивает более гибкое и точное управление музыкой и ритмическими эффектами.
- Системы рендеринга и теней продолжают эволюционировать в сторону GPU-отсечения и meshlet-технологий, с новыми отладочными переключателями и более определённым поведением по умолчанию для sparse shadow tree.
Для большинства игроков обновление будет ощущаться как тихая поддержка и стабилизация. Для создателей контента, администраторов серверов и технических моддеров это ещё один признак того, что Valve продолжает инвестировать в базовые подсистемы, которые определяют визуал, звук и сценарную логику CS2.
