Retour au blog
Scripts6 min de lecture

Agency-Hud : concevoir le HUD FiveM dont chaque serveur a vraiment besoin

Agency-Hud affiche aux joueurs les informations utiles sans encombrer l’écran. Voici comment nous avons conçu cette interface.

Agency Scripts

Fondateur et développeur principal chez Agency Scripts

Le problème du HUD

Le HUD par défaut de FiveM est catastrophique. Les joueurs se retrouvent avec une demi-douzaine d’incrustations incompatibles qui se disputent l’espace à l’écran, sans langage visuel cohérent, et des informations essentielles enfouies sous des éléments décoratifs superflus. Tous les serveurs que nous avons rejoints avaient le même problème : trop de HUD, pas assez de clarté. Agency-Hud est là pour résoudre ça.

Hiérarchie de l’information

Nous avons réparti les éléments du HUD en trois niveaux. Le niveau un est toujours visible : santé, armure, faim, soif. Le niveau deux s’affiche selon le contexte : compteur de vitesse en véhicule, indicateur de portée vocale lorsque tu parles. Le niveau trois est disponible à la demande : affichage de la minimap, statut du métier, inventaire. Chaque niveau a son propre poids visuel et apparaît ou disparaît avec fluidité. Rien ne détourne l’attention, sauf si c’est important à ce moment-là.

Accessibilité intégrée

Le mode à contraste élevé, le réglage de la taille et les indicateurs d’état adaptés aux personnes daltoniennes sont inclus d’origine. Ce n’est pas une option en 2026 : parmi tes joueurs, certaines personnes auront des besoins visuels variés, et un HUD professionnel doit en tenir compte. Les propriétaires de serveur peuvent modifier ces paramètres par défaut pour leur communauté.

Performances lors de l’apparition de véhicules

Le principal piège pour les performances du HUD est son redessin lors de l’apparition de nombreux véhicules ou PNJ. Agency-Hud utilise une seule cible de rendu avec des mises à jour delta : nous ne redessinons que les éléments modifiés, pas toute l’incrustation. Sur un serveur de 64 joueurs pendant un braquage, le HUD nous a coûté dix fois moins que les solutions comparables dans nos tests de performance.

Personnalisation sans chaos

Les propriétaires de serveur peuvent repositionner chaque élément du HUD, changer les palettes de couleurs et masquer des éléments spécifiques depuis un seul fichier de configuration. Mais nous avons délibérément choisi de ne pas proposer de marketplace de thèmes ni de positionnement côté utilisateur : le HUD que tu crées est celui que voient tous les joueurs, ce qui garantit la cohérence du langage visuel de ton serveur. La cohérence est une fonctionnalité.

Installation & configuration

Agency-Hud ne dépend d’aucune base de données. Télécharge-le depuis Tebex, dépose le dossier dans ton répertoire resources et ajoute ensure agency-hud à server.cfg . La ressource détecte automatiquement ton framework et récupère les valeurs de santé, d’armure, de faim et de soif depuis les sources appropriées. Pour les configurations standalone, les hooks de données se résument à quatre fonctions dans la configuration.

Si tu remplaces un HUD existant, désactive d’abord l’ancien. La plupart des conflits de HUD sont causés par deux ressources qui dessinent simultanément dans la même zone de l’écran. Agency-Hud n’utilise aucune zone d’écran définie en dur, toutes les positions sont configurables, il peut donc coexister avec certaines incrustations tierces si nécessaire.

Options de configuration

Le config.lua couvre les paramètres de disposition, d’apparence et de performances :

  • Positions des éléments, position X/Y et point d’ancrage configurables séparément pour chaque élément du HUD.
  • Échelle, facteur d’échelle global et réglages d’échelle par élément. Pratique pour les utilisateurs d’écrans ultralarges.
  • Palette de couleurs, couleurs principales, d’avertissement et critiques pour les indicateurs d’état. Par défaut, suit la palette turquoise d’Agency.
  • Mode contraste élevé, palette de couleurs préconfigurée, optimisée pour les joueurs ayant une faible sensibilité au contraste.
  • Mode daltonisme, préréglages de couleurs pour les indicateurs d’état adaptés à la deutéranopie, à la protanopie et à la tritanopie.
  • Conditions de niveau deux, définis précisément les conditions d’affichage de chaque élément contextuel (compteur de vitesse, indicateur vocal, etc.).
  • Comportement de la minimap, toujours activée, activée en mouvement ou activée manuellement uniquement.
  • Fréquence de mise à jour, fréquence à laquelle le HUD vérifie les changements de valeur. Par défaut : 250ms (équilibre les performances).

