Counter-Strike 2 : la mise à jour du 24 août ne touche pas vos parties — elle donne aux cartes communautaires une interface, une caméra et le droit d'annuler une pose de bombe
Crédit : Valve
Carte

Counter-Strike 2 : la mise à jour du 24 août ne touche pas vos parties — elle donne aux cartes communautaires une interface, une caméra et le droit d'annuler une pose de bombe

Fabian Fabian Lainé
Nous suivre sur

En bref

La mise à jour du 24 août de Counter-Strike 2 ne touche rien à vos parties — zéro changement d'armes, de cartes jouables ou de gameplay. Elle ouvre en revanche des portes massives aux créateurs : interfaces personnalisées à l'écran, contrôle de la caméra sans déplacement du joueur, et surtout la possibilité d'annuler une pose de bombe en cours. Des mécaniques qu'on croyait impossibles deviennent réalité.

Valve a publié une mise à jour de Counter-Strike 2 le 24 août, et si vous avez cherché ce qu'elle change à vos parties, la réponse est : rien. Pas une arme retouchée, pas une carte modifiée, pas un correctif de gameplay. La totalité des lignes tombe sous un seul intitulé : MAP SCRIPTING.

Ce n'est pas pour autant une mise à jour sans conséquence. Elle donne aux cartes communautaires deux choses qu'elles n'avaient pas — une interface à elles et le contrôle de la caméra du joueur — et ouvre la porte à des modes de jeu qui ne pouvaient jusqu'ici exister que hors de Counter-Strike 2.

Voici ce qu'elle contient, et ce que ça veut dire pour ce que vous allez trouver dans le Workshop dans les mois qui viennent.

Les notes de cette mise à jour n'ont pas été publiées en français par Valve. Les passages entre guillemets dans cet article en sont notre traduction : ce ne sont pas des libellés officiels du client français.

Première nouveauté : les cartes peuvent afficher leur propre interface

Valve ajoute une entité nommée custom_hud_layout, décrite comme « le point d'entrée permettant aux cartes scriptées de fournir une interface personnalisée ».

Ce qu'elle autorise, dans les termes exacts des notes :

  • quatre types d'éléments : Panel, Label, Image et Button ;
  • la mise en forme en CSS ;
  • le maintien de l'état pendant les rechargements en mode outils — un confort de développement, pas une fonctionnalité de jeu.

Jusqu'ici, une carte communautaire qui voulait afficher un score, un minuteur ou un objectif devait le poser dans le monde en 3D, ou détourner l'affichage existant. Elle peut désormais construire une véritable interface à l'écran, avec des boutons cliquables — l'événement Instance.OnCustomHudClicked apparaît dans la même mise à jour.

La limite qu'il faut lire attentivement

Valve pose immédiatement une barrière : « Les événements et les scripts côté client ne sont pas pris en charge. » Toute la logique reste sur le serveur. Cela veut dire que ces interfaces ne pourront pas réagir instantanément à une action locale du joueur : chaque interaction fait un aller-retour. Pour un menu ou un tableau de bord, c'est indifférent. Pour un élément qui doit suivre le tir à la milliseconde, ça ne conviendra pas.

Deuxième nouveauté : contrôler la vue sans déplacer le joueur

La seconde entité s'appelle cs_player_camera, et sa description est courte mais lourde de conséquences : elle « donne le contrôle de la vue d'un joueur sans déplacer son personnage ». Elle peut aussi « être configurée pour laisser le joueur regarder autour de lui depuis la position scriptée ».

Autrement dit : une carte peut désormais prendre la main sur les yeux du joueur — cinématique d'introduction, vue de dessus, caméra de spectateur imposée, plan fixe sur un objectif — tout en laissant son corps là où il est. Trois fonctions l'accompagnent : CSPlayerCamera.IsEnabled, SetEnabled et SetIsControllingAngles.

C'est la brique qui manquait à toute une catégorie de contenus : les cartes narratives, les tutoriels guidés, les modes à phases. On peut désormais montrer quelque chose à un joueur sans le téléporter.

Une pose de bombe dans Counter-Strike 2
Les scripts de carte voient désormais le début et l'interruption d'une pose, et peuvent l'annuler. Crédit : Valve

Le bloc bombe : quatre nouveaux moments observables, et un pouvoir d'annulation

C'est la partie la plus intéressante pour qui conçoit un mode de jeu. Avant cette mise à jour, un script savait qu'une bombe avait été posée ou désamorcée. Il sait maintenant qu'une pose ou un désamorçage commence et qu'il est interrompu :

  • Instance.OnBombPlantStart — la pose démarre ;
  • Instance.OnBombPlantAbort — la pose est interrompue ;
  • Instance.OnBombDefuseStart — le désamorçage démarre ;
  • Instance.OnBombDefuseAbort — le désamorçage est interrompu.

S'y ajoutent trois fonctions côté C4 : C4.GetPlantStartTime, C4.GetPlantFinishTime et surtout C4.AbortPlant. La dernière n'observe rien : elle agit. Un script peut annuler une pose en cours.

Concrètement, cela rend possibles des règles qui n'existaient pas : une zone où poser est interdit, un compte à rebours qui annule la pose s'il expire, un objectif à remplir avant de pouvoir armer. C'est le genre de mécanique qui distingue un mode de jeu d'une simple carte.

