Aller au contenu

La limite YMT des vêtements FiveM, et comment la dépasser

Si installer un pack de vêtements de plus fait crasher le client sur chaque ped féminin, ce pack n'a aucun problème. GTA V ne charge qu'une poignée de collections de vêtements supplémentaires par genre, et vous les avez épuisées. Voici le budget de slots de chaque game build, et trois façons de continuer à ajouter des vêtements malgré tout.

Ce qui casse vraiment

Chaque collection de vêtements addon livre un fichier .ymt par genre : le CPedVariationInfo qui indique au jeu quels drawables existent. GTA V n'en charge qu'un nombre limité par genre, et le budget diminue à chaque DLC ajouté par Rockstar.

Dépassez d'un seul et le jeu n'ignore pas poliment le pack en trop. Il crashe en chargeant le modèle du ped, et il fait tomber tous les peds de ce genre, pas seulement celui qui porte votre nouvel item. C'est l'indice : le crash suit le genre, pas le vêtement.

La pile du crash passe par rage::gameSkeleton::RunEntries. Les hashes de crash connus incluent oven-happy-sad, earth-august-saturn et iowa-beryllium-missouri.

Combien de slots donne chaque game build

Le budget n'est pas une ligne droite : il remonte à chaque fois que Rockstar réorganise la liste des DLC. Choisir le bon sv_enforceGameBuild est le levier le plus puissant dont vous disposez.

sv_enforceGameBuildSlots .ymt libres par genre
21896
23724
25452
261220 : la plus grande marge
269916
280214
294412
309510
32588
3717~4
3889~3

Un seul pack de vêtements de base en coûte deux : un masculin, un féminin. Sur le build 3889, vous en mettez donc environ un et demi avant que les choses commencent à s'effondrer.

Pourquoi le ped féminin casse presque toujours en premier

Deux raisons, qui s'additionnent.

D'abord, les talons hauts et les modificateurs de cheveux ont besoin d'un fichier creaturemetadata, et ce fichier consomme son propre slot. En pratique ces mods sont réservés au féminin, donc le budget féminin s'épuise discrètement plus vite que le masculin.

Ensuite, les propres rapports de bugs de Cfx notent que les crashs de cette catégorie sont « beaucoup plus fréquents avec le ped freemode féminin ». Le symptôme que vous voyez n'est donc presque jamais « cet item féminin est cassé » : c'est « le côté féminin a touché le plafond en premier ».

Comment confirmer que c’est la limite et pas le pack

Deux tests règlent la question en une dizaine de minutes.

  1. Comptez vos slots. Sur le serveur, comptez chaque mp_f_freemode_01_*.ymt et chaque *creaturemetadata*.ymt dans toutes les resources streamées. Comparez avec la ligne de votre build ci-dessus.
  2. Isolez. Lancez un serveur vierge avec uniquement le pack suspect et un script de spawn. S'il ne crashe pas là, le pack est bon et vous dépassez la limite.
Avant l'un ou l'autre test, faites supprimer au joueur FiveM.app\data\cache, server-cache et server-cache-priv. Un téléchargement tronqué est la raison numéro un pour laquelle le même fichier crashe chez un joueur et marche chez un autre.

Solution 1 : passer à un build avec plus de slots

Gratuit, instantané, sans repackaging. Si vous êtes sur 3889 avec environ trois slots et que vous passez sur 2612, vous en obtenez vingt. Réglez-le dans votre server.cfg :

set sv_enforceGameBuild 2612

Le revers, c'est qu'un build plus ancien signifie pas de véhicules, d'armes ni de contenu de map des DLC suivants. Vérifiez ce dont votre serveur a réellement besoin avant de changer.

Solution 2 : fusionner de nombreux items dans une seule collection

C'est la vraie solution. Un slot est consommé par collection, pas par vêtement, et une collection contient jusqu'à 128 drawables par type de composant. Dix chaînes dans dix resources coûtent dix slots. Les mêmes dix chaînes dans une seule collection en coûtent un.

