Vehicle Keys (qs-vehiclekeys) reemplaza a qb-vehiclekeys, qbx_vehiclekeys y a cualquier otro script de llaves. Es un sistema distinto: la mayoría de los scripts de llaves guardan una lista de llaves en el servidor, mientras que aquí cada llave es un ítem de inventario, así que el antiguo tiene que desaparecer antes de que se inicie Vehicle Keys. Esta página lo elimina limpiamente y enumera lo que sigue funcionando para los scripts que se comunicaban con él.
Ejecutar ambos a la vez significa dos scripts cerrando los mismos coches, dos bloqueos de motor, dos avisos de puente, teclas en conflicto, y una llave de uno no significa nada para el otro. Elimina el script antiguo antes de iniciar Vehicle Keys.
Lo que sigue funcionando#
Vehicle Keys responde a los eventos que la mayoría de garajes, trabajos y concesionarios lanzan a los scripts de llaves de QBCore y Qbox, así que siguen funcionando sin cambios:
Evento | Lado | Qué hace Vehicle Keys |
|---|---|---|
| Cliente | Da al jugador la llave de esa matrícula. |
| Cliente | Da al jugador la llave de esa matrícula. |
| Cliente | Le quita la llave de esa matrícula. |
| Servidor | Da la llave al jugador que llama. |
| Servidor | Le quita la llave al jugador que llama. |
| Servidor | Cierra el coche para todos cuando |
| Servidor | Quita una |
| Callback | Da la llave de ese vehículo en red y devuelve |
Una matrícula sola se convierte en llave buscando el coche generado con esa matrícula (o, si no hay ninguno fuera, su registro de vehículo con propietario) para leer el modelo.
Los exports necesitan un cambio#
Un script que llama a exports['qb-vehiclekeys'] o exports.qbx_vehiclekeys pide un recurso que ya no existe. Vehicle Keys tiene las mismas funciones con su propio nombre, así que la solución es el nombre del recurso y nada más:
-- Before
exports.qbx_vehiclekeys:GiveKeys(source, vehicle)
local ok = exports.qbx_vehiclekeys:HasKeys(source, vehicle)
-- After: same arguments, same results
exports['qs-vehiclekeys']:GiveKeys(source, vehicle)
local ok = exports['qs-vehiclekeys']:HasKeys(source, vehicle)Export | Lado | Argumentos y comportamiento |
|---|---|---|
| Servidor |
|
| Servidor |
|
| Servidor |
|
| Servidor |
|
| Cliente |
|
El export de cliente llamado
GiveKeyses propio de Vehicle Keys y recibe(plate, model, bypassKeyCheck). Las versiones de arriba con source primero son solo de servidor. Comandos y exports tiene ambos.
Eliminarlo paso a paso#
Detén el recurso antiguo
Detén el servidor, o detén el script de llaves antiguo desde la consola del servidor:
bash stop qb-vehiclekeys # or stop qbx_vehiclekeysQuítalo de server.cfg
Borra (o comenta) la línea que lo inicia:
bash # ensure qb-vehiclekeys # ensure qbx_vehiclekeysSi está en una carpeta entre corchetes iniciada con una sola línea, como
ensure [qb], esa línea inicia todo lo que hay dentro; en su lugar, saca de ahí la carpeta antigua.Borra la carpeta
Quita el recurso antiguo de
resources/. Si otro recurso deja de iniciarse porque falta el antiguo, lo tiene comodependencyen sufxmanifest.lua: quita esa línea de él.Decide qué hacer con las ganzúas
qb-vehiclekeys usaba
lockpickyadvancedlockpick. Vehicle Keys usa por defectocarlockpickycaradvancedlockpick. Añade los ítems nuevos (Ítems de inventario), o apunta el config a los que tus jugadores ya llevan:lua -- config/main.lua, inside Config.Lockpick Item = 'lockpick', AdvancedItem = 'advancedlockpick',Hazlo solo si nada más (un robo a casas, por ejemplo) registra también esos ítems como usables, o ambos scripts reaccionarán al mismo ítem.
Actualiza los scripts que llaman a sus exports
Busca en tus recursos
qb-vehiclekeysyqbx_vehiclekeys. Cada llamada aexports[...]cambia aexports['qs-vehiclekeys']; los eventos de la tabla anterior pueden quedarse como están.Reemplaza las llamadas de otros scripts de llaves
wasabi_carlock,MrNewbVehicleKeysy otros tienen sus propias APIs sin capa de compatibilidad aquí. Cambia sus llamadas porGiveKeys/GiveServerKeys(consulta Integraciones para el patrón de garaje).Instala Vehicle Keys
Sigue Instalación, ítems incluidos.
Qué cambia para tus jugadores#
Antes | Con Vehicle Keys |
|---|---|
Llaves guardadas por el script, fuera de la vista | Un ítem |
Llaves perdidas tras un reinicio o al volver a conectarse | Las llaves se quedan en el inventario hasta que se gastan, se regalan o se limpian. |
|
|
|
|
Sin llaves de repuesto | La tienda de copias hace copias de repuesto, y el NPC de recuperación vuelve a emitir la llave de cualquier coche que tenga el jugador. |
Las teclas predeterminadas solo se aplican a los jugadores que nunca han asignado ese comando. Lo que un jugador reasigne en Settings → Key Bindings → FiveM sigue siendo suyo.
Comprobar que ya no está#
Inicia el servidor. Nada en la consola menciona el script de llaves antiguo; una línea could not find resource significa que todavía hay un
ensureenserver.cfg.VEHICLEKEYS INFO: Framework server loaded:aparece, indicando tu framework.Siéntate en un coche que no sea tuyo: exactamente un aviso de puente, no dos.
Saca un coche de tu garaje:
Ulo cierra y puedes conducirlo. Si te pide hacer un puente, consulta Errores comunes.



