Code updateSep 23, 2026, 11:10 PM UTC

CS2 Update (Sep 23, 2026)

New Static Square crosshair style and outline options, Rush mode timing tweaks, upgraded pet photo JPEG pipeline with sticker limits, plus small map guide, animation, and UI polish.

Quick read

  • New crosshair style 8 (Static Square) added, with expanded crosshair outline options and updated crosshair shaders on PC and Vulkan.
  • Rush mode adjusted with shorter freeze and warmup times plus refined elimination countdown logic that treats final rooms differently and tracks legitimate kills.
  • Pet photo booth now saves high-quality JPEGs instead of PNGs, with improved sticker inventory integration, placement limits, and more consistent pet book handling.
  • Player card Pet Book entry only appears for hatched pets or retired books, while crosshair and color picker UI text has been clarified and localized.
  • Official map guide data updated for de_train and the main worldmodel animation graph refreshed, alongside new tooling keybindings and backend JPEG/compression support.

This CS2 update brings a new crosshair style and outline options, refines the Rush mode rules, upgrades the pet photo system, and quietly tunes animations and map guides while adding some quality-of-life touches to the UI.

Crosshair Updates: New Style and Outline Control

  • New crosshair style 8 – Static Square: A new entry cl_crosshairstyle = 8 has been added and exposed in the settings as “Static Square”. It appears alongside the existing styles in the crosshair dropdown and is tagged as one of the “new” styles in the editor.
  • Style 8 settings behavior: When style 8 is selected, the UI now specifically shows controls for the center dot and gap, suggesting this style focuses on a solid square layout you can fine-tune with a central dot and spacing.
  • Outline options expanded: The cl_crosshair_drawoutline setting now accepts 0–2 instead of a simple on/off:
    • 0No Outline
    • 1Full Outline
    • 2Half Outline These options are reflected in the crosshair settings menu with updated labels, so players can more precisely control visibility without being forced into a thick, full border.
  • Shader updates for crosshair rendering: Crosshair-related shaders for both PC and Vulkan (csgo_crosshair_*_50_*.vcs) were updated. This suggests the rendering path for crosshairs has been tuned under the hood, which may improve consistency or visual clarity across different graphics backends without changing gameplay.

Rush Mode Rule Tweaks

Rush mode receives a set of timing adjustments and a refinement to how round-ending countdowns are triggered.

  • Shorter freeze time: mp_freezetime in gamemode_rush.cfg is reduced from 13 to 11 seconds, slightly speeding up the start of each round.
  • Technical timeout length reduced: mp_technical_timeout_duration_s is cut from 120 to 30 seconds, meaning technical pauses are now far shorter by default in Rush.
  • Quicker post-connection warmup: mp_warmuptime_all_players_connected is reduced from 15 to 5 seconds, so once everyone is in the server, the match should get going faster.
  • Round countdown rework: The Rush map script (rush_001.js) gains new logic:
    • A standard countdown of 7 seconds remains, but final/decider rooms now use a longer 14-second countdown once a team is eliminated.
    • The script now tracks “legitimate” kills per team per round. A team elimination-based countdown only starts if the opposing team has at least one proper kill that round and the game mode is configured not to end the round outright on elimination.
    • The remaining round time is clamped so that countdowns don’t exceed the appropriate value for the current room.

These changes together suggest Rush is being tuned to feel snappier between rounds while also reducing edge cases where rooms might end via elimination in ways that feel unearned or confusing.

Pet Photo Booth and Pet Book Improvements

The pet photography and book systems see several functional upgrades, with a switch to JPEG and more control over stickers.

  • Photos now saved as JPEG:
    • Pet photos are now written using WriteCompositionLayerJPEG instead of PNG, with a defined maximum long edge of 1200 pixels and a JPEG quality of 95.
    • The file naming and parsing logic has been updated to use a shared extension constant PetPhotoTag.EXT = '.jpg', and all file lookups for pet photo libraries and books now search for *.jpg instead of *.png.
    • This change likely reduces file size for saved pet photos while keeping image quality high, which may help with storage and loading times.
  • Sticker inventory integration:
    • The pet sticker browser now listens for CSGOInventoryItemLoaded events to refresh sticker tiles as inventory data arrives.
    • A dedicated filter string (item_definition:sticker) is used for SetInventoryFilter, which should make sticker searching more robust and consistent.
  • Sticker placement limits and controls:
    • A new maximum of 10 placed stickers per photo (MAX_PLACED_STICKERS = 10) is enforced.
    • The system tracks which sticker items are already placed and disables tiles for those items or when the max is reached.
    • Sticker tiles automatically re-enable when a sticker is removed, keeping the UI in sync with actual placements.
    • Newly placed stickers are dropped with a small random positional offset, making layouts feel a bit more organic before you fine-tune them.
  • Pet photo library & book compatibility:
    • All the code that scans pet photo folders for library and book entries now uses the JPEG extension constant, ensuring older or future photos are discovered correctly.

Combined, these changes modernize the pet photo pipeline, likely improving performance and giving players clearer, better-controlled sticker decoration.

