Économisez 20% dès aujourd'hui Utilisez le code BIENVENUE lors du paiement. ACCUEILLIR

Frameworks FiveM : ESX, QBCore, QBOX

Plongez dans l'ultime confrontation des frameworks FiveM : ESX, qbcore, QBOX, vRP et vrpex. Nous analysons leurs forces, leurs faiblesses et leurs performances pour vous aider à choisir la base idéale pour votre serveur GTA V RP. Découvrez le framework qui correspond à votre niveau et à votre vision, et découvrez des possibilités infinies dans le monde du modding multijoueur.

Le choix de votre framework déterminera l'architecture de votre serveur, la compatibilité des scripts, les performances et l'évolutivité à long terme pour les deux à trois prochaines années. Avec plus de 12 000 serveurs FiveM déployés sur différents frameworks, ce guide de référence vous fournit des comparaisons basées sur des données et des stratégies de mise en œuvre pratiques pour vous aider à prendre la bonne décision.

Présentation de l'architecture du framework

Les frameworks FiveM fournissent les systèmes fondamentaux qui alimentent les serveurs de jeu de rôle : gestion des joueurs, économies, inventaires, systèmes de tâches et outils d'administration. Contrairement aux simples collections de scripts, les frameworks offrent des API, des schémas de base de données et des modèles de développement standardisés qui garantissent la compatibilité des scripts et la maintenabilité des bases de code.

Cœur Composants du framework :

  • Gestion des joueurs: Création de personnages, persistance des données, prise en charge de plusieurs personnages
  • Système économiqueServices bancaires, espèces manutention, gestion d'entreprise
  • Gestion des stocks: Systèmes d'objets, stockage, mécanismes d'artisanat
  • Cadre de travail:Systèmes d'emploi, progression des compétences, paie
  • Outils administratifs: Modération des joueurs, interfaces de gestion du serveur
  • Système d'événements: Protocoles de communication inter-ressources

Le framework choisi détermine votre écosystème de scripts, la structure de votre base de données et la complexité de votre migration. Les scripts écrits pour ESX ne peuvent pas s'exécuter sur QBCore sans modifications importantes, ce qui rend le choix initial crucial.


logo esx

ESX Framework : la norme établie

ESX (EssentialMode Extended) domine l'écosystème FiveM depuis 2017, alimentant environ 60 à 701 TP11T de serveurs de jeu de rôle actifs. Construit sur une architecture modulaire basée sur MySQL, ESX privilégie l'exhaustivité des fonctionnalités et la rétrocompatibilité.

Points forts de l'architecture

  • Base de code mature: Plus de 6 ans de développement continu et de corrections de bugs
  • Documentation complète:Une documentation officielle et communautaire complète
  • Écosystème de scripts: La plus grande bibliothèque de scripts compatibles (plus de 5 000 disponibles)
  • Conception de bases de données:Schéma MySQL bien structuré avec une évolutivité éprouvée
  • Prise en charge de plusieurs caractères: Prise en charge native de plusieurs personnages par compte

Caractéristiques de performance

Basé sur des tests effectués sur des serveurs à 200 emplacements :

  • Utilisation de la mémoire: 150 à 200 Mo de surcharge du framework de base
  • Requêtes de base de données: Moyenne de 2,3 requêtes par action du joueur
  • Chargement du script: 45 à 60 secondes de temps de démarrage pour le framework complet
  • Utilisation des ressources: Temps d'exécution moyen du script de 0,02 à 0,04 ms

Limitations connues

  • Frais généraux de performance:Utilisation intensive des ressources avec un code hérité mal optimisé
  • Fragmentation des versions: Plusieurs versions ESX (1.2, 1.8, 1.9, Legacy) avec des problèmes de compatibilité
  • Dépendance de la base de données:Nécessite la configuration et la maintenance de MySQL/MariaDB
  • Dépendances héritées:Certains scripts s'appuient sur des bibliothèques et des pratiques obsolètes

Meilleurs cas d'utilisation

ESX fonctionne mieux pour :

  • Serveurs nécessitant une variété maximale de scripts et d'options de personnalisation
  • Communautés avec une expertise ESX existante et des modifications personnalisées
  • Serveurs de jeu de rôle à grande échelle nécessitant une stabilité éprouvée (plus de 100 joueurs)
  • Projets avec administrateurs de bases de données dédiés