Enfin, trois fonctions donnent au script une lecture directe de l'état d'un joueur : CSPlayerPawn.GetC4 (qui porte la bombe), CSPlayerPawn.GetDefuseTarget (ce qu'il désamorce) et CSPlayerPawn.IsBuyMenuOpen (s'il a le menu d'achat ouvert).

Le déplacement des entités devient contrôlable

Trois ajouts complètent le tableau : Entity.Move, Entity.GetMoveType, Entity.SetMoveType, accompagnés d'un nouvel énumérateur CSMoveType. Une carte peut donc changer la façon dont un objet se déplace en cours de partie, et pas seulement le téléporter.

À cela s'ajoute Instance.Delay, qui permet de programmer une action différée sans bricoler un minuteur, et Instance.IsDedicatedServer, qui permet à un script de savoir s'il tourne sur un serveur dédié ou en local — utile pour désactiver proprement ce qui n'a pas de sens hors ligne.

Deux dépréciations : les scripts existants sont à vérifier

La mise à jour retire deux paramètres :

  • planter disparaît de l'événement Instance.OnBombPlant ;
  • defuser disparaît de l'événement Instance.OnBombDefuse.

Ce n'est pas anodin : ces deux paramètres identifiaient le joueur à l'origine de l'action. Toute carte qui les utilisait — pour attribuer un score, déclencher une récompense, afficher un nom — doit être reprise. Les nouvelles fonctions CSPlayerPawn.GetC4 et GetDefuseTarget couvrent le besoin autrement, mais il faut réécrire le passage.

Le confort de développement, mieux traité qu'à l'accoutumée

Quatre lignes concernent le diagnostic d'erreurs, et elles racontent quelque chose sur la maturité de l'outil :

  • les erreurs rencontrées à la première exécution d'un script s'affichent désormais dans la console ;
  • les rejets de promesse non gérés y sont également consignés ;
  • le numéro de colonne est ajouté aux erreurs détectées à la compilation d'un module ;
  • les types de plusieurs événements ont été corrigés, « là où des paramètres pouvaient être indéfinis ».

Un débogage qui passe du silence au message d'erreur localisé fait plus pour la quantité de contenu publié que n'importe quelle nouvelle entité.

Ce qu'il faut en retenir en tant que joueur

  1. Votre partie de ce soir ne change pas. Aucune arme, aucune carte, aucune économie n'est touchée par cette mise à jour.
  2. Les cartes communautaires vont gagner des interfaces. Scores, objectifs, menus cliquables : ce qui relevait du bricolage devient une fonctionnalité officielle.
  3. Des modes de jeu à règles propres deviennent possibles, notamment autour de la bombe, grâce aux quatre nouveaux moments observables et à la possibilité d'annuler une pose.
  4. Certaines cartes existantes vont casser le temps que leurs auteurs remplacent les paramètres planter et defuser.

Une note sur la langue

Valve traduit habituellement ses notes de mise à jour en français : celles du 19 août, qui portaient sur Boulder, Poseidon et la vitesse des modèles contre les murs, sont bien parues sous le titre « Mise à jour de Counter-Strike 2 ». Celles du 24 août sont restées en anglais, y compris pour un joueur dont le client est en français.

Les noms d'entités et de fonctions cités ici sont des identifiants de code : ils ne sont traduits dans aucune langue, et ne le seront pas. Ils s'écrivent tels quels dans un script, et c'est ainsi qu'il faut les chercher.

Partager cet article

Ce qui vous excite le plus dans cette mise à jour, c'est…

Questions fréquentes

Cette mise à jour change quelque chose à mes parties normales ?
Absolument rien. Zéro changement d'armes, de maps, d'économie ou de gameplay. C'est du pur scripting pour les créateurs de contenu communautaire.
Qu'est-ce qu'on va pouvoir faire de nouveau avec les cartes ?
Beaucoup plus de choses : des interfaces à l'écran propres, des cinématiques sans téléportation, et surtout des modes de jeu avec règles perso autour de la bombe. Des trucs qui relevaient du hack deviennent officiels.
Pourquoi certaines cartes vont casser après cette mise à jour ?
Valve a supprimé les paramètres planter et defuser des événements de bombe. Les créateurs qui les utilisaient doivent réécrire leur code pour utiliser les nouvelles fonctions CSPlayerPawn.GetC4 et GetDefuseTarget à la place.
Je peux réagir au clic d'un bouton de l'interface en temps réel ?
Non, toute la logique reste côté serveur — chaque interaction fait un aller-retour. Ça marche très bien pour les menus et tableaux de bord, mais c'est mort pour les éléments qui doivent suivre le tir à la milliseconde.
Pourquoi les notes ne sont pas en français cette fois ?
Valve les a laissées en anglais. C'est exceptionnel — d'habitude elle traduit. Les noms d'entités et de fonctions du code ne sont pas traduits de toute façon, peu importe la langue de votre client.

À retenir

  • Les cartes communautaires peuvent enfin afficher leur propre interface à l'écran avec des boutons cliquables, remplaçant les bricolages 3D d'avant.
  • Un script peut désormais contrôler la vue du joueur sans le déplacer, ouvrant la porte aux cinématiques et tutoriels guidés.
  • La bombe gagne quatre moments observables (début/interruption de pose et de désamorçage) plus le pouvoir d'annuler une pose en cours — ça crée des mécaniques de jeu impossible avant.
  • Les scripts voient enfin qui porte la bombe et qui la désamorce, mais faut refaire les cartes qui utilisaient les anciens paramètres planter et defuser.
  • Le débogage s'est amélioré : les erreurs s'affichent maintenant au lieu de disparaître silencieusement dans le néant.

Commentaires

Aucun commentaire pour le moment. Soyez le premier à réagir !

Laisser un commentaire

Derniers articles