RPScripts AI · Empieza gratis
FiveM AI Script Generator
Describe el script que necesita tu servidor. RPScripts AI escribe el Lua, la NUI y el fxmanifest para QBCore, Qbox, ESX o standalone, revisa la sintaxis de cada archivo y te entrega un recurso para revisar y probar.
Empieza con una plantilla
3 créditos gratis al día, hasta 15 por mes natural · Sin tarjeta · Acceso por correo
Explorar proyectos de ejemploCómo funciona
RPScripts AI es un generador de scripts de FiveM en tu navegador. Convierte una descripción sencilla en un recurso completo y lo revisa mientras lo escribe.
Describe tu script
Escribe lo que debe hacer el script, con tus palabras y en cualquier idioma. Elige QBCore, Qbox, ESX o standalone, o sube un recurso existente en ZIP.
Míralo construirse
RPScripts AI escribe el fxmanifest.lua, la config, los archivos de cliente y servidor y una NUI si hace falta. Tras cada archivo revisa la sintaxis Lua y el manifest y corrige lo que encuentra.
Ajusta y descarga
Pide cambios en el chat, edita el código tú mismo, previsualiza la NUI y restaura versiones anteriores. Descarga el recurso en ZIP y pruébalo en tu servidor de desarrollo.
Proyectos de ejemplo para abrir y modificar
Recursos completos con sus prompts. Abre un proyecto en el editor y continúa con tus propios prompts.
Las generaciones registradas muestran los créditos realmente usados. Los demás ejemplos son recursos iniciales seleccionados. Revisa y prueba todos en tu servidor de desarrollo.
01Standalone
Standalone server rules board
Un pequeño panel standalone para /rules. Reglas configurables, cierre por Escape o botón y liberación del foco al cerrar o detener el recurso.
Generación IA registrada · 0,6 créditos · 2026-10-13
Ver prompt, archivos y código
Prompt Create a standalone FiveM /rules command. Show a small NUI panel with three server rules from config.lua. Escape and a Close button dismiss it. Release NUI focus on close and resource stop. No database, payments or external HTTP requests. Include fxmanifest.lua and explain how to test it.
Archivos
- config.lua
- fxmanifest.lua
- client/
- main.lua
- html/
- index.html
- script.js
- style.css
- locales/
- en.lua
html/index.html
NUI renderizada en el navegador con mensajes simulados. El comportamiento en el juego aún no se ha verificado.
client/main.lualocal function openRules() if isOpen then return end isOpen = true SetNuiFocus(true, true) SendNUIMessage({ action = 'open', title = Locale.title, close = Locale.close, hint = Locale.hint, rules = Config.Rules, layout = Config.Layout.panel, theme = Config.Theme.name }) end02QBCore
QBCore garage with impound
Guarda y saca tus vehículos en garajes y recupera los perdidos del depósito pagando una tarifa. El servidor comprueba propiedad, distancia y pago.
Ver prompt, archivos y código
Prompt Create a garage script for QBCore: players store and retrieve their owned vehicles at marked garages through an ox_lib menu, with an impound lot that charges a retrieval fee. Garage locations and fees in config.
Archivos
- config.lua
- fxmanifest.lua
- client/
- main.lua
- locales/
- en.lua
- server/
- main.lua
server/main.lualocal function takeFromImpound(player, cid, plate) local row = MySQL.single.await('SELECT state FROM player_vehicles WHERE plate = ? AND citizenid = ?', { plate, cid }) if not row or row.state == GARAGED or inWorld(plate) then return false, 'vehicle_out' end local fee = Config.Impound.fee local account = Config.PayFrom if player.PlayerData.money[account] < fee then account = account == 'bank' and 'cash' or 'bank' end if not player.Functions.RemoveMoney(account, fee, 'garage-impound-fee') then return false, 'no_money' end -- An impounded vehicle is claimed atomically; a lost "out" one stays out (the busy lock guards it). if row.state == IMPOUNDED then local changed = MySQL.update.await( 'UPDATE player_vehicles SET state = ? WHERE plate = ? AND citizenid = ? AND state = ?', { OUT, plate, cid, IMPOUNDED } ) if changed ~= 1 then player.Functions.AddMoney(account, fee, 'garage-impound-refund') return false, 'vehicle_out' end end return true, nil, { fee = fee, account = account } end03ESX
ESX delivery job with van spawn
Ficha en el depósito, recibe una furgoneta creada por el servidor y reparte en puntos aleatorios. El servidor comprueba pago, distancia y tiempos.
Ver prompt, archivos y código
Prompt Create a delivery job for ESX: players clock in at a depot, a work van spawns, they deliver packages to random drop-off points marked with blips and get paid per delivery. The van despawns when the shift ends.
Archivos
- config.lua
- fxmanifest.lua
- client/
- main.lua
- locales/
- en.lua
- server/
- main.lua
server/main.luaESX.RegisterServerCallback('rpc_delivery:deliver', function(src, cb) local shift = shifts[src] local xPlayer = ESX.GetPlayerFromId(src) if not shift or not shift.van or not xPlayer then return cb(false) end local drop = Config.DropOffs[shift.route[shift.step]] if not drop then return cb(false) end local ped = GetPlayerPed(src) if #(GetEntityCoords(ped) - drop) > Config.DropRadius then return cb(false) end if not DoesEntityExist(shift.van) or #(GetEntityCoords(shift.van) - drop) > 40.0 then return cb(false, 'need_van') end if os.time() - shift.lastDrop < Config.MinSecondsBetweenDrops then return cb(false, 'too_fast') end local pay = Config.PayPerDelivery + math.random(Config.Bonus.min, Config.Bonus.max) xPlayer.addAccountMoney(Config.PayAccount, pay, 'Delivery job') shift.delivered = shift.delivered + 1 shift.step = shift.step + 1 shift.lastDrop = os.time() cb(true, pay, Config.DropOffs[shift.route[shift.step]]) end)04Qbox
Qbox NUI shop
Una tienda NUI con categorías, carrito y pago en efectivo o con tarjeta. Los precios salen de la config del servidor y los objetos pasan por ox_inventory.
Ver prompt, archivos y código
Prompt Create an NUI shop for Qbox: a clean shop menu that opens at configurable store locations, with item categories, a cart and payment by cash or bank. Items and prices in config, items through ox_inventory.
Archivos
- config.lua
- fxmanifest.lua
- client/
- main.lua
- html/
- app.js
- index.html
- style.css
- locales/
- en.lua
- server/
- main.lua
html/index.html
server/main.lua-- Only names and counts come from the client; prices are always looked up here. local catalog, lines, total = prices[shop.catalog], {}, 0 for name, count in pairs(cart) do count = math.floor(tonumber(count) or 0) local price = type(name) == 'string' and catalog[name] if price and count > 0 then count = math.min(count, Config.MaxPerItem) lines[#lines + 1] = { name = name, count = count } total = total + price * count end end if #lines == 0 then return { ok = false, reason = 'empty_cart' } end05Standalone
Standalone admin menu
Un panel NUI para el staff con lista de jugadores, teletransporte, curar, revivir, congelar, espectar y kick, protegido por permiso ACE y registrado.
Ver prompt, archivos y código
Prompt Create a standalone admin menu: an NUI panel for staff with a player list and actions (teleport, bring, heal, revive, freeze, spectate, kick), restricted by ace permissions, and every action logged.
Archivos
- config.lua
- fxmanifest.lua
- client/
- main.lua
- html/
- app.js
- index.html
- style.css
- locales/
- en.lua
- server/
- main.lua
html/index.html
server/main.luaRegisterNetEvent('rpc_admin:server:action', function(action, targetId, reason) local src = source -- Everything is re-checked here: the NUI and the client are not trusted. if not isStaff(src) or not allowedActions[action] or not handlers[action] then return end local target = tonumber(targetId) if not target or GetPlayerPing(target) == 0 then return TriggerClientEvent('rpc_admin:client:notify', src, Locale.player_gone) end if action == 'kick' then reason = type(reason) == 'string' and reason:sub(1, 120) or '' if reason == '' then reason = Locale.default_reason end end local detail = handlers[action](src, target, reason) log(src, action, target, detail) TriggerClientEvent('rpc_admin:client:notify', src, Locale.done:format(action, GetPlayerName(target) or target)) TriggerClientEvent('rpc_admin:client:players', src, playerList()) end)06QBCore
ox_target fuel station
Apunta a un surtidor con ox_target, reposta con barra de progreso, paga por litro en el servidor y mira un pequeño HUD de combustible.
Ver prompt, archivos y código
Prompt Create a fuel station script using ox_target for QBCore: target a pump to refuel the closest vehicle, price per liter in config, a progress bar while refueling and a small fuel HUD.
Archivos
- config.lua
- fxmanifest.lua
- client/
- main.lua
- locales/
- en.lua
- server/
- main.lua
server/main.lualib.callback.register('rpc_fuel:server:pay', function(src, netId, requested) local player = QBCore.Functions.GetPlayer(src) local veh, reason = validVehicle(src, netId) if not player or not veh then return { ok = false, reason = reason or 'no_vehicle' } end local liters = math.floor(tonumber(requested) or 0) if liters < 1 then return { ok = false, reason = 'full' } end liters = math.min(liters, Config.TankSize) local price = liters * Config.PricePerLiter for _, account in ipairs(Config.PayFrom) do if player.PlayerData.money[account] >= price and player.Functions.RemoveMoney(account, price, 'fuel') then return { ok = true, liters = liters, price = price } end end return { ok = false, reason = 'no_money', price = price } end)07Standalone
HUD starter
Barras de estado, velocímetro con combustible y marcha, disposición y colores en la config. Los valores solo llegan a la página cuando cambian, el HUD se oculta en el menú de pausa, y el hambre y la sed vienen de los metadatos de QBCore o Qbox cuando el servidor los tiene.
Ver prompt, archivos y código
Prompt Create a player HUD: health, armor, hunger and thirst bars, and a speedometer with fuel and gear while driving. Hide it in the pause menu, update only on change, positions, colors and km/h or mph in config. Hunger and thirst from QBCore or Qbox metadata when available.
Archivos
- config.lua
- fxmanifest.lua
- client/
- framework.lua
- main.lua
- html/
- app.js
- index.html
- style.css
html/index.html
client/main.lualocal function update() local changed, any = {}, false local function put(key, value) if last[key] ~= value then changed[key], last[key], any = value, value, true end end for key, value in pairs(readState()) do put(key, value) end -- Hidden in the pause menu and wherever the game hides its own HUD (cutscenes, DisplayHud(false)). put('show', enabled and not IsPauseMenuActive() and not IsHudHidden()) if not ready then SendNUIMessage({ action = 'init', settings = SETTINGS, data = last }) elseif any then SendNUIMessage({ action = 'update', data = changed }) end end08Standalone
Phone starter
Un teléfono NUI con pantalla de inicio y apps de reloj, calculadora, notas y ajustes que funcionan. Las notas se quedan en el PC del jugador, ESC lo cierra, tema y tamaño del marco en la config, y el nombre y el trabajo aparecen cuando corre QBCore, Qbox o ESX.
Ver prompt, archivos y código
Prompt Create a phone as an NUI page: open and close it with a rebindable key or /phone, ESC closes, home screen with an app grid, and working clock, calculator, notes and settings apps. Notes saved per player with client KVP, dark or light mode in settings, accent colour, wallpaper and phone size/position in config. Show name and job when QBCore, Qbox or ESX is running.
Archivos
- config.lua
- fxmanifest.lua
- client/
- framework.lua
- main.lua
- html/
- app.js
- index.html
- style.css
html/index.html
client/main.luaRegisterNUICallback('saveNote', function(data, cb) local text = type(data) == 'table' and type(data.text) == 'string' and data.text or '' if not utf8.len(text) or not text:find('%S') then return cb({ ok = false, notes = notes }) end local cut = utf8.offset(text, Config.Notes.maxLength + 1) if cut then text = text:sub(1, cut - 1) end local index = type(data.id) == 'number' and findNote(data.id) local note if index then note = table.remove(notes, index) elseif #notes >= Config.Notes.max then return cb({ ok = false, error = 'full', notes = notes }) else local id = 0 for _, other in ipairs(notes) do id = math.max(id, other.id) end note = { id = id + 1 } end note.text = text table.insert(notes, 1, note) -- the latest edit first save('notes', notes) cb({ ok = true, id = note.id, notes = notes })
Hecho para FiveM, no para una ventana de chat
Convenciones de cada framework
Usa los exports y patrones de QBCore, Qbox y ESX, además de ox_lib, ox_target, ox_inventory y oxmysql cuando encajan.
El servidor como regla
RPScripts AI tiene instrucciones de mantener el dinero, los objetos y los permisos en el servidor y de validar los eventos del cliente. Revisa el resultado antes de publicarlo.
Revisado mientras escribe
Cada archivo Lua se analiza en busca de errores de sintaxis y cada script debe figurar en el fxmanifest.lua. Los problemas vuelven directamente a la IA.
Vista previa NUI en vivo
Los menús en HTML, CSS y JavaScript se muestran en una vista previa aislada, así ves la interfaz antes de arrancar tu servidor.
Cada versión guardada
Cada cambio de la IA se convierte en una versión. Compara el diff, restaura una anterior o descarga cualquier versión en ZIP.
Código legible, sin ataduras
Lua claro y sin cifrar, con config.lua y archivos de idioma. Sin escrow, sin ofuscación, sin llamadas HTTP ocultas.
RPScripts AI vs. ChatGPT vs. comprar un script
Con los tres llegas a tener un script en tu servidor. Se diferencian en cuánto montas tú, cuánta libertad tienes para cambiarlo y cuánto pagas.
| Aspecto | RPScripts AI | ChatGPT | Comprar un script |
|---|---|---|---|
| Ideal para | Scripts a medida para tu servidor | Programación general, preguntas y explicaciones | Sistemas grandes y pulidos como móvil, viviendas o MDT |
| Qué obtienes | Un recurso completo: manifest, config, cliente, servidor y NUI | Código en el chat o workspace; exportación según las herramientas | Un recurso terminado de su creador |
| Comprobaciones FiveM | Sintaxis Lua y fxmanifest revisados tras cada archivo | Realiza comprobaciones específicas de FiveM con tus herramientas | Revisa las pruebas declaradas por el creador |
| Cambios | Pídelos en el chat o edita el código, se guarda cada versión | Edición por conversación o workspace, según la herramienta | Opciones de config; el código suele estar cifrado (escrow) |
| Actualizaciones y soporte | Tú pruebas y mantienes el código | Tú pruebas y mantienes el código | Las actualizaciones y el soporte dependen del producto |
| Coste | 3 créditos gratis/día, hasta 15/mes natural; planes desde 19 €/mes | Los límites gratuitos y de pago dependen del plan y las herramientas | Un precio único por script |
¿Prefieres un sistema grande con actualizaciones y soporte? Mira los scripts de QBCore, los scripts de ESX o toda la tienda.
Precios
Empieza gratis con 3 créditos al día, hasta 15 al mes. Un script típico usa unos 3 créditos. Los planes de pago suman créditos mensuales a los diarios.
Comparar todos los planesPreguntas sobre el generador de scripts de FiveM con IA
¿Qué es RPScripts AI?
RPScripts AI es un generador de scripts de FiveM que funciona en tu navegador. Describes un recurso con palabras sencillas y escribe el fxmanifest.lua, la config, el Lua de cliente y servidor y, si hace falta, una interfaz NUI. Mientras trabaja, revisa cada archivo en busca de errores de sintaxis Lua y entradas que falten en el manifest. Usa el modelo Claude Sonnet de Anthropic y lo ofrece RPScripts, una tienda de recursos para FiveM.
¿El generador de scripts de FiveM con IA es gratis?
Sí, puedes empezar gratis. Cada cuenta recibe 3 créditos al día, hasta 15 créditos por mes natural, sin tarjeta de pago. Un script típico usa unos 3 créditos y un cambio pequeño, menos. Si necesitas más, los planes de pago suman créditos mensuales a los diarios, desde 19 € al mes. Todos los precios están en euros e incluyen el IVA.
¿Qué frameworks admite?
RPScripts AI escribe scripts para servidores QBCore, Qbox, ESX y standalone. Eliges el framework antes de empezar y sigue sus exports y convenciones, por ejemplo objetos de jugador, funciones de dinero y callbacks. También usa recursos habituales como ox_lib, ox_target, ox_inventory y oxmysql cuando encajan. Si tu servidor usa otras dependencias, menciónalas en tu prompt.
¿Puede editar o arreglar un script existente?
Sí. Sube tu recurso como archivo ZIP de hasta 5 MB y describe lo que quieres cambiar, por ejemplo una función nueva, un arreglo de un bug o una traducción. RPScripts AI lee los archivos, cambia solo lo necesario y guarda el resultado como una versión nueva, así puedes comparar los cambios o volver al código anterior.
¿Son seguros los scripts de FiveM generados con IA?
RPScripts AI tiene instrucciones de mantener el dinero, los objetos y los permisos en el servidor, validar cada evento del cliente y no añadir nunca código ofuscado, puertas traseras ni peticiones HTTP ocultas. El resultado es Lua claro y legible. Aun así, una IA puede equivocarse: lee el código, prueba cada script primero en un servidor de desarrollo y solo después pásalo a tu servidor en producción.
¿En qué se diferencia de ChatGPT?
Los asistentes de IA generales también pueden escribir y editar archivos. RPScripts AI combina árbol de archivos FiveM, comprobaciones de fxmanifest, diagnósticos Lua, vista previa NUI e historial de versiones. Puedes revisar cada cambio y exportar el recurso como ZIP. Ambos métodos requieren revisión y pruebas en tu servidor de desarrollo.
¿Puedo descargar y modificar el código?
Sí. Cada versión de tu proyecto se descarga en ZIP y se coloca en la carpeta resources de tu servidor. El código no está cifrado ni atado a RPScripts, así que puedes editarlo en cualquier editor, guardarlo en tu propio repositorio Git y seguir trabajando en él con o sin RPScripts AI.
¿Cómo instalo un script generado?
Descarga el ZIP, descomprímelo en la carpeta resources de tu servidor y añade ensure seguido del nombre del recurso a tu server.cfg. Comprueba que las dependencias que aparecen en el fxmanifest.lua, como ox_lib u oxmysql, están instaladas y arrancan antes. Después reinicia el servidor, o ejecuta refresh y ensure en la consola, y prueba el script en el juego.
¿Me conviene generar un script o comprarlo?
Genera un script cuando necesites algo propio de tu servidor: un trabajo, una tienda, un ajuste del garaje o una herramienta de admin que nadie vende justo así. Compra uno cuando quieras un sistema grande y terminado, como un móvil, viviendas o un MDT, con actualizaciones y soporte de su creador. Muchos servidores combinan las dos opciones.
Guías para trabajar con IA en FiveM
Con RPScripts AI o con otra herramienta: cómo pedir, revisar y probar el código de FiveM escrito por IA antes de que llegue a tus jugadores.
Del prompt al ZIP probado (inglés)Describe tu framework, revisa el Lua y prueba la exportación paso a paso.