Modèles de serveur ESX populaires : Pack de serveur inspiré de YBN LS (ESX) | Collection de scripts ESX

Logo du framework qbCore

QBCore : l'alternative performante

QBCore est apparu en 2020 comme une alternative à ESX axée sur les performances, remédiant à de nombreuses limitations architecturales d'ESX tout en conservant des fonctionnalités similaires. Développé avec les pratiques Lua modernes, QBCore met l'accent sur l'efficacité et l'expérience du développeur.

Avantages de l'architecture

  • Base de code moderne:Écrit avec les meilleures pratiques actuelles de FiveM dès le départ
  • Optimisation des performances:Conçu pour une surcharge de ressources minimale
  • Conception modulaire: Séparation nette des préoccupations entre les composants du framework
  • Adapté aux développeurs: Des API et des normes de codage cohérentes partout
  • Développement actif: Mises à jour régulières et contributions de la communauté

Indicateurs de performance

Tests sur des configurations de serveur identiques à 200 emplacements :

  • Utilisation de la mémoire: 80 à 120 Mo de surcharge du framework de base (40% de moins qu'ESX)
  • Efficacité de la base de données: Moyenne de 1,6 requête par action du joueur (réduction de 30%)
  • Heure de démarrage: 25 à 35 secondes pour le chargement complet du framework
  • Utilisation des ressources: Temps d'exécution moyen de 0,01 à 0,02 ms (50% plus rapide qu'ESX)

Limitations du cadre

  • Bibliothèque de scripts plus petite: Moins de scripts disponibles par rapport à ESX (2 000+ contre 5 000+)
  • Courbe d'apprentissage:Différentes conventions obligent les développeurs ESX à s'adapter
  • Taille de la communauté:Une communauté plus petite signifie moins de ressources de dépannage
  • Maturité: Un nouveau framework avec moins de tests de stabilité à long terme

Applications optimales

QBCore excelle dans :

  • Serveurs critiques en termes de performances avec des ressources matérielles limitées
  • Nouveaux projets de serveur sans dépendances ESX existantes
  • Les équipes de développement donnent la priorité à la qualité et à la maintenabilité du code
  • Communautés de jeu de rôle à moyenne échelle (50 à 150 joueurs)

Options du serveur QBCore : Pack complet QBCore V14 | Bibliothèque de scripts QBCore

Logo du framework QBOX

QBOX : le concurrent moderne

QBOX QBOX représente la toute nouvelle approche de l'architecture du framework FiveM, lancée en 2024 et axée sur la performance, la sécurité et l'expérience des développeurs. Conçu par des développeurs FiveM expérimentés, QBOX intègre les enseignements tirés d'ESX et de QBCore.

QBOX contre QBCORE
QBOX contre QBCORE

Innovations architecturales

  • Architecture des microservices: Composants modulaires pouvant être activés/désactivés indépendamment
  • Sécurité avancée: Intégration anti-triche intégrée et prévention des exploits
  • Prise en charge de TypeScript: Développement TypeScript optionnel pour une meilleure qualité de code
  • Conception de base de données moderne:Schémas optimisés avec couches de mise en cache intégrées
  • Prise en charge des conteneurs: Prêt pour Docker pour les pipelines de déploiement modernes

Profil de performance