Un pack fusionné ressemble à ceci :

mychains/
  fxmanifest.lua
  mp_f_freemode_01_mychains.meta
  stream/
    mp_f_freemode_01_mychains.ymt              <- UN SEUL, il les porte tous
    mp_f_freemode_01_mychains^teef_000_u.ydd
    mp_f_freemode_01_mychains^teef_diff_000_a_uni.ytd
    mp_f_freemode_01_mychains^teef_001_u.ydd
    mp_f_freemode_01_mychains^teef_diff_001_a_uni.ytd
    mp_f_freemode_01_mychains^teef_002_u.ydd
    mp_f_freemode_01_mychains^teef_diff_002_a_uni.ytd

Règles à respecter, sinon le pack se comporte mal :

  • Les numéros de drawables partent de 000, sans trou. Sautez-en un et tout ce qui suit devient inaccessible.
  • Le nom de la collection doit être exactement la même chaîne dans le nom du fichier ymt, à l'intérieur du ymt, dans le dlcName et le fullDlcName du meta, et dans le préfixe ^ de chaque fichier.
  • numAvailTex est la somme des textures de tous les drawables de ce composant, et c'est un seul octet : restez sous 256.
  • Masculin et féminin restent deux collections séparées. Deux slots, c'est le minimum pour un pack qui couvre les deux.

Solution 3 : remplacer au lieu d’ajouter

Un mod de remplacement écrase un item vanilla existant au lieu de déclarer une nouvelle collection, il ne coûte donc aucun slot. Il n'y a ni ymt ni meta : juste le modèle et la texture, nommés d'après le slot vanilla qu'ils remplacent :

mp_f_freemode_01_mp_f_bikerdlc_01^teef_017_u.ydd

Ça marche, mais c'est un compromis plutôt qu'un gain gratuit, et la recommandation officielle est que l'addon reste le choix par défaut le plus sûr :

  • L'item vanilla que vous écrasez disparaît pour tout le monde sur le serveur.
  • Remplacer une collection peut décaler les IDs de drawables suivants, ce qui casse d'autres addons et toute tenue sauvegardée qui stockait un ID absolu.

Gardez le remplacement pour le cas où vous n'avez vraiment plus de slots et ne pouvez pas changer de build.

Questions fréquentes

Pourquoi tous les peds féminins crashent alors qu'un seul item est nouveau ?

Parce que la limite est par genre, pas par item. Une fois le budget .ymt féminin plein, le jeu crashe en construisant les données de variation du ped féminin : tous les peds féminins tombent, quels que soient les vêtements qu'ils portent.

Combien de packs de vêtements puis-je installer ?

Ça dépend entièrement de votre sv_enforceGameBuild. Le build 2612 donne environ 20 slots par genre ; le build 3889 en donne environ 3. Un pack de base qui couvre les deux genres coûte deux slots.

Est-ce que creaturemetadata compte dans la limite ?

Oui. Les talons hauts et les modificateurs de cheveux livrent un .ymt creaturemetadata qui consomme un slot comme n'importe quel autre. Comme ces mods sont en pratique réservés au féminin, c'est généralement le côté féminin qui est saturé en premier.

La fusion est-elle sans risque ?

Oui, et c'est la solution recommandée. Une collection contient jusqu'à 128 drawables par type de composant. Gardez simplement des numéros de drawables continus à partir de 000 et un nom de collection identique partout où il apparaît.

Faut-il plutôt utiliser des mods de remplacement ?

Seulement en dernier recours. Le remplacement ne coûte aucun slot mais écrase définitivement un item vanilla et peut décaler les IDs de drawables suivants, ce qui casse d'autres addons et les tenues sauvegardées.

Est-ce que ça veut dire que le fichier de vêtement lui-même est cassé ?

En général, non. Si le même fichier marche sur un serveur de test vierge, le fichier est bon et le serveur dépasse simplement son budget de slots.

Essayez gratuitement

Créez un compte gratuit, rejoignez le Discord pour vos crédits et créez votre premier asset en quelques minutes.