Cómo crear un servidor FiveM RP con QBCore en VPS Windows

Tutorial paso a paso para montar un servidor FiveM con QBCore en VPS Windows: txAdmin, MySQL, artifacts y configuración inicial del RP. Guía completa.

Prerrequisitos

Antes de comenzar, confirma que tienes el entorno correcto. Sin esto, el servidor no arrancará o se bloqueará en los primeros minutos.

Prerrequisitos

VPS Windows Server 2019 o 2022 con mínimo 4 vCPU, 8 GB de RAM y 40 GB de SSD. Acceso Administrator vía RDP. Cuenta gratuita en keymaster.fivem.net para generar la clave de licencia. Conexión a internet del servidor con los puertos 30120 (TCP/UDP) y 40120 (TCP, txAdmin) abiertos.

Puerto FiveM (juego) 30120 TCP/UDP
Puerto txAdmin 40120 TCP
RAM mínima 8 GB
Versión Windows Server 2019/2022

El QBCore actual requiere MySQL 5.7+ o MariaDB 10.4+, y los artifacts recientes de FiveM necesitan Visual C++ Redistributable 2019 instalado — cubriremos estos prerrequisitos en los pasos correspondientes.

Preparando el entorno Windows

Windows Server incluye algunas restricciones de seguridad que dificultan la descarga de binarios y la apertura de puertos. Hay que resolverlas antes de tocar FiveM.

01

Conéctate a la VPS vía RDP usando la IP y credenciales proporcionadas. En el primer inicio de sesión, abre el Server ManagerLocal Server y desactiva la opción IE Enhanced Security Configuration para Administrators. Sin esto, descargar archivos desde el navegador se convierte en un proceso lleno de confirmaciones.

02

Instala el Visual C++ Redistributable 2019 (x64). Abre PowerShell como Administrator y ejecuta:

Invoke-WebRequest -Uri "https://aka.ms/vs/17/release/vc_redist.x64.exe" -OutFile "$env:TEMP\vc_redist.x64.exe"
Start-Process "$env:TEMP\vc_redist.x64.exe" -ArgumentList "/install /quiet /norestart" -Wait

Este paquete contiene las bibliotecas C++ que FXServer.exe carga en tiempo de ejecución. Si omites este paso, el servidor abre la consola y se cierra inmediatamente sin ningún mensaje útil.

03

Abre los puertos en el firewall de Windows. Todavía en PowerShell:

New-NetFirewallRule -DisplayName "FiveM Server" -Direction Inbound -Protocol TCP -LocalPort 30120 -Action Allow
New-NetFirewallRule -DisplayName "FiveM Server UDP" -Direction Inbound -Protocol UDP -LocalPort 30120 -Action Allow
New-NetFirewallRule -DisplayName "txAdmin" -Direction Inbound -Protocol TCP -LocalPort 40120 -Action Allow

Instalando MySQL (MariaDB)

QBCore no funciona sin base de datos — toda la persistencia (personajes, dinero, inventario, vehículos) vive en MySQL. Usaremos MariaDB porque el instalador es más sencillo en Windows y es 100% compatible con oxmysql, el conector que usa QBCore.

04

Descarga el instalador de MariaDB:

Invoke-WebRequest -Uri "https://archive.mariadb.org/mariadb-10.11.6/winx64-packages/mariadb-10.11.6-winx64.msi" -OutFile "$env:TEMP\mariadb.msi"
Start-Process msiexec.exe -ArgumentList "/i $env:TEMP\mariadb.msi /quiet PASSWORD=TuContraseñaFuerte123 SERVICENAME=MariaDB PORT=3306" -Wait

Cambia TuContraseñaFuerte123 por una contraseña real — la usarás en el string de conexión del server.cfg. Guárdala en un lugar seguro.

05

Verifica que el servicio arrancó correctamente:

Get-Service -Name MariaDB

El estado debe aparecer como Running. Si aparece Stopped, ejecuta Start-Service MariaDB y confirma de nuevo.

06

Crea la base de datos qbcore que recibirá el esquema del framework. Abre HeidiSQL (viene incluido con MariaDB) → conéctate en 127.0.0.1:3306 con usuario root y la contraseña definida arriba. En el menú, haz clic derecho sobre la conexión → Create newDatabase → nombre qbcore, collation utf8mb4_general_ci.

Descargando los artifacts de FiveM

FiveM publica binarios compilados (llamados artifacts) en un servidor propio. Usa siempre la versión latest recommended de la rama master — las versiones “optional” y “bleeding edge” son inestables.