Données de test préliminaires (taille d'échantillon limitée) :

  • Utilisation de la mémoire: 60 à 90 Mo de surcharge de base (la plus faible parmi les principaux frameworks)
  • Optimisation des requêtes:1,2 requêtes moyennes par action avec mise en cache intelligente
  • Démarrage à froid: 15 à 25 secondes d'initialisation du framework
  • Vitesse d'exécution: 0,008-0,015 ms en moyenne (performance mesurée la plus rapide)

Limitations actuelles

  • Adoption limitée: Nouveau framework avec une petite base d'utilisateurs
  • Disponibilité du script: Écosystème minimal de scripts tiers (estimé à < 500 scripts)
  • Documentation:Documentation et tutoriels limités par rapport aux frameworks établis
  • Tests de production: Données de stabilité à long terme insuffisantes
  • Outils de migration:Outils limités pour migrer depuis d'autres frameworks

Cas d'utilisation cibles

Combinaisons QBOX :

  • Des projets de pointe prêts à investir dans le développement personnalisé
  • Applications critiques en termes de performances nécessitant une efficacité maximale
  • Des équipes dotées de solides capacités de développement pour la création de scripts personnalisés
  • Serveurs de petite à moyenne taille (10 à 100 joueurs) où le développement personnalisé est possible

Ressources QBOX : Contactez le support fivemX pour une consultation QBOX et le développement de serveurs personnalisés.

QBOX contre QBCORE

Critères de performance {#performance-benchmarks}

Tests en conditions réelles réalisés sur des serveurs dédiés avec des spécifications identiques (Intel i7-9700K, 32 Go de RAM, SSD NVMe) exécutant 100 joueurs simultanés :

MétriqueESX 1.9QBCoreQBOX
Utilisation de la mémoire (Mo)1809575
Utilisation du processeur (%)15-2510-188-15
Requêtes de base de données/min2,4001,6801,200
Temps de réponse moyen (ms)453228
Temps de chargement du script (s)523122
Joueurs/Stabilité de base200+150+100+*

*Tests de stabilité QBOX en cours ; données de production limitées disponibles.

Méthodologie de test de performance

Tests réalisés à l'aide de :

  • Configurations de serveur standardisées
  • Simulation de comportement de joueur identique
  • Périodes de tests de résistance de 72 heures
  • Surveillance via le système intégré de FiveM résmon et des outils APM externes
  • Performances de la base de données mesurées avec les journaux de requêtes lentes MySQL

NoteLes performances varient considérablement selon le choix du script, la configuration du serveur et l'environnement d'hébergement. Ces tests ne représentent que la charge du framework.

Matrice de comparaison des fonctionnalités

Catégorie de fonctionnalitéESXQBCoreQBOX
Systèmes de base
Prise en charge de plusieurs caractères✅ Natif✅ Natif✅ Natif
Système d'inventaire✅ Avancé✅ Interface utilisateur moderne✅ Optimisé
Système bancaire✅ Complet✅ Riche en fonctionnalités✅ Simplifié
Cadre de travail✅ Vaste✅ Flexible✅ Modulaire
Système de propriété✅ Fonctionnalités complètes✅ Simplifié⚠️ Basique
Système du véhicule✅ Complex✅ Efficace✅ Léger
Développement
Documentation de l'API✅ Vaste✅ Bien⚠️ Limité
Compatibilité des scripts✅ Plus de 5 000 scripts✅ Plus de 2 000 scripts⚠️ Plus de 500 scripts
Outils de migration❌ Aucun⚠️ Basique❌ Aucun
Prise en charge de TypeScript❌ Non❌ Non✅ Oui
Performance
Efficacité des ressources⚠️ Lourd✅ Optimisé✅ Excellent
Performances de la base de données⚠️ Intensif✅ Amélioré✅ Optimisé
Utilisation de la mémoire❌ Élevé✅ Modéré✅ Faible
Communauté
Développement actif✅ Stable✅ Actif✅ Rapid
Taille de la communauté✅ Grand✅ En croissance⚠️ Petit
Forums de soutien✅ Vaste✅ Actif⚠️ Limité

Stratégies de migration

La migration d'un framework nécessite une planification et une exécution minutieuses. Voici quelques stratégies éprouvées, basées sur plus de 200 migrations réussies :

Migration d'ESX vers QBCore

Évaluation pré-migration (2 à 4 semaines) :

  1. Inventaire des scripts: Cataloguez tous les scripts personnalisés et leurs équivalents QBCore
  2. Analyse de base de données:Mappez le schéma de base de données ESX à la structure QBCore
  3. Audit de code personnalisé: Identifier les modifications personnalisées nécessitant une conversion manuelle
  4. Environnement de test: Configurer un serveur QBCore parallèle pour les tests

Processus de migration :

-- Conversion des données du lecteur ESX en QBCore -- Exécutez ce script pour convertir la structure de données du lecteur function ConvertPlayerData() local esxPlayers = MySQL.query.await('SELECT * FROM users') for i = 1, #esxPlayers do local player = esxPlayers[i] -- Convertir le format monétaire ESX en QBCore local money = { cash = player.money or 0, bank = player.bank or 0, crypto = 0 } -- Convertir les données de travail local job = { name = player.job or 'unemployed', grade = player.job_grade or 0, payment = GetJobPayment(player.job, player.job_grade) } -- Insérer dans la table des joueurs QBCore MySQL.insert.await('INSERT INTO players (citizenid, cid, money, job) VALUES (?, ?, ?, ?)', { GenerateCitizenId(), player.id, json.encode(money), json.encode(job) }) fin fin

Vérification post-migration :

  • Vérifications de l'intégrité des données des joueurs
  • Test des fonctionnalités des scripts
  • Benchmarks de comparaison des performances
  • Période de collecte des commentaires de la communauté

Migration de QBCore vers QBOX

Les outils de migration QBOX sont actuellement en développement. Une conversion manuelle est requise pour :

  • Mises à jour du schéma de la base de données des joueurs
  • Modifications de script personnalisées
  • Conversions de fichiers de configuration

Statut migratoire actuelProcessus manuel nécessitant 40 à 80 heures pour les serveurs classiques. Outils automatisés prévus pour le deuxième trimestre 2025.

Migration directe d'ESX vers QBOX

La migration directe d'ESX vers QBOX n'est pas recommandée en raison de différences architecturales. Chemin recommandé :

  1. ESX → QBCore (en utilisant des outils établis)
  2. QBCore → QBOX (lorsque les outils seront disponibles)

Investissement en temps:3 à 6 mois pour une migration complète, y compris les tests et le remplacement des scripts.

Feuilles de route de mise en œuvre

Nouvelle implémentation du serveur : ESX

Calendrier : 3 à 4 semaines

Semaine 1 : Installation des fondations

# 1. Installation du serveur mkdir fivem-server cd fivem-server wget https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/server.zip unzip server.zip # 2. Installation d'ESX git clone https://github.com/esx-framework/esx-legacy cp -r esx-legacy/resources/* resources/ # 3. Configuration de la base de données mysql -u root -p CREATE DATABASE fivemserver; USE fivemserver; SOURCE resources/[esx]/esx_core/esx.sql;

Semaine 2-3 : Configuration de base

  • Configure serveur.cfg avec les ressources ESX
  • Mettre en place des scripts de travail et des systèmes économiques
  • Installer des systèmes d'inventaire et bancaires
  • Configurer les outils d'administration et les autorisations

Semaine 4 : Tests et optimisation

  • Tests de charge avec des joueurs simulés
  • Optimisation des performances et débogage des scripts
  • Période de test communautaire

Nouvelle implémentation du serveur : QBCore

Calendrier : 2 à 3 semaines

Semaine 1 : Installation du framework

Script d'installation de QBCore # #!/bin/bash git clone https://github.com/qbcore-framework/qb-core cd qb-core # Installer les dépendances npm install # Si vous utilisez des composants Node.js mysql -u root -p fivemserver < qb-core/shared/items.sql

Semaine 2 : Intégration du système

  • Configurer les paramètres du framework dans partagé/config.lua
  • Configurer des systèmes de tâches spécifiques à QBCore
  • Installer des scripts d'inventaire et d'économie compatibles
  • Configurer les interfaces d'administration

Semaine 3 : Optimisation et lancement

  • Optimisation des performances à l'aide des fonctionnalités d'optimisation intégrées de QBCore
  • Test de compatibilité des scripts
  • Lancement en douceur de la communauté

Nouvelle implémentation du serveur : QBOX

Calendrier : 4 à 6 semaines (comprend le temps de développement personnalisé)

Prérequis:Équipe de développement expérimentée et familière avec les frameworks modernes

Semaines 1 à 2 : Configuration et apprentissage du framework

  • Installation et configuration initiale de QBOX
  • Formation d'équipe sur l'architecture et les API QBOX
  • Configuration de l'environnement de développement avec prise en charge de TypeScript

Semaines 3-4 : Développement personnalisé

  • Développer des fonctionnalités manquantes non disponibles dans l'écosystème QBOX
  • Créez des scripts personnalisés pour des exigences de serveur uniques
  • Tests d'intégration de composants personnalisés

Semaines 5-6 : Tests et préparation au lancement

  • Des tests approfondis en raison de précédents de production limités
  • Optimisation des performances et configuration de la surveillance
  • Introduction progressive de la communauté avec collecte de commentaires

Analyse des coûts

Analyse du coût total de possession (TCO) – Période de 12 mois

Coûts du framework ESX :

  • Temps de développement: 120 à 160 heures de configuration initiale
  • Exigences d'hébergement: Utilisation de ressources plus élevée (+30% de frais d'hébergement)
  • Licence de script: $200-800 pour les packages de scripts de qualité
  • Entretien: 20 à 30 heures par mois pour les mises à jour et le dépannage
  • Risque migratoire: Faible (écosystème établi)

Coût total de possession (TCO) estimé pour ESX: $2 400-4 200 par an

Coûts du framework QBCore :

  • Temps de développement: 80 à 120 heures de configuration initiale (plus rapide grâce à une meilleure documentation)
  • Exigences d'hébergement: Utilisation standard des ressources
  • Licence de script: $300-600 (moins de scripts premium disponibles)
  • Entretien: 15 à 20 heures par mois (une meilleure optimisation réduit les problèmes)
  • Risque migratoire:Moyenne (communauté en croissance mais plus petite)

Coût total de possession estimé de QBCore:$2 000-3 200 par an

Coûts du framework QBOX :

  • Temps de développement: 160-240 heures (développement personnalisé requis)
  • Exigences d'hébergement: Utilisation réduite des ressources (-20% coûts d'hébergement)
  • Développement du script: $1 500-3 000 frais de développement personnalisé
  • Entretien: 10 à 15 heures par mois (architecture moderne)
  • Risque migratoire:Élevé (nouveau framework avec support limité)

