Un MLO pur, sans script, n’exécute aucun code : son coût se situe dans le streaming et le rendu, sur le PC de chaque joueur. Ce qui compte, c’est la mémoire dont ses modèles et ses texture dictionaries ont besoin, la distance à laquelle ils sont streamés et le nombre d’intérieurs et de props qu’un même lieu charge à la fois. Lisez les avertissements de taille que FXServer affiche au démarrage de la carte, comparez le même trajet avec la carte arrêtée puis active, puis réduisez ou remplacez l’asset trop lourd. Utilisez la checklist en fin d’article avant d’acheter la prochaine carte.
Ce guide a été vérifié le 7 novembre 2026 avec la documentation Cfx.re et le code source de FXServer. Il décrit des procédures et des limites documentées. Ce n’est pas un benchmark, et RPScripts n’a mesuré aucune fréquence d’images pour l’écrire.
D’où viennent les lags d’un MLO
- Assets surdimensionnés. Un texture dictionary (YTD) ou un modèle (YDR, YFT) qui demande beaucoup de mémoire entre en concurrence avec tout ce que le jeu streame. FXServer signale au démarrage de la ressource tout asset de plus de 16 Mio ; au-delà de 48 Mio, l’avertissement ajoute que les assets surdimensionnés peuvent provoquer et provoqueront des problèmes de streaming, par exemple des modèles qui ne se chargent pas ou ne s’affichent pas.
- LOD absents ou faibles. Chaque entité placée a une distance de LOD. Un modèle de niveau de détail avec une distance plus grande remplace le modèle détaillé de loin. Sans lui, le créateur doit choisir entre un modèle complet qui apparaît tard et un modèle streamé de plus loin.
- Trop d’éléments au même endroit. Plusieurs cartes sur le même pâté de maisons, des props optionnels laissés actifs ou une refonte de ville par-dessus des intérieurs isolés sont tous streamés en même temps.
- Des conflits qui ressemblent à du lag. Deux cartes qui modifient les mêmes coordonnées peuvent scintiller, perdre leur collision ou afficher des murs manquants. C’est un conflit de placement, pas un problème de performance ; le guide de compatibilité des MLO décrit le test en préproduction.
Étape 1 : établir une référence avec la carte arrêtée puis active
- Utilisez un serveur de préproduction avec le même artifact, le même game build et les mêmes ressources que la production.
- Choisissez un trajet : approche de l’extérieur, passage de l’entrée, traversée de chaque étage, sortie. Gardez la météo, l’heure et les réglages du client identiques.
- Parcourez le trajet avec la carte arrêtée, puis avec la carte démarrée. Notez les FPS, les objets qui se chargent tard et les textures qui restent floues.
- Recommencez avec un second client qui ne s’est jamais connecté, pour inclure un téléchargement et un cache à froid dans le test.
Si le problème n’apparaît que lorsqu’une deuxième carte tourne aussi, traitez-le d’abord comme un conflit de placement et faites le test de compatibilité avant de toucher à un asset.
Étape 2 : lire les avertissements de taille de FXServer
Quand une ressource avec des fichiers streamés démarre, FXServer contrôle chacun de ses fichiers de ressource GTA V et affiche une ligne comme Asset mymap/mymap_txd.ytd uses 34.0 MiB of physical memory. La taille indiquée est la mémoire nécessaire une fois l’asset chargé, lue dans l’en-tête du fichier, et non la taille du téléchargement. FXServer contrôle séparément la mémoire physique et la mémoire virtuelle :
| Mémoire par asset | Sortie console |
| 16 Mio ou moins | Aucun avertissement |
| Plus de 16 Mio | Avertissement en bleu |
| Plus de 32 Mio | Avertissement en jaune |
| Plus de 48 Mio | Ajout : les assets surdimensionnés peuvent provoquer et provoqueront des problèmes de streaming |
| Plus de 64 Mio | Avertissement en rouge |
Copiez chaque avertissement de la carte dans vos notes. Ce sont les fichiers à corriger en premier et les chiffres à demander à un créateur avant l’achat. Une console propre ne prouve pas qu’une carte est performante ; elle indique seulement qu’aucun fichier ne dépasse ces seuils.
Étape 3 : contrôler la mémoire de streaming et les pools côté client
Trois outils du client montrent ce que la carte coûte en jeu. strmem et resmon sont des commandes développeur : sur FiveM Legacy, lancez le client avec +set moo 31337 ; sur FiveM for GTAV Enhanced, le serveur doit définir sv_devMode true. Ne les utilisez que sur votre propre serveur de développement.
strmem true liste la mémoire de streaming utilisée par chaque asset et donne une vue d’ensemble. Placez-vous dans le MLO et cherchez ses fichiers en haut de la liste.
- F8 > Tools > Streaming > Pool Monitor montre le taux de remplissage des pools du jeu. Les intérieurs, les bâtiments, les texture dictionaries et les données d’occlusion ont chacun leur pool (par exemple InteriorProxy, Building, TxdStore et les pools Occlusion).
resmon true ouvre le moniteur de ressources. Une carte sans script y affiche presque aucun temps processeur, mais sa colonne Streaming indique la mémoire de streaming occupée par la ressource. Comparez cette colonne avec la carte arrêtée puis active.
Si la console répond « Access denied », le guide des commandes de la console F8 explique pourquoi.
Les colonnes processeur de resmon comptent pour les scripts livrés avec la carte, comme les portes, les ascenseurs ou les bascules de props. Une valeur processeur faible ne signifie pas que la carte est légère à afficher : gardez à côté les notes de FPS de l’étape 1. Le guide resmon montre comment comparer une action de script à la fois.
Étape 4 : corriger les textures et modèles surdimensionnés à la source
- Conservez le paquet d’origine et les fichiers source du créateur. Travaillez sur une copie.
- Pour un texture dictionary, ouvrez-le dans un éditeur de YTD comme CodeWalker ou OpenIV, exportez ses textures, réduisez celles qui sont plus grandes que ce que la surface exige, puis réimportez-les sous les mêmes noms. Les modèles référencent les noms de textures : ne renommez jamais une texture seule.
- Redémarrez la ressource et relisez la console. L’avertissement doit avoir disparu ou baissé.
- Pour un modèle trop lourd, la correction se fait dans la source 3D : géométrie simplifiée, vrai modèle LOD ou découpage en éléments plus petits. Le manuel des assets Cfx.re montre la configuration HD et LOD dans CodeWalker, y compris
LodDist et le lien vers la YMAP parente.
- Refaites le trajet de référence et comparez avec vos notes.
Pour les cartes avec beaucoup de fichiers de collision ou de carte, Cfx.re documente la commande développeur save_gta_cache. Elle enregistre des données de cache dans %AppData%\CitizenFX ; copiez ce fichier à la racine de la ressource et déclarez-le sous files dans fxmanifest.lua, pour que les joueurs le chargent et que leur premier chargement soit plus rapide.
Ne supprimez pas de fichiers de collision, d’occlusion ou de LOD pour faire disparaître un avertissement. Vous échangeriez un avertissement de taille contre des murs manquants, des sols invisibles ou des intérieurs qui s’affichent les uns à travers les autres.
Étape 5 : désactiver ce que vous n’utilisez pas
Beaucoup d’intérieurs incluent des groupes de props optionnels appelés entity sets, par exemple une version meublée et une version vide d’une pièce. Un script les active avec ActivateInteriorEntitySet et applique le changement avec RefreshInterior. Si la documentation de la carte liste des entity sets, n’activez que ceux que votre serveur utilise et vérifiez quelle ressource les contrôle.
Vérifiez aussi le lieu lui-même. Une refonte de ville et un MLO isolé sur le même pâté de maisons sont tous deux streamés à cet endroit. Gardez une seule ressource responsable par lieu et arrêtez la carte remplacée, y compris tout chargeur d’IPL qui active encore l’intérieur d’origine.
Étape 6 : game build, édition et taille des pools
- Game build.
sv_enforceGameBuild choisit le build utilisé par les clients, ne se définit qu’au démarrage, et chaque build contient le contenu des builds précédents. Si un créateur indique un build minimum, choisissez ce build ou un plus récent. FiveM for GTAV Enhanced ne prend actuellement en charge que le dernier build.
- Édition. Sur Enhanced, une ressource peut contenir un dossier
stream_enhanced qui remplace stream. Sans ce dossier, Enhanced charge stream, que les notes Enhanced de Cfx.re indiquent comme obsolète. Demandez au créateur si la carte a été testée sur Enhanced ou fournit des fichiers stream_enhanced, et testez-la en préproduction avant de compter dessus.
- Taille des pools.
increase_pool_size agrandit un pool nommé, uniquement au démarrage du serveur. Cfx.re publie les pools autorisés et l’augmentation maximale pour chacun ; une demande hors de ces limites n’a aucun effet. Les clients redémarrent le jeu quand ils rejoignent un serveur avec d’autres réglages de pools ; avec les mêmes réglages, seulement à leur première connexion. N’agrandissez un pool que si le Pool Monitor le montre proche de sa limite, pas en copiant la liste d’un autre serveur.
Quand le problème est une perte de textures sur un seul PC
Si un seul joueur voit des textures floues ou manquantes, et aussi sur d’autres serveurs, commencez par ce client : réglages graphiques, mods et cache. Le guide sur la perte de textures sépare les vérifications côté client et côté serveur. Si tous les joueurs perdent des textures au même endroit, revenez à l’étape 2 pour les cartes de cette zone.
Checklist MLO avant l’achat
Les mêmes questions valent pour les MLO payants et pour les MLO gratuits ; une carte gratuite peut contenir les mêmes fichiers surdimensionnés.
- Taille des assets. Demandez la sortie console de FXServer au démarrage de la carte, ou une liste des fichiers avec leur taille. Toute ligne au-dessus de 48 Mio doit être expliquée ; les lignes au-dessus de 16 Mio méritent une question.
- Détail et LOD. Demandez si les modèles extérieurs ont des modèles LOD et à quelle distance ils sont streamés. « Optimisé » sans détails ne veut rien dire.
- Game build et édition. Vérifiez le build minimum et la présence de fichiers Enhanced.
- Emplacement. Obtenez les coordonnées, l’intérieur d’origine ou l’IPL remplacé et les cartes avec lesquelles un conflit est connu. Comparez avec ce qui tourne déjà à cet endroit.
- Dépendances. Vérifiez les chargeurs requis, les scripts de portes ou d’ascenseurs, les entity sets et le framework dont ils ont besoin.
- Modifiabilité. L’Asset Escrow de Cfx.re peut chiffrer les fichiers de modèles YFT, YDD et YDR. Dans une carte sous escrow, vous ne pouvez pas retravailler vous-même ces modèles ni leur niveau de détail : chaque correction dépend du créateur. L’escrow n’est pas encore implémenté sur FiveM for GTAV Enhanced.
- Tester avant la production. Utilisez le serveur de démonstration du créateur s’il existe, puis votre propre serveur de préproduction avec le trajet de référence de l’étape 1.
- Support et mises à jour. Cherchez un contact de support, un journal des modifications et une politique de remboursement écrite.
Quand une carte passe ces questions, suivez les étapes pour installer et vérifier un MLO en préproduction et refaites le trajet de référence avant la mise en ligne.
Transparence : RPScripts vend des MLO et des intérieurs. Leurs téléchargements sont livrés sans chiffrement escrow.
Sources