- Documentation
- 06Jeu
Véhicules possédésJeu
Les véhicules des personnages arrivent dans le fichier des véhicules de SuperMDT : scripts pris en charge, garages tiers, ce qui n’est pas lu.
Avec Véhicules possédés, les véhicules des personnages arrivent dans le module Véhicules : plaque, modèle, couleur, propriétaire. Un contrôle de plaque montre tout de suite à qui appartient la voiture, sans saisie.
L’activer
Section intitulée « L’activer »- Vérifie que ton serveur est dans le tableau de compatibilité.
- Dans Configuration › Jeu › Intégrations, active Véhicules possédés.
- Sous l’interrupteur, SuperMDT affiche le script utilisé et s’il y a une resynchronisation périodique.
Réservé aux administrateurs de l’organisation et aux grades qui ont Administration
déléguée › Régler le jeu. Côté serveur :
Config.Integrations.vehicles.enabled dans config.lua.
Ce qui arrive dans SuperMDT
Section intitulée « Ce qui arrive dans SuperMDT »- Une fiche par plaque, avec le badge Jeu.
- La plaque, le modèle et le propriétaire suivent le jeu, en lecture seule dans le MDT : un transfert en jeu change le propriétaire.
- La couleur est la couleur principale ramenée à une famille lisible (« Rouge », « Gris »…). Elle n’écrase jamais une couleur déjà saisie.
- Le statut (volé, fourrière…), la photo, les notes et les champs personnalisés restent ceux du MDT : le jeu n’y touche jamais.
- Au plus 50 véhicules par personnage.
- Une fiche archivée n’est jamais recréée, et une fiche détachée du jeu n’est plus mise à jour.
- Un véhicule qui n’est plus chez un personnage (vendu à un PNJ, supprimé) n’est jamais retiré : sa fiche garde le dernier propriétaire connu, jusqu’à ce que la plaque soit lue chez un autre personnage ou qu’un agent la modifie.
- Chaque création ou mise à jour est inscrite au journal d’audit (« a importé depuis le jeu le véhicule »).
Quand les véhicules arrivent
Section intitulée « Quand les véhicules arrivent »- à chaque connexion, reconnexion ou changement de personnage, sur tous les frameworks (ESX compris), sauf si le personnage a été lu il y a moins d’une minute ;
- à l’achat, au don ou au transfert, avec qbx_vehicles (temps réel) ;
- à la création d’un véhicule par les scripts de base : le personnage est relu environ
3 s après (le temps que le script l’écrive en base) :
- QBCore : achat en concession qb-vehicleshop (
qb-vehicleshop:server:onVehiclePurchased),/admincarde qb-adminmenu (qb-admin:server:SaveCar), occasions qb-vehiclesales (achat, reprise, mise en vente, revente) ; - Qbox : qbx_vehicleshop et
/admincarde qbx_adminmenu (par qbx_vehicles), occasions qbx_vehiclesales ; - ESX : esx_vehicleshop (achat par le joueur, vente par un concessionnaire), véhicules de
service d’esx_policejob et d’esx_ambulancejob, bateaux d’esx_boat.
/admincard’esx_adminmenu est une commande sans événement : le véhicule arrive à la reconnexion ou avecsupermdt resync;
- QBCore : achat en concession qb-vehicleshop (
- avec
supermdt resync(console du serveur) : tous les personnages connectés sont relus et renvoyés tout de suite ; - à la resynchronisation des personnages connectés, toutes les 30 minutes par défaut : elle rattrape les autres scripts qui écrivent directement en base.
Une liste inchangée n’est pas renvoyée. Un véhicule sans couleur connue arrive sans couleur.
Ce qui n’est pas lu
Section intitulée « Ce qui n’est pas lu »L’état du véhicule côté garage n’est jamais lu : rangé, sorti, en fourrière du garage, en financement. Le statut du MDT (volé, en fourrière…) est celui que tes agents saisissent.
Compatibilité
Section intitulée « Compatibilité »Testé en jeu essayé en jeu sur un vrai serveur. Vérifié sur le code écrit d’après le code source ou l’API native du script, couvert par les tests de la passerelle, pas encore essayé en jeu. Expérimental d’après la documentation publique de l’éditeur, jamais essayé : vérifie-le sur ton serveur avant de t’y fier. Compatible le script garde les tables natives du framework : la lecture native marche telle quelle.
| Framework | Script | État | Ce qui est lu |
|---|---|---|---|
| Qbox | qbx_vehicles | Vérifié sur le code | Export GetPlayerVehicles, et temps réel à l’achat, au don et au transfert. |
| QBCore (et Qbox sans qbx_vehicles) | table player_vehicles, par oxmysql |
Testé en jeu | Plaque, modèle, propriétés ; libellés de QBCore.Shared.Vehicles. À la connexion et à la resynchronisation. |
| ESX | table owned_vehicles, par oxmysql |
Testé en jeu | Plaque, propriétés. Libellé du modèle pris dans la table vehicles d’esx_vehicleshop ; sinon demandé au jeu d’un joueur connecté ; sinon « Modèle » suivi du code. |
| Tous | jg-advancedgarages, okokGarage, cd_garage | Compatible | Ces garages gardent les tables natives et n’en renomment aucune colonne lue. |
| Tous | Garage qui range les véhicules dans sa propre table | Non pris en charge | Rien n’est lu. |
| Tous | Ni qbx_vehicles ni oxmysql | Non pris en charge | Rien (avertissement dans Configuration › Jeu). |
La lecture par oxmysql est en lecture seule : une requête bornée par personnage,
jamais d’écriture. Tu peux la couper avec Config.Integrations.vehicles.sql = false.
Ton script est personnalisé ?
Section intitulée « Ton script est personnalisé ? »| Ton concessionnaire ou ton garage… | Résultat |
|---|---|
écrit dans player_vehicles (QBCore, Qbox) ou owned_vehicles (ESX), colonnes d’origine |
Lu à la connexion et à la resynchronisation. |
| est qb-vehicleshop ou esx_vehicleshop | Lu quelques secondes après l’achat. |
| passe par qbx_vehicles (Qbox, dont qbx_vehicleshop) | Lu en temps réel. |
| range les véhicules dans une autre table, ou renomme les colonnes du propriétaire, de la plaque ou du véhicule | Non lu. |
Réglages de la passerelle
Section intitulée « Réglages de la passerelle »Dans config.lua, Config.Integrations.vehicles :
| Réglage | Rôle | Défaut |
|---|---|---|
enabled |
L’intégration côté serveur de jeu (false : coupée, quoi que dise SuperMDT) | activé |
maxPerCharacter |
Véhicules lus par personnage (50 au plus) | 50 |
resyncMinutes |
Resynchronisation des personnages connectés (0 : jamais) | 30 |
sql |
Lecture des tables natives par oxmysql | activée |
readIntervalMs |
Un personnage lu au plus toutes les… | 2 000 ms |
Dépannage
Section intitulée « Dépannage »Un véhicule acheté n’apparaît qu’après un moment : ton script n’a pas de temps réel
(oxmysql, ou achat inséré directement en base) ; il arrive à la resynchronisation.
Tape supermdt resync dans la console du serveur, baisse resyncMinutes, ou reconnecte le personnage. supermdt status (ligne
« Véhicules ») dit ce qui est utilisé, s’il y a une resynchronisation, et compte les
lectures et les véhicules envoyés.
Pour la fiche du véhicule elle-même, voir Véhicules et armes.