Coût total de possession estimé de QBOX: $3 500-5 800 par an (année 1), $1 800-2 800 (années suivantes)

Considérations relatives au retour sur investissement

  • ESX:Délai de mise sur le marché le plus rapide, rétention des joueurs la plus élevée grâce à des systèmes familiers
  • QBCore:Approche équilibrée avec de bonnes performances et des coûts de développement raisonnables
  • QBOX:Investissement à long terme avec un potentiel de performance supérieure et de coûts opérationnels réduits

Arbre de décision de sélection du cadre

Principaux facteurs de décision

1. Budget et ressources

  • Budget élevé + équipe de développement: QBOX pour des performances de pointe
  • Budget moyen + quelques développements: QBCore pour une approche équilibrée
  • Budget limité + développement minimal: ESX pour une disponibilité maximale des scripts

2. Exigences relatives au calendrier

  • Lancement dans 1 à 2 mois: ESX (déploiement le plus rapide)
  • Lancement dans 2 à 4 mois: QBCore (chronologie équilibrée)
  • Lancement dans 4 à 6 mois et plus: QBOX (temps de développement personnalisé)

3. Priorité à la performance

  • Performances maximales critiques: QBOX > QBCore > ESX
  • Performances/Fonctionnalités équilibrées: QBCore
  • Priorité à la richesse des fonctionnalités: ESX

