25 Ağustos 2026 tarihli CS2 güncellemesi, oyunun denge tarafına değil doğrudan harita scriptleme tarafına dokunuyor. Valve bu kez scripted map yapanlara daha fazla alan açtı: özel HUD desteği, oyuncunun görüşünü pawn'ı taşımadan kontrol eden kamera entity'si ve bomba etkileşimleri için yeni callback'ler geldi. Kısacası bu patch, sıradan matchmaking oyuncusundan çok map creator ve mod geliştiricisini ilgilendiriyor.

25 Ağustos 2026 CS2 güncellemesi harita scriptlerini büyüttü

Bu güncellemenin merkezinde custom_hud_layout var. Scripted map artık kendi UI katmanını oyuna ekleyebiliyor. Valve burada giriş seviyesinde bir çözüm vermek yerine doğrudan kullanılabilir bir temel bırakmış. Panel, Label, Image ve Button panel tipleri destekleniyor. Üstüne bir de CSS ile stillendirme açılmış durumda.

Bu tarafın en iyi haberi şu: araç modunda reload alınca state korunuyor. Harita yapan biri için bu küçük detay değil. Özellikle UI ile uğraşırken her değişiklikte akışı baştan kurmak can sıkabilir. Valve burada vakit yakan bir sürtüşmeyi azaltmış.

Bir sınır da koymuşlar: event ve client-side scripting desteklenmiyor. Yani sistem serbest bırakılmış değil; kontrollü ilerliyor. CS2'nin script tarafında önce iskeleti sağlam kurup sonra kapıları açmaları daha doğru.

Aynı bölümde gelen ikinci büyük parça cs_player_camera entity'si. Bu entity, oyuncunun view kontrolünü alıyor ama pawn'ı yerinden oynatmıyor. Pratikte şu anlama geliyor: scripted sahneler, briefing tarzı geçişler ya da özel modlarda yönlendirilmiş bakış açıları daha temiz kurulabilecek. İstenirse oyuncu scripted pozisyondayken etrafa bakmayı da sürdürebiliyor. Yani tamamen kilitli bir sinematik kamera şart değil.

Bomba akışı ve entity kontrolü için yeni script fonksiyonları geldi

Valve yalnızca yeni entity eklemekle kalmamış; 25 Ağustos 2026 CS2 güncellemesi script API tarafına bir dizi yeni fonksiyon ve event de bırakıyor. Buradaki odak bomba akışı, hareket kontrolü ve oyuncu durumunu okumak.

Bomba tarafında gelenler şunlar:

  • Instance.OnBombPlantStart
  • Instance.OnBombPlantAbort
  • Instance.OnBombDefuseStart
  • Instance.OnBombDefuseAbort
  • C4.GetPlantStartTime
  • C4.GetPlantFinishTime
  • C4.AbortPlant
  • CSPlayerPawn.GetC4
  • CSPlayerPawn.GetDefuseTarget

Bu eklemeler scripted senaryolar için ciddi fark yaratır. Önceden bir map maker plant ve defuse akışını daha kaba yöntemlerle takip ediyorsa, artık olayın başladığı ve iptal edildiği anlara kadar daha net hook atabilecek. Özellikle custom objective modları ya da eğitim haritaları yapanlar için bu, çok daha temiz bir mantık kurmak demek.

Bunun yanında oyuncu durumunu okumaya yarayan küçük ama işe yarar parçalar var:

  • CSPlayerPawn.IsBuyMenuOpen
  • CSPlayerPawn.GetCamera
  • Instance.IsDedicatedServer

Mesela buy menu'nün açık olup olmadığını script tarafında bilmek, özel warmup akışlarında ya da custom UI davranışında oldukça kullanışlı olabilir. Dedicated server kontrolü de yerel test ile gerçek sunucu davranışını ayırmak isteyenler için basit ama faydalı bir araç.

Entity tarafında da hareket kontrolü genişledi:

  • Entity.Move
  • Entity.GetMoveType
  • Entity.SetMoveType
  • enum CSMoveType

Bu set, özellikle hareket eden objeler ya da scripted sequence kuranlar için temel araç kutusunu büyütüyor. Kâğıt üstünde sade duruyor ama map scripting tarafında bu tip fonksiyonlar zincirleme değer üretir. Bugün kapı hareketi için kullanılır, yarın custom puzzle haritasında bambaşka bir işe dönüşür.

Özel HUD artık oyuncuya göre değişebiliyor

Bu güncellemenin en kullanışlı taraflarından biri HUD üzerinde oyuncu bazlı kontrol imkânı vermesi. Valve şu fonksiyonları ekledi:

  • CustomHudLayout.SetHasClass
  • CustomHudLayout.SetHasClassForPlayer
  • CustomHudLayout.SetDialogVariableString
  • CustomHudLayout.SetDialogVariableStringForPlayer
  • CustomHudLayout.SetInputCaptureEnabled
  • CustomHudLayout.IsInputCaptureEnabled
  • Instance.OnCustomHudClicked

Bu paket tek başına bile çok şey anlatıyor. Sadece statik bir arayüz koyup bırakmıyorsunuz; belirli oyuncuya farklı state verebiliyor, string değişkenlerini güncelleyebiliyor ve HUD tıklamalarını yakalayabiliyorsunuz. Başka bir deyişle scripted harita tarafında UI artık yalnızca süs değil, etkileşim katmanı haline geliyor.

Yine de burada sınır hissediliyor: tam teşekküllü client-side script sistemi yok. Ama tıklanabilir HUD desteğiyle birlikte custom mode tasarlayanların eli rahatlayacak. Eğitim map'i yapan biri, oyuncuya adım adım görev kutusu gösterebilecek. Aim course hazırlayan biri, stage seçimini HUD üzerinden yaptırabilecek. Surf ya da puzzle tarzı topluluk haritalarında da karşılığı olur.

