Frameworks: ESX y QBCore · Lección 1/5 · 7 min
Qué es un framework y por qué lo necesitas
Un framework como ESX o QBCore te da jugadores, dinero, trabajos e inventario ya resueltos para no reinventar la rueda.
FiveM por sí solo te da el motor del juego, pero no sabe qué es un «jugador con dinero», un «trabajo de policía» o un «inventario». Eso lo aporta un framework de roleplay. Los dos más usados son ESX y QBCore.
Qué te resuelve un framework
- Cuentas de dinero (efectivo, banco) por jugador, guardadas en la base de datos.
- Trabajos y rangos (policía, EMS, mecánico…).
- Inventario e items.
- Una identidad persistente del jugador (su personaje) entre sesiones.
- Funciones listas para que tu script hable con todo eso.
Sin framework tendrías que programar todo eso desde cero. Con ESX/QBCore, tu script pide «dale 500€ a este jugador» y el framework se encarga del resto (validar, actualizar BD, sincronizar).
Cómo se carga en tu recurso
-- En el fxmanifest.lua, importa ESX:
shared_scripts {
'@es_extended/imports.lua',
'config/config.lua',
}
-- A partir de ahí, en client y server tienes la variable global ESX disponible.fxmanifest.lua con ESX
ESX Legacy moderno usa imports.lua (ya no hace falta el viejo TriggerEvent('esx:getSharedObject')). En QBCore se importa con exports['qb-core']:GetCoreObject().
Practica lo aprendido
0/3¿Qué aporta un framework de roleplay como ESX o QBCore que FiveM por sí solo no da?
Completa la línea del fxmanifest que importa ESX Legacy en shared_scripts.
shared_scripts { '@es_extended/', 'config/config.lua',}Pista
ESX Legacy moderno se carga con imports.lua, no con el viejo esx:getSharedObject.
En QBCore, ¿cómo obtienes el objeto del core?
Reto: prográmalo tú
Explica con tus palabras qué pasaría si intentaras dar dinero a un jugador SIN usar un framework.
Escríbelo tú en tu editor (VS Code) y pruébalo en tu servidor. Aquí se aprende haciéndolo, no copiando.
Escribe aquí tu solución:
