Open the fxmanifest Generator & Validator
Un fxmanifest.lua pertenece a la raíz de un recurso de FiveM. Declara el juego compatible, los scripts, las dependencias y los archivos entregados al cliente. Elige el ejemplo que coincida con tu recurso y reemplaza cada nombre de archivo de ejemplo con un archivo que realmente exista.
Los ejemplos de configuración y código aquí están dirigidos a FiveM para GTA V Legacy. Enhanced tiene diferentes reglas de tiempo de ejecución y compatibilidad; consulta los cambios de Legacy a Enhanced de Cfx.re antes de aplicarlos a un servidor Enhanced.
Un recurso de script mínimo
fx_version 'cerulean'
game 'gta5'
client_script 'client.lua'
server_script 'server.lua'
Utiliza client_script para el código que se ejecuta en el cliente de cada jugador y server_script para el código de FXServer. Añade metadatos de autor, descripción y versión cuando sea útil. Una dependencia puede inspeccionar tu versión, pero los metadatos de versión no cambian la ejecución por sí mismos. CfxLua actual utiliza Lua 5.4; el interruptor lua54 está obsoleto.
Archivos compartidos y dependencias
fx_version 'cerulean'
game 'gta5'
dependencies { 'ox_lib', 'oxmysql' }
shared_scripts { '@ox_lib/init.lua', 'config.lua' }
client_scripts { 'client/*.lua' }
server_scripts { '@oxmysql/lib/MySQL.lua', 'server/*.lua' }
Este ejemplo requiere las bibliotecas nombradas; omítelas cuando tu recurso no las utilice. Los scripts compartidos se entregan a los clientes, así que mantén las credenciales, los webhooks y las comprobaciones de autoridad solo del servidor fuera de los archivos compartidos. Declara las dependencias que tu código realmente necesita y sigue su orden de inicio documentado.
Una interfaz de navegador con NUI
fx_version 'cerulean'
game 'gta5'
ui_page 'web/index.html'
files { 'web/index.html', 'web/style.css', 'web/app.js' }
client_script 'client.lua'
Enumera todos los recursos de interfaz de usuario locales requeridos, incluidas las fuentes y las imágenes. Una interfaz en blanco requiere verificar tanto su ruta de página como los recursos faltantes. Una pantalla de carga utiliza loadscreen y su propio ciclo de vida en lugar de este ejemplo de ui_page.
Mapas y arquetipos adicionales
fx_version 'cerulean'
game 'gta5'
this_is_a_map 'yes'
files { 'stream/example.ytyp' }
data_file 'DLC_ITYP_REQUEST' 'stream/example.ytyp'
Coloca los recursos transmitibles en stream. El registro YTYP que se muestra aquí es para un recurso que contiene ese archivo; un recurso simple solo YMAP no necesita un YTYP ficticio. Utiliza la declaración de archivo de datos requerida por el tipo de recurso real.
Iniciar y verificar
- Comprueba que la carpeta contenga fxmanifest.lua directamente y que todas las rutas coincidan con los nombres de archivo reales, incluyendo las mayúsculas y minúsculas.
- Instala las dependencias declaradas. Añade ensure seguido del nombre de la carpeta de recursos a server.cfg después de las dependencias documentadas.
- Ejecuta refresh y ensure resource-name en la consola del servidor de desarrollo, sustituyendo el nombre de tu carpeta. Lee el primer error de inicio.
- Únete, utiliza el recurso e inspecciona F8, así como la consola del servidor. Prueba un reinicio completo del servidor para detectar errores de dependencia y empaquetado ocultos por las recargas en caliente.
Errores comunes
Archivo faltante: compara la ruta exacta del manifiesto y el nombre del archivo. Exportación faltante: comprueba la versión de la dependencia y el orden de inicialización. Secretos visibles para los clientes: muévelos fuera de los archivos compartidos/del cliente y rota los valores expuestos.
No acortes un manifiesto de proveedor copiando este tutorial sobre él. Utiliza la referencia oficial del manifiesto y referencia de data-file para entender cada declaración antes de cambiarla.
¿Qué debo revisar en el manifiesto de un recurso comprado?
Compara las dependencias y los builds declarados con tu servidor antes de iniciar el recurso. Comprueba que existan los scripts y archivos de interfaz referenciados. Un manifiesto válido describe qué cargar; no certifica el funcionamiento del juego, el rendimiento ni la integración con el framework.
Referencia de manifiestos de Cfx.re
Ver los requisitos del paquete ESX Server Base (by RibSosay)