Comment modifier la tenue de route d'un véhicule (FiveM)

Envie de freins plus précis, de pneus plus adhérents ou d'une véritable physique de drift ? Dans FiveM, vous pouvez modifier le comportement de votre véhicule de deux manières simples :

  1. Modifier manipulation.meta pour un réglage permanent par modèle.
  2. Gestion des remplacements lors de l'exécution avec des natifs de FiveM dans un script.

Ce guide montre les deux, explique chaque valeur importante et vous fournit des flux de travail de test sûrs qui empêchent la désynchronisation et le chaos sur votre serveur.

Nous fournissons également un outil permettant de modifier toutes les tenues de route du véhicule.


Résumé rapide

  • Pour les voitures supplémentaires: modifier cette ressource manipulation.meta et assurer le bon fonctionnement du véhicule véhicules.meta le montre.
  • Pour les voitures de base GTA: ajoutez une entrée de gestion personnalisée et référencez-la dans une ressource légère ; ne modifiez pas les fichiers du jeu.
  • Pour des ajustements en direct: utiliser Définir la manipulation du véhicule (Float/Int/Vector) sur le client qui possède le véhicule, puis verrouillez les valeurs par défaut avec une porte côté serveur si nécessaire.
  • Tester correctement: mesurez la vitesse de 0 à 100 km/h, la vitesse de pointe, la distance d'arrêt et les virages ; enregistrez les changements ; revenez rapidement en arrière si la conduite est plus mauvaise.

Prérequis

  • Un serveur FiveM fonctionnel et une ressource de développement pour tester les modifications.
  • Connaissances de base de la structure des ressources FiveM : fxmanifest.lua, client.lua, serveur.lua.
  • Un éditeur de texte (VS Code) et un accès à votre dossier de ressources.

Conseil : conservez toutes les modifications de manipulation dans un ressource distincte réglage_de_la_manutention/ afin que vous puissiez le désactiver rapidement si quelque chose se casse.


Méthode 1 : Modifier manipulation.meta (permanent)

Où le trouver

  • Les véhicules complémentaires sont généralement livrés avec données/manutention.meta.
  • Sinon, créez-en un et référencez-le dans fxmanifest.lua.

Exemple de structure de ressources

resources/ handling_tuning/ fxmanifest.lua data/ handling.meta vehicles.meta (uniquement si vous devez lier un nouveau handlingId) carvariations.meta (facultatif)

Minimal fxmanifest.lua

fx_version 'cerulean' jeu 'gta5' fichiers { 'data/handling.meta', 'data/vehicles.meta' } -- Indique au jeu à quoi correspond chaque fichier data_file 'HANDLING_FILE' 'data/handling.meta' data_file 'VEHICLE_METADATA_FILE' 'data/vehicles.meta'

Exemple manipulation.meta entrée (voiture)

MON_SULTAN_RÉGLÉ  440010 0

Lier la manutention à un véhicule

Si vous avez introduit un nouveau <handlingName>, pointez votre véhicule vers lui véhicules.meta:

sultan MON_SULTAN_RÉGLÉ

Objectifs de réglage communs

ButModifiez ces valeursRemarques
Accélération plus rapidefInitialDriveForce légèrement en hausse; fDriveInertie un peu plus hautÉvitez les sauts brusques. Petits incréments de 0,02 à 0,05.
Vitesse de pointe plus élevéefInitialDriveMaxFlatVel en hautRestez réaliste pour trouver l’équilibre.
De meilleurs freinsfForce de freinage vers le haut ; biais 0,55–0,65 avantUne position trop haute bloque les roues de manière irréaliste.
Plus d'adhérencefCourbe de traction max/min en haut; en bas perte de traction à faible vitesseUne adhérence élevée réduit les glissades amusantes.
Configuration de dériveInférieur fCourbe de traction max/min; augmenter perte de traction à faible vitesse; réduire fBrakeBiasFrontCombiner avec des niveaux supérieurs fSteeringLock.
Conduite plus douceInférieur fForce de suspension; inférieur fCompDamp/ReboundDampAttention au creux.
Virages plus platsAugmenter fForce de la barre antiroulis; ajuster les centres de roulisUne rigidité excessive provoque un survirage brutal.

Gardez un journal des modifications par véhicule : ce que vous avez modifié, dans quelle mesure et les résultats de vos tests.


Méthode 2 : Remplacer la gestion par les natifs (exécution)

Utilisez ceci lorsque vous en avez besoin dynamique configurations (événements de course, emplois, locations) ou souhaitez effectuer des tests A/B avant de verrouiller les valeurs dans manipulation.meta.

Exemple de script client

