Instalas scripts de FiveM colocando el recurso en la carpeta resources/, iniciándolo en server.cfg con ensure y cargando antes dependencias como ESX, QBCore o controladores de base de datos. Lo decisivo es una estructura de carpetas limpia, el orden de inicio correcto, una importación SQL revisada y mirar la consola del servidor después del reinicio.
Requisitos
Necesitas acceso a los archivos del servidor, a server.cfg, a la consola del servidor y, si el script usa tablas de base de datos, a tu base de datos MySQL o MariaDB. En un servidor FiveM alquilado, esto suele incluir un gestor de archivos, FTP/SFTP y una herramienta de base de datos como phpMyAdmin o Adminer. Si todavía estás planificando el servidor completo, la guía interna Alquilar y configurar un servidor FiveM te ayuda con la estructura básica.
FiveM llama técnicamente recursos a los scripts. Según la documentación oficial de Cfx.re, fxmanifest.lua describe qué archivos, scripts y metadatos pertenecen a un recurso. Por eso, comprueba siempre primero si la carpeta descomprimida contiene un archivo de manifiesto válido. Sin manifiesto, el servidor no puede cargar correctamente el recurso.
Comprobar la estructura del script
Un recurso típico de FiveM tiene este aspecto:
mi_script/
├── fxmanifest.lua # Archivo de manifiesto
├── client.lua # Código de cliente
├── server.lua # Código de servidor
├── config.lua # Configuración
└── html/ # NUI (interfaz web)
Es importante que no subas por error una carpeta adicional de empaquetado. Por ejemplo, sería incorrecto resources/mi_script-main/mi_script/fxmanifest.lua si el recurso realmente debe estar directamente en resources/mi_script/fxmanifest.lua. Después de descomprimir, abre la carpeta y comprueba el nivel en el que está fxmanifest.lua.
Instalar el script
- Descargar el script
- Descomprimirlo en la carpeta
resources/ - Añadirlo en
server.cfg:
ensure mi_script
- Reiniciar el servidor
Usa como nombre del recurso exactamente el nombre de la carpeta o el nombre indicado por el README. Muchos errores surgen por grafías distintas, espacios en el nombre de la carpeta o caracteres especiales. Se recomiendan nombres cortos con minúsculas, guiones o guiones bajos.
Configurar scripts ESX
Los scripts ESX dependen de que la base de ESX y los recursos adicionales necesarios se inicien antes. El orden concreto puede variar según la versión de ESX y el script, así que aplica esta regla: revisa el README del script y respeta la documentación existente del framework.
# Base ESX
ensure es_extended
ensure esx_menu_default
ensure esx_menu_dialog
ensure esx_menu_list
# Trabajos
ensure esx_policejob
ensure esx_ambulancejob
ensure esx_mechanicjob
ensure esx_taxijob
# Funciones
ensure esx_banking
ensure esx_vehicleshop
ensure esx_property
Si un script de trabajo espera sus propias tablas de base de datos o ítems, importa el archivo SQL incluido antes del primer arranque productivo. Haz antes una copia de seguridad de la base de datos. En servidores de roleplay existentes, los archivos SQL pueden sobrescribir columnas, ítems o trabajos si no están adaptados a tu instalación.
Configurar scripts QBCore
Los recursos QBCore siguen un principio similar: primero el framework, después bibliotecas compartidas y luego inventario, trabajos, garajes, teléfono o HUD. Un ejemplo simple:
ensure qb-core
ensure qb-policejob
ensure qb-ambulancejob
ensure qb-garages
ensure qb-inventory
ensure qb-phone
Revisa especialmente archivos de configuración como config.lua, shared/config.lua o archivos de ítems específicos del framework. Algunos scripts QBCore esperan entradas en Items, Jobs, Gangs o Permissions. Introduce solo valores que el script documente. Si quieres planificar recursos, txAdmin y operación del servidor en un contexto más amplio, lee también Alquilar un servidor FiveM: configurar GTA RP, recursos y txAdmin 2025.
Respetar el orden de inicio
El orden de inicio es importante:
- Framework primero (ESX/QBCore)
- Dependencies (oxmysql, etc.)
- Scripts base (inventario, HUD)
- Scripts de trabajo
- Scripts cosméticos (emotes, ropa)
Coloca las dependencias compartidas lo más centralizadas posible y antes de todos los recursos dependientes. Si varios scripts requieren la misma biblioteca, debería iniciarse solo una vez. Con conexión a base de datos, el controlador de base de datos debe estar funcionando antes de que los recursos envíen consultas SQL.
Fuentes gratuitas de scripts
| Fuente | Descripción |
|---|---|
| GitHub | Scripts de código abierto |
| Foro cfx.re | Scripts de la comunidad |
| Overextended | Código abierto de alta calidad |
Descarga scripts solo de fuentes donde puedas comprobar el código, el changelog o los comentarios de la comunidad. En descargas desconocidas, presta especial atención a código Lua ofuscado, solicitudes HTTP inexplicables, webhooks externos y tokens codificados de forma fija. Instala recursos nuevos primero en una instancia de prueba o fuera de las horas principales de juego.
Comprobar el resultado
Reinicia el servidor y observa la consola. Un recurso cargado correctamente aparece sin errores de manifiesto, dependencias o SQL. Después, dentro del juego, comprueba exactamente la función que proporciona el script: menú de trabajo, interacción de inventario, marcador, comando, ventana NUI o cambio en la base de datos. Prueba con los roles y permisos que usarán más tarde los jugadores reales.
Usa además refresh y ensure mi_script en la consola del servidor solo para pruebas controladas. Para cambios productivos, un reinicio limpio suele ser más significativo porque refleja el orden de inicio completo.
Solución de problemas
SCRIPT ERROR
Comprueba primero la línea de la consola. A menudo falta una dependencia, una variable de configuración está mal establecida o se llama a una función exportada antes de que se inicie el recurso de destino. Compara el mensaje de error con el README del script.
Errores SQL
Importa las tablas o columnas incluidas si el script las requiere. Si las tablas ya existen, no ejecutes SQL de nuevo a ciegas. Crea una copia de seguridad y adapta las sentencias a la estructura de tu base de datos existente.
El script no carga
Comprueba el nombre de la carpeta, la entrada ensure y fxmanifest.lua. Un error tipográfico en el archivo de manifiesto o una carpeta mal anidada basta para que el recurso no se inicie.
La función no aparece en el juego
Comprueba permisos, trabajos, ítems, coordenadas y versión del framework. Muchos scripts de roleplay solo funcionan para determinados trabajos o grupos. Por eso, no pruebes solo como admin, sino también con un perfil de jugador normal.
Comprobación, límites y vuelta segura
La guía “Instalar scripts de servidor FiveM: ESX y QBCore” se aplica al tipo de servidor descrito en el artículo y al estado de versiones visible en el momento de la revisión. Los nombres de menús, versiones disponibles, compatibilidad de mods o plugins y recursos necesarios pueden cambiar tras actualizaciones. Por eso, no transfieras valores sin comprobarlos a otra versión de juego, loader o servidor.
Antes de hacer cambios en el mundo, la partida guardada, la configuración o las extensiones, crea una copia de seguridad de los archivos afectados. Después cambia solo un paso relacionado y compruébalo con la misma versión de cliente y servidor con la que quieras jugar más tarde.
| Punto de comprobación | Resultado esperado | Cancelación y vuelta atrás |
|---|---|---|
| Inicio del servidor | El servidor alcanza el estado operativo sin nuevos mensajes de error. | Si hay errores de inicio, deshaz el cambio y restaura la última copia de seguridad. |
| Prueba de conexión | Una cuenta de prueba puede conectarse usando la dirección mostrada en el panel. | Si hay errores de versión o conexión, vuelve a comparar versión, puerto y permisos de red. |
| Prueba de función | La función modificada concreta funciona sin dañar datos existentes del mundo o del juego. | Si hay efectos secundarios, detén el servidor y restaura los archivos guardados. |
Una prueba individual correcta no garantiza rendimiento ni disponibilidad. El tamaño del mundo, mods, plugins, número de jugadores, ruta de red y carga simultánea pueden cambiar el resultado. Documenta la versión, el cambio y el resultado de la prueba para poder entender desviaciones posteriores.
FAQ
¿Tengo que reiniciar el servidor después de cada script?
Para una prueba fiable, sí. Aunque los recursos individuales se pueden recargar desde la consola, un reinicio completo muestra si el orden de inicio y todas las dependencias realmente encajan.
¿Puedo usar ESX y QBCore al mismo tiempo?
En la práctica deberías elegir un framework. Muchos scripts están claramente creados para ESX o QBCore y esperan eventos, tablas y estructuras de configuración diferentes.
¿Qué hago si un script no tiene fxmanifest.lua?
Entonces puede estar obsoleto, mal descomprimido o no preparado para las estructuras actuales de recursos de FiveM. Comprueba la fuente y la documentación antes de instalarlo en producción.
¿Debería probar scripts gratuitos directamente en el servidor live?
Mejor no. Prueba los recursos nuevos primero por separado, guarda archivos y base de datos y revisa la consola. Especialmente en servidores de roleplay, los scripts defectuosos pueden afectar al inventario, trabajos o progreso de los jugadores.
¿Cuántos scripts puede usar un servidor FiveM?
No hay una cifra general sensata. Lo decisivo es la calidad de los scripts, dependencias, carga de base de datos, comportamiento de tick y número de jugadores. Planifica recursos de forma consciente y elimina de forma consecuente los scripts que no uses.