-
Mise à jour de CS2 du 25 août 2026 : nouveaux outils d'interface et caméra pour les maps
La mise à jour de CS2 du 25 août 2026 vise surtout les créateurs de maps scriptées. Valve ajoute un point d'entrée pour une interface personnalisée, une caméra qui prend le contrôle de la vue du joueur sans déplacer son pawn, ainsi qu'une série de fonctions liées au plant, au defuse et au déplacement. Pour le joueur classique, l'ambiance d'un rifle round ne change pas ce soir. Pour les mappeurs, en revanche, la boîte à outils s'élargit nettement.
La mise à jour de CS2 ouvre enfin une vraie couche d'interface aux maps scriptées
Le gros morceau, c'est custom_hud_layout. Jusqu'ici, bricoler une interface cohérente dans une map scriptée demandait souvent des détours ou des compromis. Valve pose maintenant une base officielle pour afficher une interface custom directement depuis la map.
Le système prend en charge plusieurs types de panneaux :
- Panel
- Label
- Image
- Button
- TextField
Valve ajoute aussi le support du styling en CSS. Concrètement, un auteur de map peut mieux contrôler l'apparence de son interface sans recourir à des méthodes douteuses. C'est un ajout qui compte dans les modes de jeu custom, les scénarios coop, les maps d'entraînement ou les expériences davantage scriptées que le compétitif standard.
Il existe toutefois deux garde-fous clairs :
- pas d'événements d'interface pris en charge côté client
- pas de scripting côté client
Autrement dit, Valve ouvre la porte, mais pas en grand. On peut construire l'habillage et certaines interactions prévues par le système, sans transformer CS2 en plateforme d'applications. C'est cohérent avec la philosophie du jeu : plus de liberté, tout en gardant le contrôle sur ce qui tourne réellement.
Un détail pratique ressort aussi : l'état est conservé pendant les rechargements en mode tools. Cela paraît technique, mais pour quelqu'un qui itère sur une interface, cela évite de tout réinitialiser après chaque recharge. Dans un workflow de création, ce confort change vraiment la donne.
Caméra du joueur, plant, defuse et déplacement : Valve étoffe le scripting
L'autre nouveauté marquante, c'est cs_player_camera. Cette entité permet de contrôler la vue d'un joueur sans déplacer son pawn. En d'autres termes, la caméra peut partir ailleurs pendant que la position réelle du joueur reste intacte.
Valve précise aussi que la caméra peut être configurée pour laisser le joueur regarder autour de lui depuis cette position scriptée. Les usages sont nombreux :
- introduction d'un mode custom
- briefing avant une séquence
- cinématique légère en début de round
- puzzle ou événement scénarisé sur une map workshop
Ce n'est pas un gadget. Dans CS2, la caméra et le contrôle du corps du joueur sont sensibles, donc séparer les deux ouvre des possibilités propres sans casser complètement la logique de gameplay.
Valve ajoute en plus les méthodes associées à cette caméra :
CSPlayerCamera.IsEnabledCSPlayerCamera.SetEnabledCSPlayerCamera.SetIsControllingAngles
Côté gameplay scripté, la mise à jour enrichit surtout les hooks et les helpers autour de la bombe. On récupère de nouveaux événements :
Instance.OnBombPlantStartInstance.OnBombPlantAbortInstance.OnBombDefuseStartInstance.OnBombDefuseAbort
Et plusieurs fonctions utiles :
CSPlayerPawn.GetC4CSPlayerPawn.GetDefuseTargetC4.GetPlantStartTimeC4.GetPlantFinishTimeC4.AbortPlant
Ainsi, un script peut suivre plus finement ce qui se passe pendant un plant ou un defuse. Avant, une grande partie de la logique se branchait surtout sur l'événement final. Désormais, un auteur peut réagir dès le début, gérer une interruption, afficher une interface adaptée ou déclencher une séquence selon le timing réel. Pour une map scénarisée, c'est plus propre.
Valve déprécie aussi deux paramètres anciens :
planterdansInstance.OnBombPlantdefuserdansInstance.OnBombDefuse
Ce n'est pas spectaculaire, mais cela indique une évolution de l'API. Si vous maintenez de vieux scripts, il vaut mieux vérifier la compatibilité plutôt que d'attendre un problème en pleine session.
Plus de contrôle sur les entités et sur l'interface personnalisée
La mise à jour ajoute aussi une série de fonctions plus discrètes, mais utiles si vous manipulez des objets, des déplacements ou des états liés à l'interface.
Côté entités et mouvement :
Entity.MoveEntity.GetMoveTypeEntity.SetMoveTypeenum CSMoveType
Ce trio, avec l'énumération associée, apporte un contrôle plus explicite sur la manière dont une entité se déplace ou se comporte. Pour du contenu scripté, c'est plus propre que de contourner le moteur via des astuces.
Valve ajoute aussi Instance.Delay et Instance.IsDedicatedServer. La première simplifie la gestion du temps dans les scripts. La seconde aide à distinguer certains comportements selon l'environnement d'exécution. Ce n'est pas spectaculaire, mais c'est pratique.
Pour l'interface personnalisée, Valve pousse la logique plus loin avec :
Instance.OnCustomHudClickedCustomHudLayout.SetHasClassCustomHudLayout.SetHasClassForPlayerCustomHudLayout.SetDialogVariableStringCustomHudLayout.SetDialogVariableStringForPlayerCustomHudLayout.SetInputCaptureEnabledCustomHudLayout.IsInputCaptureEnabled
L'idée est simple : la map peut non seulement afficher une interface, mais aussi la modifier à la volée, joueur par joueur si nécessaire. Changer une classe CSS, injecter une chaîne dans une variable de dialogue, capter ou relâcher les entrées, puis détecter un clic sur un élément de l'interface : on commence à disposer d'une base solide pour des modes custom plus sérieux.
Pour les serveurs communautaires, c'est potentiellement l'un des points les plus intéressants. Pas pour faire "plus joli", mais pour créer des interactions lisibles sans sortir le joueur de l'expérience.
Valve améliore aussi le débogage, un détail qui compte
Une partie du changelog cible le debug. Là encore, ce n'est pas spectaculaire sur le papier, mais c'est souvent ce qui détermine si un système sera vraiment exploité.
Valve corrige d'abord les types de certains événements dont les paramètres pouvaient être indéfinis. Ce genre de détail crée des comportements flous, parfois intermittents. La correction joue donc sur la fiabilité.
Le moteur logue maintenant plus clairement plusieurs catégories d'erreurs :
- les erreurs rencontrées pendant l'exécution initiale du script vont dans la console
- les unhandled promise rejections vont aussi dans la console
- le numéro de colonne apparaît désormais dans les erreurs détectées pendant l'étape CompileModule du chargement du script
Pour quelqu'un qui script une map, c'est très concret. Chercher un bug "quelque part dans la ligne" fait perdre beaucoup de temps. Avoir la colonne, une erreur remontée dès le premier run, et des promesses rejetées qui ne disparaissent plus dans le vide, c'est un cycle test-correction plus rapide.
Cette mise à jour de CS2 ne touche ni l'AK, ni les smokes, ni l'économie. Elle vise clairement les outils de création, et elle le fait avec des briques utiles, pas du remplissage. Interface custom, caméra dissociée du pawn, événements de plant et de defuse plus précis, contrôle du mouvement et débogage amélioré : pour la scène workshop et les serveurs qui aiment pousser CS2 au-delà du 5v5 standard, Valve vient de livrer quelque chose de solide.
Liste complète des changements (Valve)
[ SCRIPTAGE DE CARTE ]
-
Ajout de l'entité custom_hud_layout :
-
Les custom_hud_layouts sont le point d'entrée pour les cartes scriptées afin de fournir une interface utilisateur personnalisée.
-
Les types de panneaux Panel, Label, Image et Button sont pris en charge.
-
Le stylisme avec css est pris en charge.
-
Les événements et le scriptage côté client ne sont pas pris en charge.
-
Maintient l'état pendant les rechargements en mode outils.
-
Ajout de l'entité cs_player_camera :
-
Donne le contrôle de la vue d'un joueur sans déplacer son pion.
-
Peut être configuré pour permettre au joueur de regarder autour de lui depuis la position scriptée.
-
Ajout de Instance.Delay
-
Ajout de Instance.OnBombPlantStart
-
Ajout de Instance.OnBombPlantAbort
-
Ajout de Instance.OnBombDefuseStart
-
Ajout de Instance.OnBombDefuseAbort
-
Ajout de Instance.OnCustomHudClicked
-
Ajout de Instance.IsDedicatedServer
-
Ajout de Entity.Move
-
Ajout de Entity.GetMoveType
-
Ajout de Entity.SetMoveType
-
Ajout de CSPlayerPawn.GetC4
-
Ajout de CSPlayerPawn.GetDefuseTarget
-
Ajout de CSPlayerPawn.IsBuyMenuOpen
-
Ajout de CSPlayerPawn.GetCamera
-
Ajout de C4.GetPlantStartTime
-
Ajout de C4.GetPlantFinishTime
-
Ajout de C4.AbortPlant
-
Ajout de CustomHudLayout.SetHasClass
-
Ajout de CustomHudLayout.SetHasClassForPlayer
-
Ajout de CustomHudLayout.SetDialogVariableString
-
Ajout de CustomHudLayout.SetDialogVariableStringForPlayer
-
Ajout de CustomHudLayout.SetInputCaptureEnabled
-
Ajout de CustomHudLayout.IsInputCaptureEnabled
-
Ajout de CSPlayerCamera.IsEnabled
-
Ajout de CSPlayerCamera.SetEnabled
-
Ajout de CSPlayerCamera.SetIsControllingAngles
-
Ajout de l'énumération CSMoveType
-
Correction des types pour certains événements où les paramètres étaient peut-être indéfinis.
-
Les erreurs rencontrées lors de l'exécution initiale du script sont désormais enregistrées dans la console.
-
Les promesses non gérées sont désormais enregistrées dans la console.
-
Ajout du numéro de colonne aux erreurs capturées lors de l'étape CompileModule du chargement du script.
-
Dépréciation du planteur de l'événement Instance.OnBombPlant
-
Dépréciation du désamorceur de l'événement Instance.OnBombDefuse
Polski
English
Українська
Deutsch
Español
Türkçe
Português (BR)
Français
Čeština