npcDevlog - August 2024

-

Pas de nouveautés côté Rockstar ce mois-ci. Nous n'avons pas eu de Community Pulse pour août, probablement en raison de la période estivale. Cela peut se comprendre, et nous espérons que le rythme reprendra avec la rentrée de septembre, avec de nouvelles mises à jour et annonces pour la communauté FiveM et RedM.

De notre côté, ce mois d'août a été consacré à l'optimisation des scripts, à l'ajout de nouvelles fonctionnalités pour jo_libs, et à l'amélioration des scripts de personnalisation, en particulier ceux liés à la gestion des personnages et à l'expérience utilisateur sur les serveurs FiveM et RedM.

Travail sur Jo Libs

Ce mois-ci, plusieurs améliorations majeures ont été apportées à jo_libs, notre bibliothèque publique pour les développeurs de FiveM et RedM. Parmi les nouveautés, nous avons introduit la possibilité d'utiliser des fichiers globaux. Cette fonctionnalité permet d'optimiser les performances des scripts en centralisant certains événements, réduisant ainsi les boucles redondantes dans les différentes ressources. Ces fichiers sont chargés et exécutés une seule fois : lorsque le module est chargé pour la première fois dans un script.

Un exemple concret de cette optimisation concerne la bibliothèque Me. Actuellement, chaque ressource utilisant Me crée une boucle qui tourne toutes les secondes pour récupérer des informations du joueurs comme ses coordonnées. Avec les fichiers globaux, cette boucle n'a besoin d'être exécutée qu'une seule fois pour l'ensemble des scripts, réduisant ainsi la charge sur le serveur. Cette approche améliore non seulement les performances du serveur, mais facilite aussi la gestion des événements dans jo_libs.

Voici le changement sous forme de diagramme :

jo_libs lifecycle before the 1.8.0
jo_libs lifecycle before the 1.8.0
new jo_libs lifecycle after the 1.8.0
New jo_libs lifecycle after the 1.8.0

Cependant, l'introduction de ces fichiers globaux n'a pas été sans défis techniques. Un bug survenant lorsque je chargeais d'abord un module en mode global, puis en mode local m'a pris plusieurs jours à identifier et comprendre. Le système considérait à tort que le module était déjà chargé, empêchant le chargement des fichiers locaux. Après plusieurs heures de travail, j'ai corrigé ce problème en forçant le rechargement des modules locaux et ceux même si ils ont déjà été chargé en mode global.

Améliorations du script de coiffeur

J'ai également apporté plusieurs améliorations au script de coiffeur. En utilisant la nouvelle API de jo_libs, j'ai pu rendre le code du menu beaucoup plus flexible et rapide à implémenter. Le script de coiffeur permet désormais de personnaliser les dents des joueurs directement en jeu, une fonctionnalité qui peut être désactivée par le gestionnaire du serveur si nécessaire.

De plus, j'ai ajouté une fonctionnalité permettant aux joueurs d'avoir un aperçu de leurs cheveux avec de la pommade coiffante. Cela permet aux utilisateurs de visualiser le résultat final avant de confirmer leurs choix.

Preview of hair pomaded in the hairdresser

Développement pour le serveur Entropy

Ce mois-ci, Elzetia a travaillé sur deux nouveaux scripts pour le serveur RedM Entropy. Le premier est un script de crew qui introduit un système de livraison de charrettes. Inspiré des modes de livraison dans certains FPS, ce script demande aux joueurs de transporter une charrette d'un point A à un point B. Cependant, la charrette n'avance que si un allié est présent dans la zone, ajoutant une dimension stratégique à l'expérience de jeu.

Preview of the escort script for Entropy's server

Le second est un script de chasse aux animaux légendaires, permettant aux joueurs de traquer et capturer des animaux légendaires sur le serveur Entropy.

Harriet camp in RedM
Legendary Animals - Harriet Camp location
Harriet menu in RedM
Legendary Animals - Harriet menu
Gus Macmillan spawn in RedM
Legendary Animals - Trade with Gus Macmillan

Mises à jour et déploiements

Ce mois-ci, j'ai également déployé les mises à jour de plusieurs scripts essentiels pour les serveurs FiveM et RedM :

  • Script d'écurie : avec plusieurs nouvelles fonctionnalités.
  • Script de coiffeur : incluant la personnalisation des dents et d'autres améliorations.
  • Script du magasin de vêtements : avec des optimisations et corrections de bugs.
  • Roue de vêtements : mise à jour pour une meilleure compatibilité avec les nouvelles fonctionnalités.

Tout est désormais à jour et disponible pour les utilisateurs.

Conclusion et Objectifs pour Septembre

Malheureusement, tous les objectifs pour ce mois d'août n'ont pas été atteints. J'avais prévu de sortir mon créateur de personnage, mais il m'a été impossible de travailler dessus par manque de temps. En effet, la correction des bugs reste ma priorité absolue et passe avant la publication de nouveaux scripts. Il est important de se rappeler que plus je publie de scripts, plus la demande de support augmente. Gérer cette partie seul me prend énormément de temps.

En septembre, j'espère pouvoir finaliser et publier ce nouveau créateur de personnage. Mes objectifs incluent également la mise à jour de la documentation de jo_libs avec les nouveaux modules, ainsi que la correction des bugs restants dans les scripts existants.

Merci à tous ceux qui suivent ces devlogs. Pour vous remercier de votre fidélité, voici un code promo valable 48h : Code Promo.