{"id":144517,"date":"2024-06-26T12:35:55","date_gmt":"2024-06-26T10:35:55","guid":{"rendered":"https:\/\/hifivem.com\/?p=144517"},"modified":"2026-08-12T15:40:35","modified_gmt":"2026-08-12T13:40:35","slug":"createur-ultime-demplois-fivem","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/fr\/ultimate-fivem-jobs-creator\/","title":{"rendered":"Guide du cr\u00e9ateur de m\u00e9tiers FiveM : configuration, d\u00e9pendances et tests"},"content":{"rendered":"<p><strong>Un cr\u00e9ateur de m\u00e9tiers FiveM permet au personnel autoris\u00e9 de d\u00e9finir des m\u00e9tiers sans \u00e9crire chaque interaction \u00e0 la main, mais l'installation d\u00e9pend toujours du framework exact, de l'inventaire, du ciblage, de la base de donn\u00e9es et des versions UI utilis\u00e9s par votre serveur.<\/strong> V\u00e9rifiez d\u2019abord ces exigences de compatibilit\u00e9, installez les d\u00e9pendances d\u00e9clar\u00e9es, limitez l\u2019acc\u00e8s au cr\u00e9ateur, cr\u00e9ez un petit m\u00e9tier de test et v\u00e9rifiez le parcours complet du joueur avant de configurer tout un service.<\/p>\n<h2 id=\"check-compatibility-before-installation\">V\u00e9rifiez la compatibilit\u00e9 avant l'installation<\/h2>\n<p>Commencez sur la <a href=\"https:\/\/rpcrate.com\/fr\/boutique\/createur-demplois-fivem\/\">page produit du cr\u00e9ateur de m\u00e9tiers FiveM<\/a> et comparez ses exigences actuelles avec votre serveur. Si vous \u00eates toujours en train de choisir une approche, la <a href=\"https:\/\/rpcrate.com\/fr\/product-category\/fivem-job-scripts\/\">collection de scripts de m\u00e9tiers FiveM<\/a> propose des alternatives aux serveurs qui ont besoin d\u2019un m\u00e9tier pr\u00eat \u00e0 l\u2019emploi plut\u00f4t que d\u2019un cr\u00e9ateur en jeu.<\/p>\n<ul>\n<li><strong>Framework :<\/strong> identifier la branche et la version exactes de ESX, QBCore, Qbox ou autonome en cours d'utilisation.<\/li>\n<li><strong>Base de donn\u00e9es:<\/strong> confirmer le pont de base de donn\u00e9es pris en charge et si une importation ou une migration de sch\u00e9ma est requise.<\/li>\n<li><strong>Inventaire et ciblage :<\/strong> v\u00e9rifier l'int\u00e9gration nomm\u00e9e, pas seulement un nom de produit similaire.<\/li>\n<li><strong>Biblioth\u00e8ques UI :<\/strong> installer uniquement les versions d\u00e9clar\u00e9es par le package.<\/li>\n<li><strong>Autorisations :<\/strong> d\u00e9terminez quel ACE, groupe de framework ou identifiant peut ouvrir le cr\u00e9ateur.<\/li>\n<\/ul>\n<p>\u00ab Prend en charge FiveM \u00bb n'est pas une d\u00e9claration de compatibilit\u00e9. Un cr\u00e9ateur peut d\u00e9marrer avec succ\u00e8s tandis que les grades de m\u00e9tier, les \u00e9l\u00e9ments d'inventaire ou les zones cibles \u00e9chouent parce qu'un adaptateur ne correspond pas au serveur.<\/p>\n<h2 id=\"install-the-resource-in-a-controlled-order\">Installer la ressource dans un ordre contr\u00f4l\u00e9<\/h2>\n<ol>\n<li>Sauvegarder la base de donn\u00e9es, <code data-no-translation=\"\" translate=\"no\">server.cfg<\/code> et la configuration actuelle des m\u00e9tiers.<\/li>\n<li>Extraire le package en dehors du r\u00e9pertoire des ressources actives et lire son manifeste et ses notes d'installation.<\/li>\n<li>Installer chaque d\u00e9pendance d\u00e9clar\u00e9e et la d\u00e9marrer dans l'ordre document\u00e9.<\/li>\n<li>Importer SQL uniquement lorsque la version correspondante du package le fournit.<\/li>\n<li>Placer le dossier de ressources contenant <code data-no-translation=\"\" translate=\"no\">fxmanifest.lua<\/code> sous <code data-no-translation=\"\" translate=\"no\">resources<\/code>.<\/li>\n<li>Ajoutez son nom de ressource exact \u00e0 <code data-no-translation=\"\" translate=\"no\">server.cfg<\/code>, puis d\u00e9marrez-le en staging.<\/li>\n<\/ol>\n<p>Ne renommez pas les dossiers de ressources \u00e0 moins que le fournisseur ne le prenne explicitement en charge. D'autres ressources peuvent r\u00e9f\u00e9rencer une exportation par le nom de ressource d'origine. De m\u00eame, ne copiez pas de SQL al\u00e9atoires d'un ancien tutoriel dans une base de donn\u00e9es actuelle.<\/p>\n<h2 id=\"lock-down-the-creator-before-using-it\">Verrouillez le cr\u00e9ateur avant de l'utiliser<\/h2>\n<p>Un cr\u00e9ateur de m\u00e9tiers modifie l'autorit\u00e9 du serveur, l'\u00e9conomie et l'acc\u00e8s. Son menu ne doit jamais \u00eatre disponible pour tous les clients connect\u00e9s. Configurez la m\u00e9thode de permission document\u00e9e, puis testez avec deux comptes : un autoris\u00e9 et un joueur ordinaire. Le compte non autoris\u00e9 doit \u00e9chouer c\u00f4t\u00e9 serveur, et non pas simplement avoir son bouton de menu masqu\u00e9.<\/p>\n<p>Gardez les secrets et les d\u00e9cisions de confiance dans les fichiers du serveur. Le code client peut \u00eatre inspect\u00e9 et les \u00e9v\u00e9nements client peuvent \u00eatre tent\u00e9s par un client modifi\u00e9. Chaque action qui cr\u00e9e des grades, paie de l'argent, accorde des objets ou modifie des donn\u00e9es de m\u00e9tier partag\u00e9es n\u00e9cessite une autorisation c\u00f4t\u00e9 serveur et une validation des entr\u00e9es dans la ressource elle-m\u00eame.<\/p>\n<h2 id=\"create-one-minimal-test-job\">Cr\u00e9ez un m\u00e9tier de test minimal<\/h2>\n<p>Utilisez un nom jetable tel que <code data-no-translation=\"\" translate=\"no\">qa_delivery<\/code> plut\u00f4t que de commencer par modifier un m\u00e9tier important de la police ou des services m\u00e9dicaux. Configurez uniquement les champs r\u00e9ellement propos\u00e9s par la ressource :<\/p>\n<div aria-label=\"Tableau \u00e0 d\u00e9filement horizontal\" class=\"fmx-guide-table\" role=\"region\" tabindex=\"0\">\n<table>\n<thead>\n<tr>\n<th>Zone<\/th>\n<th>Ce qu'il faut v\u00e9rifier<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Identit\u00e9 du m\u00e9tier<\/td>\n<td>Nom interne unique, libell\u00e9 visible par le joueur et enregistrement du m\u00e9tier dans le framework<\/td>\n<\/tr>\n<tr>\n<td>Grades<\/td>\n<td>Ordre, \u00e9tiquettes, valeurs de r\u00e9mun\u00e9ration et toute capacit\u00e9 de chef<\/td>\n<\/tr>\n<tr>\n<td>Prise de service<\/td>\n<td>Comment un joueur commence et termine le travail ; si l'\u00e9tat survit aux reconnexions<\/td>\n<\/tr>\n<tr>\n<td>Emplacements<\/td>\n<td>Coordonn\u00e9es, rayon d'interaction, comportement du marqueur\/de la cible et r\u00e8gles d'acc\u00e8s<\/td>\n<\/tr>\n<tr>\n<td>Objets<\/td>\n<td>Noms d'objets d'inventaire existants, quantit\u00e9s et comportement en cas d'\u00e9chec de capacit\u00e9<\/td>\n<\/tr>\n<tr>\n<td>V\u00e9hicules<\/td>\n<td>Noms de mod\u00e8les existants, d\u00e9gagement d'apparition, stockage et comportement de retour<\/td>\n<\/tr>\n<tr>\n<td>R\u00e9compenses<\/td>\n<td>Montant faisant autorit\u00e9 sur le serveur, temps de recharge et protection contre les abus r\u00e9p\u00e9t\u00e9s<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h2 id=\"test-the-complete-player-workflow\">Testez le flux de travail complet du joueur<\/h2>\n<ol>\n<li>Attribuez le m\u00e9tier de test en suivant la proc\u00e9dure d\u2019administration pr\u00e9vue.<\/li>\n<li>Reconnectez-vous et v\u00e9rifiez que le framework reconna\u00eet toujours le m\u00e9tier et le grade.<\/li>\n<li>Prenez votre service, commencez la premi\u00e8re t\u00e2che et terminez-la normalement.<\/li>\n<li>Essayez la m\u00eame interaction en \u00e9tant hors service ou avec un m\u00e9tier qui ne dispose pas de l\u2019acc\u00e8s requis.<\/li>\n<li>Remplissez l'inventaire, bloquez l'apparition du v\u00e9hicule et interrompez la t\u00e2che \u00e0 mi-chemin.<\/li>\n<li>Red\u00e9marrez la ressource Job Creator et r\u00e9p\u00e9tez les actions critiques.<\/li>\n<li>V\u00e9rifiez les journaux du serveur et de F8 pour les erreurs, pas seulement les notifications visibles.<\/li>\n<\/ol>\n<p>Les cas d'\u00e9chec sont importants. Une r\u00e9compense ne doit pas \u00eatre accord\u00e9e deux fois apr\u00e8s une reconnexion, un inventaire plein ne doit pas d\u00e9truire un objet silencieusement, et un spawn bloqu\u00e9 ne doit pas laisser un \u00e9tat de m\u00e9tier irr\u00e9cup\u00e9rable. Le comportement exact d\u00e9pend de la ressource install\u00e9e ; enregistrez ce que fait votre version.<\/p>\n<h2 id=\"common-setup-problems\">Probl\u00e8mes de configuration courants<\/h2>\n<div aria-label=\"Tableau \u00e0 d\u00e9filement horizontal\" class=\"fmx-guide-table\" role=\"region\" tabindex=\"0\">\n<table>\n<thead>\n<tr>\n<th>Probl\u00e8me<\/th>\n<th>Contrat probable \u00e0 inspecter<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Le menu ne s'ouvre pas<\/td>\n<td>M\u00e9thode de permission, raccourci clavier, nom de commande, d\u00e9pendance UI et erreurs client<\/td>\n<\/tr>\n<tr>\n<td>Le m\u00e9tier existe, mais les joueurs ne peuvent pas l\u2019utiliser<\/td>\n<td>Enregistrements des m\u00e9tiers et grades du framework, \u00e9tat de service et donn\u00e9es des joueurs mises en cache<\/td>\n<\/tr>\n<tr>\n<td>Les objets sont manquants<\/td>\n<td>Noms exacts des objets d'inventaire et adaptateur d'inventaire pris en charge<\/td>\n<\/tr>\n<tr>\n<td>Les zones cibles ne font rien<\/td>\n<td>Version de la ressource de ciblage, configuration de la zone et ordre de d\u00e9marrage de la ressource<\/td>\n<\/tr>\n<tr>\n<td>Les r\u00e9compenses sont dupliqu\u00e9es<\/td>\n<td>Validation des \u00e9v\u00e9nements du serveur, persistance du temps de recharge\/\u00e9tat et comportement de reconnexion<\/td>\n<\/tr>\n<tr>\n<td>Les modifications disparaissent apr\u00e8s le red\u00e9marrage<\/td>\n<td>Connexion \u00e0 la base de donn\u00e9es, autorisations d'\u00e9criture et m\u00e9canisme de sauvegarde de la ressource<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h2 id=\"updating-without-losing-jobs\">Mettre \u00e0 jour sans perdre les m\u00e9tiers<\/h2>\n<p>Exportez ou sauvegardez les donn\u00e9es du cr\u00e9ateur avant de remplacer les fichiers. Comparez les cl\u00e9s de configuration au lieu d'\u00e9craser la configuration actuelle. Si la version inclut une migration, ex\u00e9cutez-la sur une base de donn\u00e9es de staging restaur\u00e9e et confirmez les jobs, grades et emplacements existants avant la production. Conservez le dossier de ressources pr\u00e9c\u00e9dent et le dump de la base de donn\u00e9es jusqu'\u00e0 ce que la nouvelle version survive \u00e0 un red\u00e9marrage et \u00e0 un test de flux de joueurs.<\/p>\n<p>Un Job Creator r\u00e9duit la configuration r\u00e9p\u00e9titive uniquement apr\u00e8s que ses int\u00e9grations sont stables. Le support du framework, les permissions et les v\u00e9rifications de r\u00e9compense faisant autorit\u00e9 sur le serveur restent la base ; l'\u00e9diteur en jeu ne peut pas compenser une d\u00e9pendance non concordante.<\/p>","protected":false},"excerpt":{"rendered":"<p>Un cr\u00e9ateur de m\u00e9tiers FiveM permet au personnel autoris\u00e9 de d\u00e9finir des m\u00e9tiers sans programmer chaque interaction \u00e0 la main. Son installation d\u00e9pend toutefois des versions exactes du framework, de l\u2019inventaire, du syst\u00e8me de ciblage, de la base de donn\u00e9es et de l\u2019interface utilis\u00e9es par votre serveur. V\u00e9rifiez d\u2019abord ces exigences de compatibilit\u00e9, installez les d\u00e9pendances d\u00e9clar\u00e9es, limitez l\u2019acc\u00e8s au cr\u00e9ateur, cr\u00e9ez un petit m\u00e9tier de test et v\u00e9rifiez le parcours complet du joueur avant de configurer tout un service.<\/p>","protected":false},"author":1,"featured_media":149937,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2877,1899],"tags":[2866],"class_list":["post-144517","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-free-fivem-job-scripts","category-tutorials","tag-job"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/144517","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/comments?post=144517"}],"version-history":[{"count":5,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/144517\/revisions"}],"predecessor-version":[{"id":209738,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/144517\/revisions\/209738"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media\/149937"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media?parent=144517"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/categories?post=144517"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/tags?post=144517"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}