-- client.lua fonction locale setHandlingFloat(modèle, champ, valeur) local mhash = type(modèle) == 'string' et GetHashKey(modèle) ou modèle SetVehicleHandlingFloat(mhash, 'CHandlingData', champ, valeur) fin CreateThread(fonction() -- Exemple : améliorer légèrement l'accélération de Sultan setHandlingFloat('sultan', 'fInitialDriveForce', 0.33) setHandlingFloat('sultan', 'fInitialDriveMaxFlatVel', 195.0) fin)

S'applique uniquement aux véhicules possédés

Le client qui possède L'entité doit appliquer la modification pour éviter la désynchronisation. Si vous avez besoin d'une autorité serveur, associez un événement serveur à une vérification du propriétaire de l'entité et réappliquez-la. joueurVéhiculeEntré.

-- server.lua RegisterNetEvent('tune:apply') AddEventHandler('tune:apply', function(netId, changes) local src = source -- valider les permissions ici TriggerClientEvent('tune:applyClient', -1, netId, changes) end) -- client.lua RegisterNetEvent('tune:applyClient') AddEventHandler('tune:applyClient', function(netId, changes) local veh = NetToVeh(netId) si DoesEntityExist(veh) et NetworkHasControlOfEntity(veh) alors pour _, c dans ipairs(changes) faire SetVehicleHandlingFloat(GetEntityModel(veh), 'CHandlingData', c.field, c.value) end end end)

Pour les boosts temporaires (nitreux, événements), stockez les valeurs d'origine et les restaurer après la séance.


Flux de travail de test sécurisé

  1. Véhicule clone:testez d'abord sur un modèle, pas sur toute la classe.
  2. Définir des lignes de base: stock 0–100, vitesse de pointe, distance de freinage 100–0, un slalom standard.
  3. Changer une variable: valider de petits incréments, tester après chacun.
  4. Utilisez des itinéraires et des conditions météorologiques identiques: supprimer le caractère aléatoire.
  5. Recueillir des commentaires: laissez plusieurs joueurs tester ; contrôleur de notes contre clavier.
  6. Surveiller les performances: vérifier résmon pour les pics lorsque vous écrivez des changements par tick.

Liste de contrôle simple des indicateurs clés de performance

  • Le 0–100 km/h s'améliore de 5–10% sans patinage des roues.
  • La vitesse de pointe n'augmente pas plus que nécessaire pour l'équilibre des classes.
  • La distance de freinage diminue mais reste réaliste.
  • La voiture reste rattrapable à la limite ; pas de survirage brusque.

Règles d'équilibre et anti-chaos

  • Ensemble plafonds de classe: vitesse de pointe, puissance, adhérence par classe (A, S, X). Documentez les limites.
  • Appliquez la validation côté serveur afin que les joueurs ne puissent pas empiler des valeurs illégales.
  • Garder police et urgences véhicules prévisibles ; ne pas trop polir.
  • Pour les serveurs de dérive, publiez un pack de base de dérive avec des valeurs partagées pour réduire les plaintes.

Dépannage

Le véhicule ignore votre handlingId

  • Assurer la véhicules.meta entrées <handlingId> correspond exactement <handlingName>.
  • Assurez-vous d'avoir chargé véhicules.meta via fichier_de_données 'FICHIER_DE_METADONNEES_DU_VEHICULE'.

Les modifications de maniabilité ne s'appliquent pas aux voitures supplémentaires

  • Certains packs intègrent leurs propres manipulation.metaSupprimez les doublons ou assurez-vous que votre fichier se charge après la leur.

Désynchronisation entre les joueurs

  • Appliquer les remplacements d'exécution sur le client propriétaire. Éviter les boucles de spam ; définir une seule fois par génération.

La voiture se retourne trop facilement

  • Centre de masse inférieur : augmentation légère fRollCentreHeightAvant/Arrière et réduire fSuspensionRaise.

Sous-virage

  • Augmenter fCourbe de traction minimale légèrement et fSteeringLockEnvisagez une répartition plus importante du freinage arrière.

Survirage

  • Augmenter légèrement l'adhérence arrière ou l'anti-roulis. Abaisser perte de traction à faible vitesse.

Référence : Valeurs de gestion des clés

  • Moteur: fInitialDriveForce, fDriveInertie, fInitialDriveMaxFlatVel, fClutchChangeRateScaleUpShift/DownShift
  • Freins: fForce de freinage, fBrakeBiasFront, fForce de frein à main
  • Pilotage: fSteeringLock
  • Traction: fCourbe de traction max/min/latérale, perte de traction à faible vitesse, fRessort de traction DeltaMax
  • Suspension: fForce de suspension, fSuspensionCompDamp, fSuspensionRebondAmortissement, fLimite supérieure/inférieure de la suspension, fSuspensionRaise, fForce de la barre antiroulis
  • Stabilité: fRollCentreHeightAvant/Arrière, fMesse, Coefficient de traînée initial

Exemple : configuration de rue équilibrée (copier et adapter)

MX_STREET_BALANCED

FAQ

Comment puis-je modifier la tenue de route d'une seule voiture ?
Créer un nouveau <handlingName> dans manipulation.meta et le référencer via <handlingId> dans véhicules.meta pour ce modèle.

Puis-je appliquer des modifications de gestion par joueur ou par travail ?
Oui. Utilisez des remplacements d'exécution dans un script client au démarrage d'une tâche et restaurez les valeurs d'origine à la fin.

Pourquoi la vitesse de pointe semble-t-elle limitée ?
fInitialDriveMaxFlatVel Agit comme un bouchon souple. La traînée aérodynamique et les rapports de démultiplication influencent toujours la vitesse de pointe réelle.

Les modifications de gestion affectent-elles les performances du serveur ?
Statique manipulation.meta Les modifications ne le sont pas. Les ajustements de script par tick peuvent être définis une fois au lancement et éviter les boucles.


Liens internes


Références externes


Liste de contrôle de publication

  • Ajoutez des blocs de code avec des boutons de copie.
  • Reliez les cinq guides internes ci-dessus.
  • Ajoutez un court clip de démonstration de la distance de freinage avant/après.
  • Examiner le comportement multiplateforme (clavier/contrôleur).
  • Exécutez un test A/B pendant 7 jours avant de déployer le site sur l’ensemble du site.
Luc
Luc

Je m'appelle Luke, je suis un joueur et j'adore écrire sur FiveM, GTA et le jeu de rôle. Je dirige une communauté de jeu de rôle et j'ai environ 10 ans d'expérience dans l'administration de serveurs.

Articles: 570