07

Crea la estructura de carpetas y descarga el artifact más reciente:

New-Item -ItemType Directory -Path "C:\FXServer\server" -Force
New-Item -ItemType Directory -Path "C:\FXServer\server-data" -Force
cd C:\FXServer\server

# Obtén el enlace más reciente en https://runtime.fivem.net/artifacts/fivem/build_server_windows/master/
$artifactUrl = "https://runtime.fivem.net/artifacts/fivem/build_server_windows/master/12913-abc.../server.7z"
Invoke-WebRequest -Uri $artifactUrl -OutFile "server.7z"

El número de build cambia cada semana — abre la URL en el navegador de la VPS, copia el enlace del build marcado como recommended y sustitúyelo arriba.

08

Instala 7-Zip para extraer el artifact y descomprímelo:

winget install --id 7zip.7zip --silent
& "C:\Program Files\7-Zip\7z.exe" x server.7z -oC:\FXServer\server

Tras la extracción, debes tener C:\FXServer\server\FXServer.exe — ese es el ejecutable principal.

Clonando QBCore y configurando el server.cfg

Ahora viene la parte del framework. QBCore se distribuye vía GitHub y lo mantiene la organización QBCore Framework.

09

Instala Git y clona la plantilla oficial dentro de server-data:

winget install --id Git.Git --silent
# Cierra y vuelve a abrir PowerShell para actualizar el PATH
cd C:\FXServer\server-data
git clone https://github.com/qbcore-framework/txAdminRecipe.git .

El txAdminRecipe es el blueprint oficial — incluye el core de QBCore, oxmysql, scripts esenciales y el esquema SQL.

10

Genera tu clave de licencia en https://keymaster.fivem.net/. Inicia sesión con Cfx.re, haz clic en New → elige Server hosted by yourself, introduce la IP de la VPS y copia la clave generada (formato cfxk_...).

11

Usaremos txAdmin para finalizar la configuración — gestiona el server.cfg, importa el SQL automáticamente y ofrece interfaz web. Inicia FXServer por primera vez:

cd C:\FXServer\server
.\FXServer.exe +set serverProfile default

En la primera ejecución, la consola muestra una URL del tipo http://IP-DE-LA-VPS:40120/addMaster/PIN. Ábrela en tu navegador local.

12

En la interfaz de txAdmin: crea la cuenta admin → elige Use recipe → pega la URL https://raw.githubusercontent.com/Qbox-project/txAdminRecipe/main/recipe.yaml (o usa el recipe de QBCore puro). txAdmin descarga todos los scripts, crea la base de datos y genera el server.cfg.

Cuando solicite credenciales MySQL, introduce:

host: localhost
user: root
password: TuContraseñaFuerte123
database: qbcore
13

Todavía en txAdmin, abre SettingsCFX Re License y pega la clave generada en el keymaster. En Server Name escribe el nombre que aparecerá en la lista de servidores de FiveM. Haz clic en Save & Start.

Contraseña admin de txAdmin

txAdmin es la puerta de entrada de tu servidor — cualquier persona con acceso puede detenerlo, ver logs y ejecutar comandos. Usa una contraseña de al menos 16 caracteres y nunca compartas la URL /addMaster/ tras la configuración inicial.

Verificación

Con el servidor en marcha, valida tres cosas: consola limpia, conexión directa vía FiveM y persistencia en la base de datos.

En la consola de FXServer debes ver líneas como:

Resource qb-core started.
Resource oxmysql started.
Authenticating with Cfx.re... done.
Server started.

Abre el cliente FiveM en tu PC, pulsa F8 y escribe:

connect IP-DE-LA-VPS:30120

Deberías llegar a la pantalla de selección de personaje de QBCore. Crea un personaje, sal y vuelve a entrar — si persiste, la base de datos está conectada correctamente.

En HeidiSQL, abre la base qbcore → tabla players. Tu entrada debe estar ahí con el citizenid generado.

Resolución de problemas comunes

El servidor se cierra solo al iniciar

En la mayoría de los casos es el Visual C++ Redistributable ausente o en versión antigua. Reinstálalo con el comando del Paso 02 y confirma que estás usando la versión x64.

Error “Could not connect to database”

Revisa en C:\FXServer\server-data\server.cfg la línea set mysql_connection_string. Debe tener el formato:

set mysql_connection_string "mysql://root:TuContraseñaFuerte123@localhost/qbcore?charset=utf8mb4"

