Antes de empezar#
Antes de instalar Weapon Skin Creator, asegúrate de que tu servidor cumple los requisitos mínimos. Tres cosas son obligatorias; todo lo demás es opcional y se detecta solo.
Requisito | Estado | Notas |
|---|---|---|
oxmysql | Obligatorio | Acceso a la base de datos. Las tablas se crean solas. |
ox_lib | Obligatorio | Callbacks, atajos de teclado y avisos. |
OneSync | Obligatorio | Las skins siguen a cada jugador mediante state bags. |
Framework | Opcional | ESX, QBCore o Qbox — detección automática. Standalone sirve para probarlo; no se cobra nada. |
Inventario | Opcional | ox_inventory o qs-inventory permiten que una skin pertenezca a un arma exacta, por su número de serie. Sin uno, una skin pertenece al tipo de arma. |
Target | Opcional | ox_target, qtarget o qb-target. Sin uno, las tiendas usan un aviso en pantalla y una tecla. |
qs-textui / qs-interface | Opcional | Avisos, barras de progreso y ocultación del HUD más bonitos. Si no, se usa ox_lib. |
Todo lo específico de un framework o de terceros está detrás de un pequeño archivo puente, y el recurso elige el correcto según lo que ya está en ejecución:
Capa | Detectado |
|---|---|
Framework | es_extended → esx · qb-core → qb · qbx_core → qb · ninguno → standalone |
Inventario | ox_inventory · qs-inventory · ninguno → standalone |
Target | ox_target → qtarget → qb-target |
Avisos | qs-textui → text UI de ox_lib |
Cada integración opcional se desactiva en silencio. Si falta un recurso, esa función simplemente se retira — no da ningún error. Integraciones tiene los detalles y cómo fijar una a mano.
github.comReleases · overextended/oxmysqlMySQL resource for FXServer.github.comReleases · overextended/ox_libA FiveM resource and script library for Lua and JS.Descargar Weapon Skin Creator#
Tras comprar Weapon Skin Creator, el recurso se vincula automáticamente a tu cuenta de CFX Portal.
Inicia sesión en el CFX Portal con la misma cuenta que usaste al finalizar la compra, abre Granted Assets y descarga Weapon Skin Creator.
Tras extraer la descarga, deberías tener la siguiente carpeta:
[weaponskin-creator]/
├── qs-weaponskin-creator/ -- the script
├── qs-weaponskin-pool/ -- the shells skins are drawn on, pre-built
├── qs-weaponskin-data/ -- YOUR data, filled on the first start
└── [sql]/ -- the schema, only for importing by handRecurso | Qué es |
|---|---|
| El script: el estudio, las tiendas, el inventario de skins y el panel de administración. Envía a los clientes unos 50 MB, casi todo las texturas de armas del estudio. |
| Una carcasa fina de cada arma compatible, un conjunto por ranura, sobre la que se pinta una skin. Viene ya generada: no hay nada que generar. Unos 135 MB de archivos stream, que se entregan por arma la primera vez que un cliente ve una. |
| Los datos de tu servidor: imágenes guardadas, texturas de skins terminadas y las armas addon que añadas. El creador lo llena, escribe su manifest y lo inicia. |
No renombres las tres carpetas. El creador encuentra el pool y el recurso de datos por su nombre, y cada export se llama a través de
qs-weaponskin-creator.
Instalar el recurso#
Mueve toda la carpeta [weaponskin-creator] al directorio de recursos de tu servidor. Puede estar en cualquier lugar dentro de él:
resources/
└── [weaponskin-creator]/
├── qs-weaponskin-creator/
├── qs-weaponskin-pool/
└── qs-weaponskin-data/Luego abre tu server.cfg, añade las cinco líneas add_ace y asegúrate de que cada dependencia — y todo lo que deba detectar — se inicie antes que los tres recursos, en este orden:
# Lets Weapon Skin Creator bring addon weapons online without a restart
add_ace resource.qs-weaponskin-creator command.ensure allow
add_ace resource.qs-weaponskin-creator command.start allow
add_ace resource.qs-weaponskin-creator command.stop allow
add_ace resource.qs-weaponskin-creator command.restart allow
add_ace resource.qs-weaponskin-creator command.refresh allow
ensure oxmysql
ensure ox_lib
# Framework
ensure es_extended
# ensure qb-core
# ensure qbx_core
# Inventory, target and prompts (optional)
ensure ox_inventory
ensure ox_target
ensure qs-textui
ensure qs-weaponskin-pool
ensure qs-weaponskin-data
ensure qs-weaponskin-creatorEl orden de carga importa. La detección solo ve los recursos que ya están iniciados, así que un framework o inventario que se inicia después de Weapon Skin Creator no se encuentra y esa parte funciona en standalone. El orden respecto a otros packs de armas no importa: el pool no modifica ningún metadato de armas, así que no hay nada con lo que entrar en conflicto.
Por qué las líneas add_ace#
Cuando un admin añade un arma addon, el creador reescribe qs-weaponskin-data y pide al servidor que vuelva a escanear sus recursos — así es como un arma nueva llega a todos los clientes sin reiniciar. FiveM solo permite que un recurso ejecute esos comandos con permiso. Hasta que las líneas estén puestas, la consola del servidor enumera las que faltan cada 10 segundos; pegarlas directamente en la consola las aplica al momento.
En el primer inicio,
ensure qs-weaponskin-datamuestra Couldn't find resource. Es lo esperado: la carpeta no tiene manifest hasta que el creador escribe uno durante ese inicio y lanza el recurso él mismo.
La base de datos#
No hay ningún archivo SQL que importar. Weapon Skin Creator crea sus propias tablas en el primer inicio, todas con el prefijo qs_weaponskin_, y las migra por sí mismo en cada inicio posterior. [sql]/database.sql es el mismo esquema, para quienes prefieren importarlo a mano.
Tablas | Contienen |
|---|---|
players · skins · equipped · entitlements | Cada jugador, las skins que posee, qué skin está en qué arma o pistola, y las ranuras de inventario extra. |
transactions · trades | Cada pago que hizo un jugador, y cada regalo e intercambio. |
designs · shares · uploads | Diseños guardados, códigos para compartir e imágenes guardadas. |
catalog · moderation | Skins publicadas por los admins y la cola de revisión. |
shops · shop_ranks · shop_workers | Las tiendas, sus rangos y su personal. |
shop_transactions · shop_stock · shop_orders · shop_shifts | El libro de cuentas de cada caja, los suministros, los pedidos de suministros y el historial de turnos. |
tebex_transactions · tebex_spent · tebex_pending | Cada concesión de la tienda, los ids de transacción usados y las concesiones a la espera de un jugador desconectado. |
settings | Cada ajuste que cambiaste respecto a su valor predeterminado — una fila cada uno. |
Haz copia de seguridad de
qs-weaponskin-datajunto con la base de datos. Las filas de skins apuntan a archivos de imagen de esa carpeta y las armas addon guardan ahí sus códigos, así que una sin la otra es media copia de seguridad.
Obtener acceso de admin#
El panel de administración — /weaponskincreator — es donde se colocan las tiendas, se publica el catálogo y se configura el servidor, así que está protegido por una comprobación de admin. Quién cuenta como admin depende de tu framework:
El grupo del jugador debe estar en Config.AdminGroups en config/config.lua. Asígnate uno de estos grupos de la forma habitual en ESX, o añade tus propios grupos de staff a la lista:
Config.AdminGroups = { 'admin', 'superadmin', 'god' }El jugador necesita el permiso de QBCore god o admin, o el ace command. Config.AdminGroups no se usa aquí.
add_principal identifier.license:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx qbcore.godCualquier jugador con el ace command es admin:
add_ace group.admin command allow
add_principal identifier.license:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx group.adminLos admins también tienen todos los permisos de tienda, reciben un aviso cuando hay skins pendientes de revisión y pueden ejecutar los comandos de consola restringidos en el juego. La consola del servidor siempre cuenta como admin.
Configurar el recurso#
Casi nada se configura en archivos. Los precios, los comandos, la cámara del estudio, el banco de trabajo, las tiendas y las nóminas, cómo se muestran y entregan las skins, las imágenes, la moderación, Tebex y el idioma están en los Settings del juego — se cambian en vivo y se guardan en tu base de datos. Los archivos son para la fontanería:
Archivo | Contenido |
|---|---|
| Detección de framework e inventario, las cuentas de dinero con las que pagan los jugadores, los grupos de admin de ESX y los nombres del pool y de los recursos de datos. |
| Tus propias fuentes y diseños de galería, la lista de hosts de imágenes permitidos y el mapa de paquetes de Tebex. Una actualización nunca lo toca. |
| Logs de Discord, una URL por categoría. |
| Los puentes de framework: identificadores, dinero y la comprobación de admin. |
| Los adaptadores de inventario y target. |
| Todos los textos, incluido el panel de Settings, en 41 idiomas. |
Los valores que conviene revisar primero:
-- config/config.lua
Config.MoneyTypes = { -- the accounts a player can pay with
{ name = 'money', label = 'Cash' },
{ name = 'bank', label = 'Bank' },
}
Config.AdminGroups = { 'admin', 'superadmin', 'god' } -- ESX staff groupsEl idioma se puede establecer para todos los recursos de Quasar a la vez con setr qs:locale "es" en server.cfg; un idioma elegido en Settings → General tiene prioridad sobre él.
Config.Debugenconfig/config.luase reemplaza por el panel al iniciar. La salida extra de consola se activa en el juego: Settings → General → Debug logging.
Verificar la instalación#
Reinicia tu servidor y lee la consola. Un inicio correcto termina con las comprobaciones de inicio:
[INFO] Successfully loaded the framework. esx
add_ace permissions found — everything that needs them is enabled.
pool: ready (61 weapons)
[qs-weaponskin-creator] all 12 startup checks passed.Si una comprobación falla, se muestra con una ✗ y lo que hay que hacer — Errores comunes repasa cada una. Las comprobaciones se ejecutan una vez, al iniciar, y solo aparecen en la consola del servidor.
Después entra en tu servidor y completa el primer ciclo:
Crea una tienda
/weaponskincreator→ Shops → +. Ponle un nombre, dibuja el área de la tienda, coloca el NPC y el banco de trabajo, y pulsa Save. Uso explica cada campo.Haz una skin
Acércate al NPC y pulsa E para el Skin studio. Elige un acabado, pon una pegatina en el arma, pulsa Review & pay y paga.
Mírala
La skin ya está en tu arma, y la ve todo el que puede verte.
/skinsabre tu inventario de skins y/inspectla presume.
A partir de aquí nada necesita reiniciar. Cada precio, tienda, permiso y función se edita en el juego; los pocos ajustes que necesitan reinicio — los nombres de los comandos — están marcados en el panel.