Hata ayıklama tarafında küçük görünen ama zaman kazandıran düzeltmeler var

Patch notlarında map creator'ların en çok sevineceği satırlar bazen yeni entity'ler değil debug iyileştirmeleri olur. Burada da durum biraz öyle.

Valve şunları düzeltti ve ekledi:

  • İlk script çalıştırması sırasında çıkan hatalar artık console'a loglanıyor
  • Unhandled promise rejection durumları console'a yazılıyor
  • Script loading içindeki CompileModule aşamasında yakalanan hatalara artık sütun numarası da ekleniyor
  • Bazı event'lerde parametre tipleri, "belki undefined" durumlarına göre güncellenmiş

Bunlar son kullanıcı için görünmez değişiklikler. Fakat script yazan biri için fark net. Hatanın yalnızca satırını değil, sütununu görmek bazen 10 dakikalık aramayı 30 saniyeye indirebilir. Promise rejection log'u da aynı etkiyi yapar. Sessizce patlayan akışlar yüzünden saatler kaybetmek yerine daha hızlı müdahale edilebilir.

Bir de Valve iki eski alanı artık kullanım dışına itmiş:

  • Instance.OnBombPlant içindeki planter
  • Instance.OnBombDefuse içindeki defuser

Yani eski yapıyla devam eden scriptler için ufak bir temizlik zamanı gelmiş olabilir. Deprecated demek her şeyin bugün kırıldığı anlamına gelmiyor; ama ileride baş ağrısı çıkarmadan kodu güncellemek daha mantıklı.

Bu patch kime yarıyor?

Açık konuşalım: Premier grind atan, FACEIT oynayan ya da akşam iki competitive girip çıkan oyuncu bu güncellemeyi oyunda hemen hissetmeyecek. 25 Ağustos 2026 CS2 güncellemesi daha çok Workshop tarafında üretim yapanlara hitap ediyor. Ama bu, önemsiz olduğu anlamına gelmiyor.

CS2'nin topluluk haritaları ve özel modları ne kadar güçlenirse oyunun ömrü de o kadar uzar. Source ekosisteminde yıllardır görülen bir döngü var: Zombie mod, surf, aim map, training scenario, minigame server... Bu işlerin çoğu böyle altyapı güncellemeleriyle büyüyor. Valve bazen bir patch ile oyuncuya yeni rifle vermez; bunun yerine araç kutusunu genişletir. Etki daha geç görünür ama daha kalıcı olur.

Bu yüzden bu patch'i küçük teknik güncelleme diye geçmek eksik kalır. Dışarıdan sakin görünebilir. İçeride ise scripted map tarafına yeni kapılar açılıyor.


Tüm değişiklikler (Valve)

[ HARİTA SCRIPTING ]

  • custom_hud_layout varlığı eklendi:

  • custom_hud_layouts, scriptlenmiş haritaların özel UI sağlaması için giriş noktasıdır.

  • Panel, Etiket, Resim ve Buton panel türleri desteklenmektedir.

  • css ile stil verme desteği bulunmaktadır.

  • Olaylar ve istemci tarafı scriptleme desteklenmemektedir.

  • Araçlar modu yeniden yüklemeleri sırasında durumu korur.

  • cs_player_camera varlığı eklendi:

  • Bir oyuncunun piyonunu hareket ettirmeden, oyuncunun görüşünü kontrol etmesini sağlar.

  • Scriptlenmiş konumdan oyuncunun etrafa bakabilmesi için yapılandırılabilir.

  • Instance.Delay eklendi

  • Instance.OnBombPlantStart eklendi

  • Instance.OnBombPlantAbort eklendi

  • Instance.OnBombDefuseStart eklendi

  • Instance.OnBombDefuseAbort eklendi

  • Instance.OnCustomHudClicked eklendi

  • Instance.IsDedicatedServer eklendi

  • Entity.Move eklendi

  • Entity.GetMoveType eklendi

  • Entity.SetMoveType eklendi

  • CSPlayerPawn.GetC4 eklendi

  • CSPlayerPawn.GetDefuseTarget eklendi

  • CSPlayerPawn.IsBuyMenuOpen eklendi

  • CSPlayerPawn.GetCamera eklendi

  • C4.GetPlantStartTime eklendi

  • C4.GetPlantFinishTime eklendi

  • C4.AbortPlant eklendi

  • CustomHudLayout.SetHasClass eklendi

  • CustomHudLayout.SetHasClassForPlayer eklendi

  • CustomHudLayout.SetDialogVariableString eklendi

  • CustomHudLayout.SetDialogVariableStringForPlayer eklendi

  • CustomHudLayout.SetInputCaptureEnabled eklendi

  • CustomHudLayout.IsInputCaptureEnabled eklendi

  • CSPlayerCamera.IsEnabled eklendi

  • CSPlayerCamera.SetEnabled eklendi

  • CSPlayerCamera.SetIsControllingAngles eklendi

  • enum CSMoveType eklendi

  • Parametrelerin belirsiz olabileceği bazı olaylar için türler düzeltildi.

  • İlk script çalıştırma sırasında karşılaşılan hatalar artık konsola kaydedilmektedir.

  • İşlenmemiş promise reddetmeleri artık konsola kaydedilmektedir.

  • Script yükleme sürecinin CompileModule adımında yakalanan hatalara sütun numarası eklendi.

  • Instance.OnBombPlant olayından planter kullanımdan kaldırıldı.

  • Instance.OnBombDefuse olayından defuser kullanımdan kaldırıldı.