Las contraseñas con caracteres especiales (@, :, /) deben ir URL-encoded — @ se convierte en %40, por ejemplo.

Los jugadores no pueden conectarse desde fuera

Confirma tres cosas: puerto 30120 abierto en el firewall de Windows (Paso 03), puerto 30120 no bloqueado por el proveedor, y sv_endpoints en el server.cfg apuntando a 0.0.0.0:30120 (no 127.0.0.1).

Rendimiento en RP con servidor lleno

QBCore vanilla aguanta 32 jugadores sin problemas en una VPS con 4 vCPU. A partir de 48 slots, monitoriza el uso de CPU del proceso FXServer.exe — si supera el 70% de forma sostenida, optimiza los scripts más pesados (especialmente HUD y proximidad de voz) antes de hacer upgrade de hardware.

Próximos pasos

Con QBCore funcionando, los caminos habituales de evolución son:

  • Añadir trabajos personalizados: la carpeta [qb] acepta resources adicionales como qb-policejob, qb-mechanicjob, etc.
  • Configurar whitelist: activa qb-adminmenu y bloquea conexiones anónimas en el server.cfg con sv_scriptHookAllowed 0.
  • Backup automático de la base de datos: programa mysqldump diario en el Programador de tareas de Windows.
  • Voz por proximidad: instala pma-voice en lugar del mumble nativo para mejor calidad.
  • Anti-cheat: integra txAdmin Anticheat o soluciones de pago como Wasabi/FAXES.

Si estás saliendo de la fase de pruebas y quieres correr con más de 32 jugadores estables, una VPS Windows de Hostini con NVMe dedicado reduce drásticamente el desync provocado por I/O lento en la base de datos — cuello de botella habitual cuando el RP crece en scripts persistentes.

Preguntas frecuentes

¿Cuánta RAM consume QBCore con 32 jugadores?

En una instalación limpia de QBCore con los scripts base del txAdminRecipe, el consumo se sitúa entre 3 y 4 GB de RAM con 32 jugadores activos. Cada script adicional (trabajos, MLOs, anti-cheat) añade entre 50 y 200 MB. Para 32 slots estables, 8 GB es el mínimo cómodo teniendo en cuenta MariaDB y el propio Windows Server.

¿Puedo correr FiveM en una VPS Linux en lugar de Windows?

Sí, FXServer tiene build oficial para Linux y es técnicamente más ligero. Sin embargo, la mayoría de tutoriales de QBCore, MLOs y herramientas de la comunidad asumen Windows — el troubleshooting se complica para quienes empiezan. Se recomienda migrar a Linux solo cuando ya dominas el stack completo.

¿Por qué mi servidor no aparece en la lista pública de FiveM?

Verifica que la clave de licencia esté vigente y vinculada a la IP actual de la VPS en keymaster.fivem.net. Los servidores también tardan unos minutos en aparecer en la lista pública y en algunas regiones requieren al menos 1 jugador conectado. Confirma también que `sv_master1` en el server.cfg no está comentado.

¿Cuál es la diferencia entre QBCore y ESX?

Ambos son frameworks de RP, pero QBCore fue reescrito desde cero con código más limpio, usa oxmysql de forma nativa y tiene mejor documentación. ESX es más antiguo y tiene un ecosistema mayor de scripts legacy, aunque con mucho código deprecado. Para proyectos nuevos en 2024+, QBCore es la elección estándar de la comunidad.

¿Cómo hago backup de la base de datos MySQL de QBCore?

Usa `mysqldump` mediante el Programador de tareas de Windows: `mysqldump -u root -pCONTRASEÑA qbcore > C:\backups\qbcore_%date%.sql`. Realiza el backup al menos diariamente y antes de cualquier actualización de scripts. Mantén las últimas 7 copias rotadas y, si es posible, envía una copia a almacenamiento externo (S3, FTP) para protegerte ante fallos de disco.

¿txAdmin es obligatorio o puedo iniciar FXServer directamente?

No es obligatorio — puedes arrancar con `FXServer.exe +exec server.cfg` directamente. Sin embargo, txAdmin ofrece interfaz web para reiniciar, ver logs, gestionar jugadores y desplegar scripts sin necesidad de RDP, lo que ahorra mucho tiempo. En producción es prácticamente el estándar de la comunidad.

Próximos pasos Cloud Ryzen con NVMe y protección DDoS siempre activa.Pon en producción en un VPS Hostini →
¿Te resultó útil este tutorial?
Hablar por WhatsApp