Migrer ESX vers QBox : ce qui est transféré, ce qui casse et une liste de contrôle
Déplacer un serveur FiveM d'ESX vers QBox : rien ne se convertit automatiquement, donc planifiez wipe vs migrer, trouvez les scripts qui ont besoin de bridges, configurez la stack et suivez une chronologie.
Vous exécutez un serveur ESX et vous voulez QBox. Avant de commencer, vous devez savoir une chose : rien ne se transfère par lui-même. ESX et QBox utilisent différentes tables, différents identifiants de joueur, différents systèmes d'articles et différentes API. Ce guide vous dit ce que cela signifie, comment choisir entre un wipe et une migration, ce qui a besoin d'un bridge, et vous donne une chronologie.
Ce qui ne se transfère pas automatiquement
| Partie | Pourquoi elle ne se propage pas |
|---|---|
| Caractères | ESX les stocke dans users, QBox dans players avec un citizen id et des champs JSON |
| Argent | ESX a des comptes pour cash, banque et argent noir. QBox a ses propres types d'argent |
| Articles | Les noms d'articles, les métadonnées et la table d'inventaire ne sont pas les mêmes |
| Véhicules | ESX utilise owned_vehicles, QBox a sa propre table de véhicules et son format de données |
| Emplois et grades | Définis dans la base de données en ESX, dans les fichiers du framework en QBox |
| Scripts | Ils appellent les fonctions ESX que QBox n'a pas |
Vos joueurs gardent leur identifiant de licence, donc un personnage converti peut toujours être lié à la bonne personne. Le reste doit être mappé.
Wiper ou migrer
Wiper signifie un serveur QBox frais et de nouveaux personnages. C'est plus propre et beaucoup plus rapide. Cela convient à un serveur qui est toujours petit, un serveur dont les données sont en désordre, ou un serveur qui change toute sa direction. Dites à vos joueurs clairement et tôt.
Migrer signifie convertir les données. Cela maintient la progression des joueurs, mais vous avez besoin d'un script de conversion qui lit vos tables ESX et écrit les lignes QBox. Écrivez-le pour votre propre serveur, car chaque serveur ESX a différentes tables et colonnes supplémentaires. L'argent est facile à mapper. L'argent noir, les articles personnalisés et les propriétés des véhicules nécessitent des soins. Un compromis courant consiste à migrer l'argent et les véhicules et à rendre les articles à la main.
Quel que soit votre choix, testez la conversion sur une copie de la base de données, jamais celle en direct.
Planifiez la stack
QBox fonctionne sur une stack qui diffère d'un serveur ESX typique :
qbx_corecomme frameworkox_lib,oxmysql,ox_inventoryetox_target
Voir installer QBox pour les détails. Si votre serveur ESX utilise déjà ox_inventory, ox_lib et ox_target, une bonne partie de la stack est la même, mais ses données vivent toujours dans les tables du framework, donc elle ne se propage pas telle quelle.
Scripts : convertir, bridge ou remplacer
Passez en revue votre liste de resources et triez chaque script :
- Scripts indépendants du framework (cartes, véhicules, sons, outils autonomes) : ils fonctionnent généralement.
- Scripts qui détectent le framework (de nombreux scripts de magasin supportent ESX, QBCore et QBox) : ils fonctionnent, vérifiez leur config pour le paramètre de framework.
- Scripts ESX uniquement : ceux-ci ont besoin de l'une de trois choses :
- Convertissez-le vous-même. Le guide ESX vers QBCore, convertir un script ESX vers QBCore, puis convertir un script QBCore vers QBox montrent les changements.
- Utilisez un bridge qui fournit les fonctions ESX en haut de QBox, si vous acceptez les couches qu'il ajoute.
- Remplacez-le par un script natif QBox. Souvent le meilleur choix pour les emplois, le logement et les scripts basés sur l'inventaire.
- Scripts d'inventaire : ce sont les plus difficiles, car les définitions d'articles et l'inventaire changent avec le framework.
Notez la liste. C'est votre estimation de travail. Faites attention particulière aux scripts qui gèrent l'argent, les articles ou les véhicules, car ils touchent les données que vous convertissez.
Construisez d'abord un serveur de test
- Créez un deuxième serveur avec la recette QBox (recettes txAdmin). Ne travaillez jamais sur celui en direct.
- Copiez les cartes, les véhicules et les resources autonomes.
- Ajoutez les scripts convertis ou remplacés un à la fois et redémarrez après chacun, pour savoir lequel casse. Voir lire une erreur de script.
- Importez une copie de vos données ESX, exécutez le script de conversion, et vérifiez le résultat en rejoignant avec un compte de test.
- Testez les boucles principales : rejoindre, emplois, argent, magasins, véhicules, logement.
Chronologie liste de contrôle
Utilisez cet ordre, et laissez de l'espace pour chaque étape :
- Décidez wiper ou migrer, et dites à votre communauté le plan et la date.
- Listez tous vos scripts et marquez chacun comme fonctionne, convertissez, bridge ou remplacez.
- Sauvegardez les fichiers ESX et la base de données. Voir sauvegarder votre serveur.
- Construisez le serveur de test QBox.
- Convertissez ou remplacez les scripts, puis écrivez et testez la conversion de données si vous migrez.
- Testez avec de vrais joueurs si possible, dans une bêta ouverte.
- Corrigez ce qu'ils trouvent. Cela prend plus de temps que prévu.
- Basculez : annoncez le temps d'arrêt, prenez une dernière sauvegarde d'ESX, exécutez la conversion sur une copie fraîche des dernières données, et démarrez QBox.
- Conservez la sauvegarde ESX pendant un certain temps, au cas où vous devriez revenir en arrière.
Conseil : ne changez rien d'autre en même temps. Un changement de framework, une nouvelle carte et une nouvelle économie ensemble rendent impossible de dire ce qui a cassé.
Si vos joueurs ont beaucoup en jeu, exécutez l'ancien et le nouveau serveur en parallèle pendant un court moment. Si vos scripts proviennent d'un magasin, vérifiez quels frameworks chacun supporte avant d'acheter de nouveaux, pour choisir des scripts qui fonctionnent aussi sur QBox.
Liste de contrôle
| Symptôme | Correction |
|---|---|
| Caractères manquants après le basculement | Ils ne se convertissent pas automatiquement : écrivez une conversion ou recommencez à zéro |
| Erreurs de script ESX sur QBox | Convertissez-le, utilisez un bridge ou remplacez-le |
| Les articles disparaissent ou se dupliquent | Mappez les noms d'articles aux articles ox_inventory et testez la conversion sur une copie |
| Véhicules manquants | Convertissez owned_vehicles dans la table de véhicules QBox, y compris les propriétés |
| Argent noir disparu | QBox n'a pas de compte d'argent noir par défaut : utilisez un article ou un type personnalisé |
| Vous ne savez pas par où commencer | Construisez un serveur de test avec la recette et déplacez les scripts un à la fois |
Réponses rapides
Puis-je migrer un serveur ESX vers QBox automatiquement ?
Non. Les deux frameworks stockent les personnages, l'argent, les articles et les véhicules dans différentes tables et formats, vous devez donc une conversion script écrite pour vos données, ou un démarrage frais.
Mes scripts ESX fonctionnent-ils sur QBox ?
Pas tels qu'ils sont. Les scripts ESX appellent es_extended et les fonctions ESX, donc chacun a besoin d'une conversion, d'un bridge ou d'un remplacement écrit pour QBox.
Devrais-je wiper ou migrer ?
Wiper si vos données sont en désordre ou si les joueurs sont peu nombreux, puisque vous recommencez propre. Migrer si les joueurs ont une progression qui compte, et testez la conversion sur une copie avant de toucher au serveur en direct.
Des scripts sans ce problème
Mic PhoneUn téléphone pliable qui se déplie en tablette et se prolonge jusqu’au vrai téléphone du joueur.Voir le script →
Clothing DesignerCréez des vêtements dans FiveM — pinceau, calques, import d’images et IA — puis portez-les.Voir le script →
Shop CreatorCréez un magasin en moins d’une minute — propriétaires, employés, coffres et braquages inclus.Voir le script →