Atualização do CS2 (9 de jul. de 2026)
Esta atualização foca em trabalho de motor e ferramentas, adicionando discretamente opções para dano da bomba e granadas detonáveis por tiro, novas ferramentas de navegação e áudio (Beat Pattern), ajustes de culling/shadows por GPU e amplos refactors de schema
Resumo rápido
- Novos convars e comandos adicionam ferramentas de visualização de dano da bomba e uma regra opcional para granadas largadas serem detonadas ao serem disparadas (`mp_shoot_dropped_grenades`).
- Navegação e pathing de bots recebem novos helpers de debug e ajustes de suavização, incluindo `nav_edit_draw_navlinks` e mudanças em `nav_smooth_push_from_walls`.
- Renderização e sombras ganham opções ampliadas de culling por GPU e visualização de meshlets, e a renderização do sparse shadow tree fica ativada por padrão no config de dev.
- Sistemas de áudio migram de sequencers legados para um framework Beat Pattern, com novos comandos `snd_beatpattern_*` e flags de debug SOS detalhadas.
- Listas internas de mapas para matchmaking e veto são atualizadas para incluir mapas como Cache, Boulder, Fachwerk, Shelter, Debris e Eldorado em diversos pools.
- Amplas refatorações de schema e metadata por cliente, servidor, Pulse, física, áudio e ferramentas melhoram introspecção do motor e flexibilidade para recursos futuros.
Esta atualização foca principalmente em trabalho de motor e ferramentas, mas adiciona discretamente ganchos de jogabilidade e debug para dano da bomba, granadas, navegação, áudio e renderização que mappers, modders, operadores de servidor e usuários de ferramentas vão querer conhecer.
Gameplay e mudanças do lado do servidor
- Granadas caídas detonáveis (
mp_shoot_dropped_grenades): Novo convar replicado e de release controla se granadas largadas explodirão quando forem atingidas por tiros. Isso é uma regra do servidor (visível também nos clientes) e pode permitir que servidores personalizados ou modos futuros experimentem comportamentos de granada mais reativos. O comportamento do matchmaking oficial não muda a menos que a Valve ative isso lá. - Ferramentas de visualização de dano da bomba (
cs2_bomb_damage_showdebugwindow,bake_bomb_damage_render_visualization,cl_bake_bomb_damage_debug): Novas opções de desenvolvimento/cheat voltadas para visualização de dano da bomba. Indicam que a Valve está iterando na forma como o dano da bomba é calculado e pré-visualizado, possivelmente para suportar ferramentas de raio de explosão mais precisas para criadores. - Comando de replant de bomba (
replant_bomb): Novo comando de cheat presente no game DLL que permite replantar a bomba. Útil principalmente para debugging, reproduzir situações ou ferramentas internas, não para jogo normal. - Flag de correção de autenticação Steam (
sv_steamauth_correct): Novo convar de release descrito apenas como “Correct behavior”, emparelhado com o existentesv_steamauth_enforce. Indica trabalho sobre como servidores aplicam ou validam sessões Steam; operadores de servidor comunitários podem notar mudanças sutis em casos limites de conexão/autenticação se isso for usado.
Navegação e ferramentas de pathing de bots
- Novos helpers de teste de nav (
nav_test_search_on_path_setgoal): Novo convar de cheat para testar buscas táticas “on path” comSetGoal, alternando entre buscas alternativas. Destinado a autores de nav e ajuste de bots. - Visualização em
nav_edit(nav_edit_draw_navlinks): Em modonav_edit, nova opção pode desenhar nav links. Facilita para editores de navegação e mappers entenderem e debugarem conexões complexas entre áreas de nav (jump links, transições, etc.). - Ajustes de suavização de nav:
nav_smooth_push_from_wallsagora padrão12em vez de-1, o que provavelmente ajusta como o smoothing afasta agentes das paredes. Pode alterar sutilmente movimento de bots em cantos quando aplicado em produção.- Variáveis de geração e teste de nav tiveram limites/opções atualizados (por exemplo
nav_gen_opt_to_quads_weld_limit_startagora permite0), afetando quem gera ou refina navmeshes.
- Definições de custo de caminho limpas: Schemas/tipos internos para
CNavPathCost,CNavFlagse enums relacionados a gravidade/atributos foram movidos/refatorados. Controlam como IA e bots avaliam escadas, vôo/natação e transições. O comportamento em partidas ao vivo deve permanecer igual, mas prepara terreno para navegação mais flexível no futuro.
Renderização, sombras e controles de performance
- Sparse shadow tree ativado por padrão (
sparseshadowtree_enable_rendering true): A renderização SST, que lida com geometria estática em cascaded shadow maps, está ativa por padrão na configuração de desenvolvimento. Sugere avanço nos caminhos de performance e qualidade das sombras. - Ajustes em cascaded shadow map (
csm_*convars): Muitos convars de debug e override de CSM ganharam flags explícitas declientdlle tiveram defaults clarificados:csm_sst_shadow_focus_region_thin_compensationaumentou de500para1500.- Vários overrides de CSM foram reclassificados como cheats client-only, deixando seu escopo mais claro e limitando exposição acidental no servidor. Essas mudanças são voltadas a desenvolvedores gráficos e QA, mas podem influenciar como a Valve afina sombras diretas no futuro.
- Visualização de meshlet e culling por GPU:
- Novo modo de visualização:
sc_visualize_sceneobjects_meshletscom valores doESceneObjectMeshletVisualization(none/meshlet/culled) para ver culling em nível de meshlet. - Novos controles experimentais para pipeline de mesh:
sc_mesh_gpu_occlusion_culling,sc_mesh_gpu_volume_culling,sc_mesh_mesh_shaders,sc_mesh_shadows_batch_across_materials, esc_mesh_use_pmb. São opções de desenvolvimento desligadas por padrão, mostrando trabalho em renderização orientada à GPU e mesh shaders.
- Novo modo de visualização:
- Paralelismo UI/servidor (
r_ui_update_parallel_with_server): Flag defensiva que permite atualizar a UI em paralelo com trabalho do servidor. Pode fazer parte de esforços para esconder hitches e melhorar responsividade, especialmente em servidores carregados. - Congelamento de debug GPU (
r_gpu_debug_draw_freeze): Permite congelar desenhos de debug GPU. Ferramenta de diagnóstico que indica suporte de debug GPU mais profundo em ferramentas internas. - Remoção de toggles legados de performance: Vários convars de renderização de baixo nível como
r_force_zprepass,r_zprepass_normals,r_texture_stream_resolution_biase alguns viewers de render-target foram removidos. Simplifica a superfície de configuração de render e sugere que esses caminhos foram estabilizados.
Simulação de pano e interpolação
- Opções de interpolação de rotação de pano (
cloth_interp_rot,sv_cloth_interp_rot): Novas flags de cliente e servidor (dev-only) permitem alternar interpolação rotacional para tecido. Destinadas a debugging e tuning, confirmam trabalho em estabilidade e fidelidade visual de roupas/prop anexados.
Rede, deltas e filas de comandos
- Codificação delta de user commands (
sv_cq_delta_encode_svc_usercmds,sv_cq_validate_encoded_svc_usercmds,cl_svc_usercmds_delta_validate):- Servidores agora têm um switch para delta-encode de comandos de usuário (
svc_UserCmds) e um modo de validação extremamente custoso que envia tanto delta quanto comandos completos para cross-check. - No cliente,
cl_svc_usercmds_delta_validatepode cooperar com o servidor para validação. Isso é infraestrutura profunda de netcode e não altera jogo diretamente, mas indica fortalecimento de correção e performance na transmissão de comandos dos jogadores.
- Servidores agora têm um switch para delta-encode de comandos de usuário (
- Ajustes na autenticação Steam (
sv_steamauth_correct): Como citado acima, essa flag provavelmente refina comportamento de enforcement de sessão Steam em conjunto comsv_steamauth_enforce, podendo reduzir inconsistências ou kicks incorretos em casos limites. - Limpeza de debug em deltas de entidades/offsets: Vários convars dev-only relacionados a packing de entidade e validação de networkvar foram removidos (
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). Sugere que esses sistemas foram estabilizados ao ponto de não precisarem dessas diagnósticas pesadas em runtime.
Ferramentas para mappers, modders e debug técnico
Hammer, ResourceCompiler e tooling
- Abrir grafo Pulse do mapa atual nas ferramentas (
open_current_map_pulse_in_tool): Comando editor-only que abre o grafo de lógica Pulse usado no mapa atual. Pulse é o sistema visual de lógica/scripting da Valve; facilita para level designers e scripters saltarem do mapa para o asset de lógica no editor. - Inspeção de entidades de lógica (
logic_entity_analyzer_debug): Novo convar de cheat/debug para entidades lógicas. Provavelmente usado para visualizar ou logar I/O e mudanças de estado, útil para debugar scripts complexos de mapa. - Detail props e subassets: Schema do lado das ferramentas para
CDetailPropModeleCSubassetTypeInfoagora expõe propriedades comom_bWorldSpaceOrientation,m_bAllowDefinitionsem_bAllowReferences. Para criadores, isso traz controle mais granular sobre orientação em espaço mundial e resolução de subassets durante authoring. - Refactor do schema do Pulse: Um grande conjunto de classes e enums relacionados ao Pulse (
CPulseCell_*,PulseCursorExecResult_t,PulseDurationStringFormat_t, etc.) foi reorganizado entre runtime (pulse_runtime_lib), authoring (pulse_system,pulsedoc_lib) e compilador (resourcecompiler). Não muda gameplay diretamente, mas é uma limpeza significativa que deve tornar Pulse e ferramentas mais robustas.
Cena, animação e authoring de áudio
- Dados de animação e look-at chains:
- Novos/atualizados tipos em
animlibeanimdoclibpara nós de chain look-at, overrides de root motion e canais float comprimidos (CNmFloatChannelData,CNmFloatChannelSet_t,ChannelSettings_t) foram movidos entre runtime e ferramentas. - Descrições de editor como “Add an additional local space offset to the end effector to use for aiming the lookat” foram migradas de strings runtime para documentação de tooling. Essa separação sugere continuidade na política de manter runtime enxuto e expandir capacidades nas ferramentas de authoring.
- Novos/atualizados tipos em
- Meshlets do sistema de cena: O novo enum
ESceneObjectMeshletVisualizatione o cvar de visualização permitem que usuários de ferramentas e QA vejam quais meshlets são renderizados ou culled — importante para otimizar modelos complexos e geo de mapas. - Expansão do
sounddoc_lib:- Um conjunto completo de descritores de nós em
sounddoc_libfoi adicionado/redistribuído (reverbs por convolução, filtros, dynamics, vocoders, etc.). - Comandos de baixo nível para processamento de impulse-response (
CMD_BLEND_VSNDS_TO_IMPULSERESPONSE,CMD_IMPULSERESPONSE_DELAY, etc.) foram consolidados. Direcionado a sound designers que constroem grafos de mixagem complexos; o efeito prático é mais flexibilidade em espaços sonoros e comportamento de mix.
- Um conjunto completo de descritores de nós em
- Controles de voice container e random panning: Novos/refinados schemas como
CVoiceContainerLoopTriggerWithRandomPanner,CVoiceContainerVsndRadioButton,CVoiceContainerVsndTriggereCRandomPannerControlsoferecem formas estruturadas de randomizar panning e volume. Permite sons menos repetitivos (loops de ambiente, linhas de rádio, ticks mecânicos) sem custo runtime adicional.
Workshop e utilitários de nuvem
- Gerenciamento de cloud do Workshop (
workshop_clear_cloud_save,workshop_dump_cloud_contents): Dois novos comandos dev-only permitem:- Limpar um save do workshop no Steam Cloud por published file ID ou limpar o save de addon não-workshop.
- Imprimir o conteúdo atual da nuvem. Destinados ao QA da Valve e modders avançados que depuram problemas de sync na cloud.
Sistemas de áudio e Beat Patterns
A atualização substitui a terminologia legada de “sequencer” por um sistema Beat Pattern e adiciona ferramentas relacionadas.
- Novos comandos
beatpattern:snd_beatpattern_flush– recarrega todos os dados de beat pattern.snd_beatpattern_print_activetracks/snd_beatpattern_print_patterns– lista tracks ativas e padrões conhecidos.snd_beatpattern_set_track_bpm/snd_beatpattern_set_track_transpose– ajusta BPM e transpose de tracks específicas.snd_beatpattern_stop_all_tracks/snd__beatpattern_stop_track– para uma ou todas as tracks. Esses comandos espelham/substituem a família antigasnd_sequencer_*, que foi removida.
- Cvars de visualização para beat patterns:
snd_beatpattern_show_bpm,snd_beatpattern_show_events,snd_beatpattern_show_quantize_queue,snd_beatpattern_use_lookaheadajudam a debugar como beat patterns agendam e disparam eventos de áudio.snd_sos_beatpattern_show_operator_updatesrevela mudanças de operador na camada SOS (Source sound system).
- Melhorias de debug SOS:
snd_sos_print_frametimeimprime tempos por frame.snd_sos_tools_detailed_debuggingé uma flag arquivada dev-only para debug mais verboso.
Tudo voltado a sound designers, mas deve ajudar a manter música, stingers e efeitos rítmicos do mundo bem sincronizados e fáceis de afinar.
Legendas, UI e feedback
- Controle de legendas de chatter (
cc_force_combine_chatter): Novo convar de legendas (dev-only) focado em Combine chatter. CS2 não usa NPCs Combine, então pode ser tecnologia compartilhada ou rótulo remanescente; na prática é uma ferramenta de legenda/debug. - Remoção de comandos legados de legenda: Comandos como
cc_findsound,cc_flush,cc_randomecc_showblocksforam removidos da lista pública. Eram sempre focados em devs e a remoção indica limpeza das ferramentas de legendas. - Exibição on-screen de convars (
display_convars_onscreen_in_big_text): Novo cheat replicado que lista nomes de convars para exibí-los em texto grande na tela. Útil para captura, QA e criadores que querem mostrar configurações em vídeos. - Decals de HUD e confirmação de hit (
r_decal_hit_confirmation): Novo convar replicado sugere experimentos com decals de confirmação de acerto. Dev-only por enquanto, mas mostra exploração de canais visuais adicionais de feedback. - Debug de nomes de jogadores (
cl_playerslot_in_names): Ao ativar, o cliente prefixa um índice de slot do controlador nos nomes. Útil para setups locais com múltiplos controladores e debugging.
Física, materiais e renderização do mundo
- Schemas de compound/hull de física atualizados: Classes como
RnCompound_t,RnCompoundDesc_t,FeBoneMergeLink_teCastSphereSATParams_tforam refatoradas ou movidas. Trabalho interno que provavelmente melhora authoring, previews de colisão ou performance. - Streams emissivos de mundo removidos de algumas ferramentas: Várias ferramentas não expõem mais
AggregateVertexEmissiveStreamOnDiskData_te campos de emissive buffer nas suas string tables. Sugere refactor no tratamento de dados emissivos de vértice, possivelmente para um caminho mais unificado. - Pós-processamento de exposição local limpo:
PostProcessingLocalExposureParameters_teCLocalExposureLayerforam movidos mais firmemente para schemas de ferramentas.- Referências de strings runtime foram podadas, e
resourcecompiler/materialsystemagora compartilham structs claros para exposição local. Mantém runtime mais enxuto ao mesmo tempo que deixa artistas de pós-processamento configurarem camadas de exposição local.
Micro-mudanças em comandos e flags de dev
Uma série de ajustes pequenos melhoram consistência e reduzem ruído para desenvolvedores e power users:
- Predição e texto de debug:
cl_predictioncopy_describeagora referencia explicitamentePredictionMap_tem vez de um genéricodatamap_t, clarificando a estrutura que inspeciona.debugoverlay_circle_vertspermite ajustar resolução de círculo para overlays de debug.
- Timedemo marcados como release:
timedemo_startetimedemo_endagora são comandos marcados como release em vez de puramente defensivos/dev. Jogadores que benchmarkam podem achar isso mais suportado em workflows de profiling. - Ferramentas de gravação de mic:
start_rec_mic,stop_rec_mic, estop_rec_mic_alladicionados como comandos dev vinculados para gravar voz em WAV. Visam QA e debug de áudio, mas criadores podem se beneficiar no uso de ferramentas internas ou do Workshop.
- Remoção de comandos de gerenciamento de mute de voz: Vários comandos dev-only (
voice_mute,voice_unmute,voice_show_mute,voice_reset_mutelist) foram removidos da listagem genérica, provavelmente consolidados na UI do jogo ou mantidos apenas em builds internas.
Pool de mapas e configuração de matchmaking
O update reorganiza levemente cvars internos de listas de mapas que o matchmaking usa para definir playlists. Essas cvars codificam pools com sufixos hashed (por exemplo player_competitive_maplist_8_10_0_A062AC6A):
- Lista competitiva 2v2: Agora inclui referências a
mg_de_debrisemg_de_eldoradojunto com Inferno, Nuke, Vertigo, Poseidon e Overpass. - Lista 5v5 estilo competitivo:
- A lista 8–10 jogadores perde
mg_de_wardenemg_de_stronghold, e ganhamg_de_boulder,mg_de_fachwerkemg_cs_shelterenquanto mantém clássicos como Dust2, Train, Ancient, Inferno, Nuke, Vertigo, Mirage, Overpass, Office, Italy, Cache e Anubis.
- A lista 8–10 jogadores perde
- Sequência de veto de mapas (
sv_mapvetopickvote_maps): Agora incluide_cacheno lugar dede_overpassno conjunto padrão, ficando:de_cache, de_anubis, de_inferno, de_mirage, de_dust2, de_nuke, de_ancient.
Essas cvars não são anúncios diretos de playlists, mas mostram quais mapas a Valve está preparando ou usando para testes internos e fluxos de veto. Rotações oficiais podem ou não mudar para coincidir com isso imediatamente.
Limpeza de engine e schemas
A maior parte das mudanças é refactor de schema e metadata por quase todos os subsistemas do motor:
- Schemas de API cliente/servidor atualizados:
client.kv3eserver.kv3metadata listam uma grande variedade de APIs novas ou refinadas (para jogadores, armas, granadas, câmeras de preview de mapa, iluminação do ambiente, etc.).- Muitas classes antes implícitas agora aparecem claramente com sufixos
*_API, facilitando tooling e introspeção do motor.
- Novos tipos de campo (
FIELD_NETWORK_QUANTIZED_VECTORWS,FIELD_NETWORK_ORIGIN_CELL_QUANTIZED_VECTORWS): Enums de tipos de campo foram ajustados e entradas depreciadas removidas. Alinha o metadata do schema com como a rede realmente serializa vetores em espaço-mundo. - Observáveis e blackboards do Pulse: Em vários bins, surgem strings como
m_DependentObservableVars,m_DependentObservableBlackboardReferencesem_EvaluateConnection, enquanto descrições antigas de “Asynchronous / Fire and Forget” desaparecem. Indica reorganização do runtime/debug do Pulse para descrições mais estruturadas e dirigidas por dados.
Mudanças invisíveis para jogadores, mas importantes para estabilidade e para ferramentas de terceiros que inspecionam dados do motor.
Impacto geral
Esta não é uma grande correção de balance; é um aperto do motor e da cadeia de ferramentas enquanto habilita experimentos discretos:
- Operadores de servidor recebem um toggle para granadas caídas detonáveis e visibilidade das ferramentas de dano da bomba, sugerindo cenários de jogabilidade mais flexíveis ou orientados a criadores.
- Mappers e editores de nav ganham mais opções de debug para nav links e modos de busca, além de inspeção de entidades e lógica mais clara.
- Equipes de áudio obtêm um sistema Beat Pattern consolidado com ferramentas melhores, preparando terreno para música e efeitos rítmicos mais precisos.
- Renderização e sombras continuam evoluindo rumo a culling orientado à GPU e meshlets, com novos toggles de debug e um padrão mais opinativo para sparse shadow trees.
Para a maioria dos jogadores, a atualização será percebida como manutenção silenciosa. Para criadores, administradores de servidor e modders técnicos, é mais um sinal de que a Valve segue investindo nos sistemas subjacentes que alimentam as mecânicas, o áudio e os visuais do CS2.
