Agency-Vehiclekeys : comment une petite contrainte rend les voitures réalistes
Agency-Vehiclekeys remplace l’accès immédiat aux véhicules par une gestion réaliste des clés. Cette petite contrainte améliore le jeu.
Agency Scripts
Fondateur et développeur principal chez Agency Scripts
La fonctionnalité qui n’en est pas une
Exiger une clé pour démarrer un véhicule peut sembler être une fonctionnalité à contre-courant. Qui voudrait ajouter des étapes avant de conduire ? Pourtant, le RP immersif repose souvent précisément sur ce type de friction qui a du sens. Le vol de véhicule devient un vrai délit risqué. Verrouiller sa voiture devient une véritable action. Le démarrage à chaud devient une compétence qu’on peut apprendre.
Des états de clé qui ont de l’importance
Agency-Vehiclekeys gère trois états de clé par véhicule : possédée (tu as une clé physique dans ton inventaire), partagée (quelqu’un t’en a donné une copie), démarrée à chaud (accessible temporairement, avec un risque de détection par la police). Chaque état a ses propres indices sonores, animations de démarrage et comportements du moteur. Les joueurs qui empruntent la voiture de leurs amis ne se sentent pas comme des voleurs, et c’est normal.
Mini-jeu de crochetage
Nous proposons un mini-jeu de crochetage simple à 3 niveaux, qui s’adapte à la classe du véhicule. Un Sultan RS prend plus de temps et échoue plus souvent qu’un Faggio. Le mini-jeu repose sur l’habileté, sans être punitif : un échec coûte du temps et des outils, pas de progression de personnage. C’est la bonne courbe de difficulté pour une mécanique qui doit créer de la tension, pas servir de barrières.
Intégrations aux frameworks
La propriété des véhicules dans QBCore, les garages ESX et les registres personnalisés standalone sont tous compatibles grâce à un seul ensemble de hooks. Les clés sont stockées sous forme d’objets d’inventaire, elles interagissent donc naturellement avec les objets au sol, les échanges et les fouilles d’inventaire. Aucun traitement spécial n’est nécessaire.
Impact économique
L’accès aux véhicules par clé crée des rôles économiques réalistes. Le métier de serrurier devient viable. Les voleurs de voitures représentent une vraie menace. Les assurances deviennent utiles. Le jeu de rôle émergent naît de systèmes qui interagissent entre eux, Agency-Vehiclekeys est une pièce de ce puzzle.
Installation & configuration
Agency-Vehiclekeys nécessite oxmysql pour conserver la propriété des clés entre les redémarrages du serveur. Importe vehiclekeys.sql , dépose le dossier de la ressource sur ton serveur, puis ajoute ensure agency-vehiclekeys à server.cfg. La ressource lit les données de propriété des véhicules dans le garage ou le registre de véhicules de ton framework. Les adaptateurs QBCore et ESX sont inclus dans le package et détectés automatiquement au démarrage.
Les objets clés doivent être enregistrés dans le système d’objets de ton framework. La configuration inclut les noms des objets et les définitions de métadonnées pour QBCore et ESX. Les configurations standalone définissent la gestion des objets via des hooks de configuration.
Options de configuration
Le config.lua permet de contrôler précisément chaque mécanique liée aux clés :
- Niveaux de crochetage, définis la probabilité de réussite et le comportement en cas d’échec pour chaque classe de véhicule. Les supercars sont plus difficiles à démarrer à chaud que les véhicules économiques.
- Probabilité de détection du démarrage à chaud, probabilité qu’un démarrage à chaud réussi déclenche une alerte à la police par minute d’utilisation active.
- Coût de duplication des clés, coût en objets et en argent pour créer un double au comptoir du serrurier.
- Exigence d’appartenir au métier de serrurier, limite éventuellement la reproduction des clés aux joueurs qui exercent le métier de serrurier.
- Verrouillage automatique à la sortie, si les véhicules se verrouillent automatiquement lorsque le conducteur en sort. Par défaut : désactivé (plus réaliste).
- Expiration des clés partagées, les clés temporaires peuvent avoir une durée limite réelle avant d'être automatiquement désactivées.
Compatibilité avec les frameworks
Des adaptateurs complets pour QBCore et ESX sont inclus dans le package. Pour les configurations standalone, implémente quatre fonctions de configuration : recherche du propriétaire du véhicule, ajout/retrait d'objets, déclenchement d'une alerte à la police et vérification facultative du métier de serrurier. La machine à états des clés, les animations, le mini-jeu et la logique de démarrage à chaud ne nécessitent aucune connaissance d'un framework.
Pourquoi c’est important pour le roleplay
La propriété d'un véhicule sans contrôle d'accès significatif n'est que cosmétique. Agency-Vehiclekeys rend tangible la différence entre posséder un véhicule et pouvoir y accéder. Une voiture verrouillée garée devant une banque n'est pas qu'un élément du décor : elle peut être une cible ou un bien sûr, selon qui la regarde.
L'économie des serruriers est le principal avantage qui émerge naturellement. Dès lors que les clés sont des objets physiques qu'on peut dupliquer, perdre ou voler, les personnages serruriers ont un véritable service à proposer. Les joueurs qui perdent leur clé doivent soit forcer le démarrage (risqué), soit trouver un serrurier (ce qui demande de la confiance et de la négociation). Cette interaction est du pur RP, qui n'existait pas avant l'installation du script.
La trace de détection du démarrage à chaud transforme le vol de véhicule en un risque calculé, plutôt qu'en une action triviale. Les joueurs qui forcent le démarrage et roulent pendant une heure prennent un risque réel. Les voleurs expérimentés apprennent à changer souvent de véhicule. La police apprend à surveiller les alertes de démarrage forcé. Le script génère du RP criminel et policier organique, sans aucun événement scénarisé.
Questions fréquentes
Les joueurs peuvent-ils donner leur clé à un autre joueur ?
Oui. Les clés sont des objets d'inventaire qu'on peut échanger, déposer au sol ou donner via n'importe quel système de transfert d'inventaire standard. Cela inclut l'envoi d'une clé via la marketplace d'Agency-Phone ou le fait de la déposer à un endroit pour que quelqu'un la récupère, toute l'économie des objets s'applique.
Que se passe-t-il si un objet-clé est perdu ou supprimé ?
Le registre des clés côté serveur suit la propriété indépendamment de l'objet. Un joueur qui perd son objet-clé physique peut en obtenir un remplacement dans une boutique de serrurier (ce qui prend du temps et coûte de l'argent) ou via des commandes d'administration. Le véhicule ne devient pas définitivement inaccessible.
Le mini-jeu peut-il être désactivé pour certains rôles de joueur ?
Oui. Le mini-jeu de crochetage peut être ignoré pour les joueurs ayant certains métiers (serrurier expert, par exemple) ou certains objets (kit de crochetage professionnel plutôt que basique). Configure les conditions permettant de l'ignorer dans Config.LockpickItems.
Est-ce compatible avec les scripts de garage existants ?
Agency-Vehiclekeys lit les données de propriété des garages, mais ne modifie pas le système de garage. Les véhicules continuent d'apparaître via ton script de garage existant. Le système de clés vient s'y ajouter : quand tu fais apparaître un véhicule depuis le garage, un objet-clé est automatiquement généré dans ton inventaire.
Prérequis
- Serveur FiveM (QBCore, ESX ou standalone)
- oxmysql
- compte cfx.re avec une licence Agency-Vehiclekeys valide
- système compatible de garage ou de propriété des véhicules
Jouer un serrurier sur un serveur avec des clés
Agency-Vehiclekeys permet d'exercer le véritable métier de serrurier, qui n'existe pas sur les serveurs sans système de clés. Voici à quoi ressemble concrètement le gameplay de ce personnage :
Un serrurier qui propose des services de reproduction de clés a besoin d'un moyen pour que ses clients le contactent, Agency-Phone s'en charge. Il lui faut un objet d'atelier pour l'animation de découpe de clé. Coordonne-toi avec l'équipe MLO de ton serveur ou utilise un objet d'atelier vanilla. Il facture ce service, et l'argent est intégré à l'économie de ton framework. Il peut aussi transporter des outils de crochetage de niveau supérieur, capables d'ouvrir des véhicules que les outils des autres joueurs ne peuvent pas ouvrir, ce qui exige la confiance de clients criminels qui ont besoin d'accéder à un véhicule précis.
La dimension de confiance est particulièrement intéressante. Un serrurier qui fait des copies non autorisées de clés, dénonce à la police les clients qui lui demandent des copies, ou endommage volontairement des véhicules en prétendant « travailler dessus », voilà un personnage confronté à de vrais dilemmes moraux et aux conséquences réelles de ses décisions en jeu. Agency-Vehiclekeys crée les conditions nécessaires pour que ce personnage puisse exister.