Antes de empezar#
Antes de instalar Crime Creator, asegúrate de que tu servidor cumple los requisitos mínimos. Unos pocos recursos son obligatorios; todo lo demás es opcional y se detecta solo cuando el servidor se inicia.
Requisito | Estado | Notas |
|---|---|---|
| Obligatorio | Acceso a la base de datos para organizaciones, territorios, guerras, misiones y todo lo demás. |
| Obligatorio | Callbacks, zonas, barras de progreso y funciones compartidas. |
| Obligatorio | Declarado como dependencia en el manifest. |
| Obligatorio | Captura la foto de la cabeza del jugador para su perfil criminal en la Crime Tablet. |
Framework | Obligatorio |
|
| Recomendado | Necesario para los cuarteles IPL (apartamentos, oficinas, clubhouses, laboratorios, almacenes, mansiones). |
| Incluido | Los 11 interiores shell usados para los cuarteles shell. Viene en la descarga. |
Inventario | Muy recomendado | Los stashes, el mercado negro, las recompensas de ítems y los ítems usables pasan todos por él. |
Target / Llaves / Ropa / Dispatch / Ambulancia | Opcional | Cada uno se detecta automáticamente cuando está en ejecución. Consulta Integraciones. |
Todo lo específico de un framework o de terceros está detrás de un pequeño archivo puente editable, y el recurso elige el correcto mirando lo que ya está en ejecución:
Capa | Recursos detectados |
|---|---|
Framework |
|
Inventario |
|
Llaves de vehículos |
|
Ropa |
|
Dispatch |
|
Ambulancia |
|
Cada integración opcional se degrada sin problemas. Si falta un recurso, esa parte usa un valor predeterminado integrado. Integraciones tiene las listas completas y cómo fijar uno a mano.
GitHubReleases · overextended/oxmysqlMySQL resource for FXServer.GitHubReleases · overextended/ox_libA FiveM resource and script library for Lua and JS.GitHubReleases · Bob74/bob74_iplFix holes and customize the map.Descargar Crime Creator#
Después de comprar Crime Creator, el recurso se vincula automáticamente a tu cuenta de CFX Portal.
Inicia sesión en CFX Portal con la misma cuenta que usaste al finalizar la compra, abre Granted Assets y descarga Crime Creator.
Después de extraer la descarga, deberías tener las siguientes carpetas:
[crimecreator]/
├── qs-crime-creator/ -- the resource itself
│ ├── config/ -- main.lua, missions.lua, furniture.lua (what you may edit)
│ ├── custom/ -- framework bridges (ESX / QBCore), interaction menu, notifications
│ ├── client/custom/ -- inventory, keys, clothing, dispatch, ambulance, target bridges
│ ├── server/custom/ -- server-side bridges
│ ├── server/webhooks.lua -- Discord logs
│ ├── locales/ -- 41 languages
│ ├── stream/ -- the three graffiti fonts
│ └── web/ -- the interface, ready to use
├── [shells]/subhampro_exclusive_shells/ -- shell interiors for headquarters
├── [sql]/ -- database.sql, esx.sql, qb.sql, clean.sql
└── [items]/ -- item images and item definitionsLa carpeta del recurso debe llamarse
qs-crime-creator. La ruta de la interfaz (nui://qs-crime-creator/web/), los exports de los ítems de inventario y todos los exports que llaman tus otros scripts se basan en ese nombre.
Instalar el recurso#
Mueve qs-crime-creator y subhampro_exclusive_shells al directorio de recursos de tu servidor. Pueden estar en cualquier lugar dentro de él, incluida una carpeta de categoría:
resources/
└── [qs]/
├── qs-crime-creator/
└── subhampro_exclusive_shells/Luego abre tu server.cfg y asegúrate de que cada dependencia — y todo lo que deba detectar — se inicie antes que Crime Creator:
ensure oxmysql
ensure ox_lib
# Framework
ensure es_extended
# ensure qb-core
# ensure qbx_core
# Inventory, target, keys, clothing, ambulance, dispatch
ensure qs-inventory
ensure qs-vehiclekeys
ensure illenium-appearance
ensure qs-dispatch
# Interiors and headshots
ensure bob74_ipl
ensure subhampro_exclusive_shells
ensure MugShotBase64
ensure qs-crime-creatorEl orden de carga importa. La detección solo ve los recursos que ya están iniciados cuando Crime Creator se carga, así que un sistema de inventario o de llaves que se inicie después no se encuentra y esa parte usa su alternativa.
La base de datos#
Crime Creator no crea sus tablas por sí mismo — importa los archivos SQL de la carpeta [sql] antes del primer inicio.
Importa database.sql
El esquema principal: todas las tablas
qs_crime_*. Solo usaCREATE TABLE IF NOT EXISTSyADD COLUMN IF NOT EXISTS, así que es seguro ejecutarlo de nuevo después de una actualización para añadir columnas nuevas.Importa el archivo de tu framework
Importa
esx.sql. Recuerda en qué cuartel está cada jugador y añade el datastore que usa el armario predeterminado:sql ALTER TABLE `users` ADD IF NOT EXISTS `crime_house_inside` INT(5) NULL; INSERT INTO `datastore` (`name`, `label`, `shared`) VALUES ('crime_house', 'Crime House', 0);Importa
qb.sql:sql ALTER TABLE `players` ADD IF NOT EXISTS `crime_house_inside` INT(5) NULL;Inicia el servidor
No hay contenido inicial: el servidor arranca sin organizaciones, territorios ni zonas. Todo se crea en el juego desde el creador.
Tablas | Contienen |
|---|---|
| Las organizaciones, sus miembros, rangos y permisos. |
| Saldos limpio y sucio, el registro de transacciones y las mejoras compradas. |
| Nivel, XP, misiones y guerras ganadas — por organización y por miembro. |
| Territorios, puntos de dinero de protección y cada graffiti del mapa. |
| Guerras, sus puntuaciones, resultados pasados y solicitudes de guerra pendientes. |
| Zonas de batalla PvP, invitaciones y puntuaciones. |
| Misiones activas, completadas (usadas para los límites diarios) y rondas de blanqueo. |
| El garaje de la organización, la tienda de vehículos y la actividad del garaje. |
| El pase de temporada y las recompensas reclamadas y el estado premium de cada organización. |
| Los muebles colocados en los cuarteles y la basura que se acumula dentro. |
| Historial de Dark Chat, anuncios del mercado negro, intercambios y pagos a vendedores. |
Añadir los ítems#
Crime Creator usa catorce ítems. Copia las imágenes de [items] en la carpeta de imágenes de tu inventario y luego registra los ítems en el formato que espera tu inventario.
Ítem | Qué hace |
|---|---|
| Abre la Crime Tablet: clasificaciones, mapa de territorios, misiones, guerras, Dark Chat, mercado negro, perfil y pase de temporada. |
| Pinta un graffiti con el color de tu organización. |
| Elimina un graffiti cercano. |
| Una vista de prismáticos en primera persona con zoom. |
| Coloca un rastreador GPS en el vehículo más cercano; solo tú ves su marcador. |
| Las drogas que los jugadores venden en las esquinas dentro de sus territorios. |
Añádelos a qs-inventory/shared/items.lua o qb-core/shared/items.lua. La lista completa, con descripciones, está en [items]/items.md.
['tablet'] = { name = 'tablet', label = 'Tablet', weight = 800, type = 'item', image = 'tablet.png', unique = false, useable = true, shouldClose = true, description = 'Portable electronic tablet' },
['organization_paint'] = { name = 'organization_paint', label = 'Paint Can', weight = 1000, type = 'item', image = 'organization_paint.png', unique = false, useable = true, shouldClose = true, description = 'Organization Paint Can' },
['spray_cleaner'] = { name = 'spray_cleaner', label = 'Spray Cleaner', weight = 1000, type = 'item', image = 'spray_cleaner.png', unique = false, useable = true, shouldClose = true, description = 'Spray Cleaner' },
['binoculars'] = { name = 'binoculars', label = 'Binoculars', weight = 500, type = 'item', image = 'binoculars.png', unique = false, useable = true, shouldClose = true, description = 'Binoculars' },
['vehiclegps'] = { name = 'vehiclegps', label = 'Vehicle GPS', weight = 300, type = 'item', image = 'vehiclegps.png', unique = false, useable = true, shouldClose = true, description = 'Vehicle GPS tracker' },
['weed_white-widow'] = { name = 'weed_white-widow', label = 'White Widow Weed', weight = 150, type = 'item', image = 'weed_white-widow.png', unique = false, useable = true, shouldClose = true, description = 'Bag of White Widow weed' },
['weed_og-kush'] = { name = 'weed_og-kush', label = 'OG Kush Weed', weight = 150, type = 'item', image = 'weed_og-kush.png', unique = false, useable = true, shouldClose = true, description = 'Bag of OG Kush weed' },
['weed_skunk'] = { name = 'weed_skunk', label = 'Skunk Weed', weight = 150, type = 'item', image = 'weed_skunk.png', unique = false, useable = true, shouldClose = true, description = 'Bag of Skunk weed' },
['weed_amnesia'] = { name = 'weed_amnesia', label = 'Amnesia Weed', weight = 150, type = 'item', image = 'weed_amnesia.png', unique = false, useable = true, shouldClose = true, description = 'Bag of Amnesia weed' },
['weed_purple-haze'] = { name = 'weed_purple-haze', label = 'Purple Haze Weed', weight = 150, type = 'item', image = 'weed_purple-haze.png', unique = false, useable = true, shouldClose = true, description = 'Bag of Purple Haze weed' },
['weed_ak47'] = { name = 'weed_ak47', label = 'AK-47 Weed', weight = 150, type = 'item', image = 'weed_ak47.png', unique = false, useable = true, shouldClose = true, description = 'Bag of AK-47 weed' },
['crack_baggy'] = { name = 'crack_baggy', label = 'Crack Baggy', weight = 120, type = 'item', image = 'crack_baggy.png', unique = false, useable = true, shouldClose = true, description = 'Baggy of crack' },
['cocaine_baggy'] = { name = 'cocaine_baggy', label = 'Cocaine Baggy', weight = 120, type = 'item', image = 'cocaine_baggy.png', unique = false, useable = true, shouldClose = true, description = 'Baggy of cocaine' },
['meth_baggy'] = { name = 'meth_baggy', label = 'Meth Bag', weight = 120, type = 'item', image = 'meth_baggy.png', unique = false, useable = true, shouldClose = true, description = 'Bag of meth' },Añádelos a ox_inventory/data/items.lua. Los ítems usables llaman directamente a los exports de cliente de Crime Creator:
['tablet'] = {
label = 'Tablet', weight = 800, consume = 0,
client = { export = 'qs-crime-creator.tablet' }
},
['organization_paint'] = {
label = 'Paint Can', weight = 1000, consume = 0,
client = { export = 'qs-crime-creator.graffiti' }
},
['spray_cleaner'] = {
label = 'Spray Cleaner', weight = 1000, consume = 0,
client = { export = 'qs-crime-creator.graffitiCleaner' }
},
['binoculars'] = {
label = 'Binoculars', weight = 500, consume = 0,
client = { export = 'qs-crime-creator.binoculars' }
},
['vehiclegps'] = { label = 'Vehicle GPS', weight = 300, stack = true, close = true },
['weed_white-widow'] = { label = 'White Widow Weed', weight = 150, stack = true, close = true },
['weed_og-kush'] = { label = 'OG Kush Weed', weight = 150, stack = true, close = true },
['weed_skunk'] = { label = 'Skunk Weed', weight = 150, stack = true, close = true },
['weed_amnesia'] = { label = 'Amnesia Weed', weight = 150, stack = true, close = true },
['weed_purple-haze'] = { label = 'Purple Haze Weed', weight = 150, stack = true, close = true },
['weed_ak47'] = { label = 'AK-47 Weed', weight = 150, stack = true, close = true },
['crack_baggy'] = { label = 'Crack Baggy', weight = 120, stack = true, close = true },
['cocaine_baggy'] = { label = 'Cocaine Baggy', weight = 120, stack = true, close = true },
['meth_baggy'] = { label = 'Meth Bag', weight = 120, stack = true, close = true },Para inventarios que leen la tabla items de ESX:
INSERT INTO `items` (`name`, `label`, `weight`) VALUES
('tablet', 'Tablet', 800),
('organization_paint', 'Paint Can', 1000),
('spray_cleaner', 'Spray Cleaner', 1000),
('binoculars', 'Binoculars', 500),
('vehiclegps', 'Vehicle GPS', 300),
('weed_white-widow', 'White Widow Weed', 150),
('weed_og-kush', 'OG Kush Weed', 150),
('weed_skunk', 'Skunk Weed', 150),
('weed_amnesia', 'Amnesia Weed', 150),
('weed_purple-haze', 'Purple Haze Weed', 150),
('weed_ak47', 'AK-47 Weed', 150),
('crack_baggy', 'Crack Baggy', 120),
('cocaine_baggy', 'Cocaine Baggy', 120),
('meth_baggy', 'Meth Bag', 120);El dinero negro se lee de tu framework: la cuenta
black_moneyen ESX, el ítemmarkedbills(suworth) en QBCore, y el ítemblack_moneyen Qbox. Los nombres de los ítems se pueden cambiar enconfig/main.lua— mantenlos idénticos en tu inventario.
Obtener el acceso de administrador#
El creador es donde se crean las organizaciones, los territorios, los puntos de cobro, la tienda de vehículos, el pase de temporada y las batallas PvP, así que /crimecreator está protegido por una comprobación de permisos. Cualquier otra persona ve "You do not have permission to do this." Cualquiera de las dos vías siguientes da acceso:
Automático, sin nada que configurar.
ESX: jugadores del grupo
adminosuperadmin.QBCore / Qbox: el permiso
godoadmin, o el acecommand(el grupo de administradores de txAdmin):bash add_principal identifier.license:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx group.admin add_ace group.admin command allow
Trabajos y grados que pueden abrir el creador sin ser administradores, en config/main.lua. Usa grade = false para todos los grados de ese trabajo.
Config.CreatorJobs = {
{ job = 'police', grade = { 1, 2, 3 } }, -- only these grades
{ job = 'ambulance', grade = false }, -- every grade
}Configurar el recurso#
Las organizaciones, los territorios, los puntos de cobro, la tienda de vehículos, el pase de temporada y las batallas PvP se crean en el juego. Los archivos contienen las reglas del juego — economía, límites, ítems, llaves — y los puentes con tus otros recursos:
Archivo | Contenido |
|---|---|
| Idioma, detección, precios de drogas, shells e IPLs, mejoras, el garaje, graffiti, la tablet (guerras, Dark Chat, mercado negro), prismáticos, rastreador GPS, XP de misiones, PvP y trabajos del creador. |
| La lista de misiones y sus recompensas, el blanqueo de dinero y la misión de robo de vehículos. |
| El catálogo de muebles usado para decorar los cuarteles. |
| El menú de interacción F4, las notificaciones, el text UI y las barras de progreso. |
| Puentes para inventarios, llaves, ropa, dispatch, ambulancia, target y clima. |
| Registros en Discord, una URL por categoría. |
| Todos los textos que ve el jugador, en 41 idiomas. |
Los valores que conviene revisar primero:
Config.Locale = 'en' -- 41 languages: en, es, fr, de, pt, it, ru, tr, ar, zh...
Config.InteractionKey = 'F4' -- the gang interaction menu (false to disable the key)
Config.UseTarget = false -- true = ox_target / qb-target instead of [E] prompts
Config.PoliceJobs = { 'police', 'sheriff' }
Config.RequiredCops = 0 -- police online needed to sell drugs
Config.Debug = true -- set to false on a live server
Config.Intl = { -- how money is shown in the interface
locales = 'en-US',
options = { style = 'currency', currency = 'USD', minimumFractionDigits = 0 }
}Verificar la instalación#
Reinicia tu servidor y mira la consola mientras qs-crime-creator se inicia. Una tabla que falta aparece como un error de oxmysql que la nombra — importa database.sql de nuevo. Luego entra en tu servidor y recorre el primer ciclo:
Crea una organización
Escribe
/crimecreator, abre Organizations, dale un nombre, un color y un dueño (tú mismo), dibuja su zona y coloca su entrada y su garaje. Uso explica cada campo.Abre el menú de interacción
Pulsa
F4. Dentro de la zona de tu organización, Open Boss Menu muestra el panel, los miembros, los rangos, las finanzas, el garaje, la tienda de vehículos y la gestión.Usa la tablet
Date un
tablety úsalo. La Crime Tablet se abre en las clasificaciones — tu organización debería aparecer en la lista con nivel 1.