Compatibilité avec les frameworks

Agency-Hud est fourni avec des adaptateurs de données pour QBCore et ESX. Pour standalone, implémente les fonctions de configuration pour la santé, l’armure, la faim, la soif, la portée vocale et les données du métier. La couche de rendu, le système d’animation, la logique des niveaux et les modes d’accessibilité sont entièrement indépendants du framework. Pour changer de framework, il suffit de remplacer l’adaptateur de données, sans réinstaller la ressource.

Pourquoi c’est important pour le roleplay

Le HUD est le seul élément d’interface toujours à l’écran. Contrairement à un téléphone ou une tablette qu’un joueur ouvre délibérément, le HUD est ambiant : il reste à la périphérie de la perception et influence chaque instant de jeu. Un HUD mal conçu pénalise constamment l’expérience de chaque joueur. Un bon HUD est invisible : présent quand il le faut, absent dans le cas contraire, et ne sollicite jamais une attention qu’il n’a pas méritée.

L’approche de visibilité par niveaux est au cœur de la conception. Le niveau un (toujours visible, petit) indique aux joueurs ce qu’ils doivent savoir en permanence : « suis-je en train de mourir, ai-je faim, suis-je protégé par une armure ? » Le niveau deux (contextuel, apparaît selon certaines conditions) indique aux joueurs ce qu’ils doivent savoir selon la situation : « à quelle vitesse je roule, mon micro est-il activé ? » Le niveau trois (à la demande) indique aux joueurs ce qu’ils doivent savoir de temps en temps : « quel est mon statut professionnel, qu’y a-t-il dans mon inventaire à accès rapide ? »

L’accessibilité n’est pas une réflexion après coup pour Agency-Hud, c’est une priorité, car une part importante des joueurs présente une forme de déficience de la vision des couleurs. Un HUD illisible pour les joueurs daltoniens n’est pas seulement un échec d’UX, c’est aussi un échec en matière d’accessibilité qui touche de vraies personnes sur ton serveur. Proposer ces préréglages ne coûte rien et compte beaucoup pour les joueurs qui en ont besoin.

Questions fréquentes

Les joueurs peuvent-ils personnaliser la disposition de leur HUD ?

Non, c’est intentionnel. Les propriétaires du serveur contrôlent la disposition du HUD, pas les joueurs. C’est une question de cohérence : sur un serveur où chaque joueur a une disposition de HUD différente, l’identité visuelle n’est pas cohérente. Si tu veux offrir un choix limité aux joueurs (activer ou désactiver la minimap, modifier l’échelle), ces options peuvent être proposées sous forme de commandes en jeu qui écrivent dans une table de préférences des joueurs.

Agency-Hud remplace-t-il la minimap FiveM par défaut ?

Oui. Il affiche sa propre minimap dans un élément canvas, avec un zoom et l’affichage des points de cheminement configurables. La minimap native est masquée au démarrage de la ressource. Si tu dois conserver certains comportements spécifiques de la minimap native (certains outils anticheat s’y connectent), il existe une Config.UseNativeMinimap = true option qui réactive la carte native sous les autres éléments d’Agency-Hud.

Quelles sont les performances sur les serveurs très fréquentés ?

Agency-Hud utilise le rendu différentiel : il ne redessine que les éléments du HUD dont les valeurs ont changé depuis la dernière image. Sur un serveur de 128 joueurs très fréquenté, un appel de dessin du HUD prend généralement entre 0.01-0.03ms par image. La comparaison des benchmarks dans notre documentation montre que c’est 3-5x inférieur à celui de la plupart des autres HUD dans des conditions identiques.

Puis-je ajouter des éléments HUD personnalisés pour les mécaniques spécifiques à mon serveur ?

Oui. Utilise exports['agency-hud']:RegisterElement(id, options) pour ajouter des indicateurs personnalisés. Transmets une fonction de rendu qu’Agency-Hud appelle pendant sa boucle de dessin. Tes éléments personnalisés s’intègrent au système de niveaux et respectent automatiquement la palette de couleurs du serveur.

Prérequis

  • Serveur FiveM (QBCore, ESX ou standalone)
  • compte cfx.re avec une licence Agency-Hud valide
  • Aucune dépendance à une base de données
  • Facultatif : ox_lib (pour les composants d’interface, une solution de repli est prévue)

Le script correspondant

Prêt pour ton serveur, mises à jour incluses.

Prêt à commencer ?

Procurez-vous les scripts dans notre boutique, ou rejoignez le Discord pour le support, les mises à jour et un aperçu de la suite.