Pet Book Access in Player Card

The player context menu gets a small adjustment that changes when the Pet Book option appears.

  • Only “hatched” pets count:
    • A new helper _HatchedPetItemID() checks the pet’s upgrade level via an item attribute.
    • The Pet Book entry in the player card is now only offered if your pet exists and has at least one upgrade level, or if you have retired pet books stored.
  • Live pet book option gated:
    • When building the pet book menu, the option to open the live pet’s HatchBook now depends on _HatchedPetItemID() rather than any pet item ID.

This means players should no longer see Pet Book options for unhatched pets, making the menu behavior more intuitive.

UI and Localization Polish

Several small but visible UI text and behavior changes land in this update.

  • Crosshair settings labeling:
    • New localization strings for Static Square (GameUI_CrosshairStyle8) and its tooltip were added, so it appears correctly named and documented in the menu.
    • Outline options now have explicit labels: Full Outline, Half Outline, and No Outline.
  • Color picker wording:
    • The color picker now uses dedicated strings: “New” (GameUI_ColorPicker_New) and “Current” (GameUI_ColorPicker_Current) above its preview swatches, replacing reused generic labels. This makes it clearer which swatch represents the color you’re editing.
  • Map and mode strings trimmed:
    • Two pet photo map name strings (SFUI_MAP_pet_photo_park, SFUI_MAP_pet_photo_studio) were removed from the English localization, which suggests those labels are either unused or being handled differently.
    • A duplicate or redundant Rush mode name entry (SFUI_GameMode_rush) was removed, leaving the main “Rush” string in place.

These tweaks mainly affect menus and tooltips, making the new features discoverable and keeping terminology consistent.

Map Guide Updates on de_train

  • de_train grenade/guide tweaks:
    • The official annotation resource for de_train was updated (annotations/official/de_train/de_train_italian.json).

While the exact markers aren’t listed, this points to adjustments in the built-in map guides for that map—likely refining callouts or grenade suggestion markers in one of the supported languages.

Worldmodel Animation Graph Update

  • Worldmodel graph refreshed:
    • The main worldmodel animation graph file animation/graphs/worldmodel/worldmodel.vnmgraph_c was modified.

This type of change usually affects how third-person animations (like how players and equipment look to others) blend and transition. It does not by itself imply any change to weapon timing or hit registration, but spectators and teammates may notice subtly smoother or more consistent character motion.

Tools and Content Pipeline Changes

Most of these updates affect creators and internal tools rather than everyday players.

  • Curve editor keybindings file added:
    • A new keybinding definition, curveeditor_key_bindings.txt, defines inputs such as:
      • F to frame curves
      • Delete/Backspace to delete selections
      • Left/right mouse for selecting, moving, and panning
      • Mouse wheel for zooming
      • Shift/Alt/Ctrl as modifiers
    • This is for a Curve Editor tool and should make it more consistent and discoverable for map and content authors.
  • Engine and UI string updates:
    • New engine/UI strings for WriteCompositionLayerJPEG and a reference to ati_compress_wrapper.dll appear, fitting with the JPEG-based pet photos and possible backend texture/asset compression changes.

These are largely invisible to players but indicate ongoing investment in content creation tooling and the media pipeline behind features like pet photos.

Overall Impact

This update is a mix of player-facing refinement and backend maintenance:

  • Competitive and casual players gain a new Static Square crosshair style and more granular outline control, supported by updated shaders.
  • Rush mode is tuned to be faster between rounds and fairer around elimination-based countdowns, especially in final rooms.
  • Pet owners see a more robust photo system with JPEG output and better sticker handling, and the Pet Book UI now respects pet progression.
  • Map guides on de_train, worldmodel animations, UI text, and tool support all see incremental improvements that should collectively make CS2 feel cleaner and more polished.

None of the changes indicate major gameplay balance shifts, but together they continue to tighten the experience across visuals, UI, and a growing set of side features like Rush and pets.

Back to updates

Recent updates

CS2@CounterStrike
Sep 23, 2026, 11:58 PM UTC

The Cologne 2026 Major Shop will be available until September 29th. If you have unspent tokens, you have less than one week to spend them!

View details
CS2@CounterStrike
Sep 23, 2026, 11:50 PM UTC
View details
Official updateSep 23, 2026, 11:07 PM UTC

Counter-Strike 2 Update (Sep 23, 2026)

Increased countdown-after-elimination time, a new pixel-based crosshair system with rescaling and options, reduced timing values, and several animation and clipping fixes.

  • Increased countdown-after-elimination time to 14 seconds on end rooms and Convoy; does not activate for full-team suicides, team kills, or disconnects.
  • Warmup after all players connect, freeze time, and technical timeout time have been reduced.
  • New pixel-based crosshair system with `thickness`, `length`, and `gap` in pixels, automatic rescaling across resolutions, half-outlines option, zero-gap bug fix, a static square style, and a minimum dynamic spread of 64
  • Various gap fixes and clipping adjustments.
  • Animation fixes for left-handed viewmodels, thirdperson player models, firstperson `Dual Berettas`, and clan tags now appear in death notices.
View details