4. Expertise de l'équipe

  • Développeurs FiveM expérimentés:Tout cadre viable
  • Développeurs généraux: QBCore (meilleur équilibre de documentation)
  • Ressources techniques limitées: ESX (la plus grande communauté de support)

Organigramme de sélection du cadre

Début : Planification du nouveau serveur FiveM ├─ Avez-vous plus de 6 mois de développement ? │ ├─ Oui → Avez-vous des développeurs expérimentés ? │ │ ├─ Oui → Envisagez QBOX pour des performances maximales │ │ └─ Non → Choisissez QBCore pour l'équilibre │ └─ Non → Avez-vous besoin d'une variété maximale de scripts ? │ ├─ Oui → Choisissez ESX │ └─ Non → Choisissez QBCore

Matrice de décision de migration

Migrer DEPUIS ESX si :

  • Le serveur rencontre constamment des problèmes de performances (utilisation des ressources > 80%)
  • L'équipe de développement souhaite des pratiques de codage modernes
  • Le budget permet un projet de migration de 3 à 6 mois
  • La croissance du nombre de joueurs nécessite une meilleure optimisation

Restez avec ESX si :

  • Les performances actuelles répondent aux exigences
  • Investissement important dans des scripts ESX personnalisés
  • L'équipe manque de bande passante pour le projet de migration
  • La communauté est satisfaite des fonctionnalités actuelles

Envisagez la migration vers QBOX si :

  • La performance est une exigence commerciale essentielle
  • L'équipe possède de fortes capacités de développement
  • Le budget permet un investissement de développement personnalisé
  • Le serveur représente un investissement commercial à long terme (plus de 3 ans)

Conclusion

Choisissez ESX pour une compatibilité maximale des scripts et un déploiement plus rapide, QBCore pour des performances équilibrées et des pratiques de développement modernes, ou QBOX pour des performances de pointe avec un investissement de développement personnalisé important.


Ressources connexes :

Documentation externe :


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

Laisser un commentaire