Personalización
mic_boosting tiene dos capas. Un config.lua corto guarda las pocas cosas que se deciden una sola vez — framework, cómo se abre la tablet, quién es admin, el idioma. Todo lo relacionado con la jugabilidad vive en la base de datos y se edita en directo desde el panel de admin (/boostingconfig), sin reiniciar.
Qué archivo decide qué
Sección titulada «Qué archivo decide qué»| Dónde | Qué decide | Editable |
|---|---|---|
config.lua | Framework, ítem/comando de la tablet, acceso de admin, idioma, sistema de interacción, trabajos de policía, fijaciones de prueba | Sí |
shared/prices.lua | Valores iniciales de seis ajustes de economía — solo se lee en el primerísimo arranque (ver abajo) | Sí |
locales/*.lua | Cada notificación y cada texto de la tablet, un archivo por idioma; locales/locale.lua es el cargador | Sí |
bridge/server_bridge.lua | Framework, dinero, ítems, ítem usable, recuento de policías, comprobación de admin, dar un coche a un garaje | Sí |
bridge/client_bridge.lua | Notificaciones, el aviso de texto, interacciones de target, el aviso de dispatch a la policía | Sí |
items/ | Definiciones de ítems para ox_inventory, QBCore y ESX, y las siete imágenes de los ítems | Sí |
ui/ | La propia tablet (HTML, CSS, JS) | Con escrow |
client/, server/ | La lógica del juego y el back end del panel de admin | Con escrow |
Panel de admin (/boostingconfig) | Puntos, entregas, clases, coches, guardias, minijuegos, tienda de herramientas, progresión, economía | En el juego |
Los archivos abiertos son los que aparecen en escrow_ignore en fxmanifest.lua: config.lua, locales/, shared/ y bridge/.
config.lua
Sección titulada «config.lua»Framework e idioma
Sección titulada «Framework e idioma»| Opción | Qué hace | Por defecto |
|---|---|---|
Config.Framework | 'auto' busca qb-core, luego es_extended, y si no, standalone. QBox se detecta como qb-core, a través de su compatibilidad con QBCore. O fuerza 'qbcore' (también para QBox), 'esx', 'standalone' | 'auto' |
Config.CoreResource | Está en el archivo, pero esta versión no lo lee: la detección siempre busca recursos llamados qb-core y es_extended | '' |
Config.Locale | Idioma de las notificaciones y de la tablet. Si falta algo, usa inglés | 'en' |
Abrir la tablet
Sección titulada «Abrir la tablet»| Opción | Qué hace | Por defecto |
|---|---|---|
Config.TabletOpenMode | 'item', 'command' o 'both' | 'item' |
Config.TabletItem | El ítem usable que la abre | mic_boosting_tablet |
Config.TabletCommand | El comando que la abre, en modo command o both | boosting |
Acceso de admin
Sección titulada «Acceso de admin»| Opción | Qué hace | Por defecto |
|---|---|---|
Config.AdminCommand | Comando que abre el panel de admin | boostingconfig |
Config.AdminGroups | Rangos que cuentan como admin. ESX compara el grupo del jugador; QBCore pregunta a HasPermission por cada nombre | admin, superadmin, god |
Config.AdminAce | Un ACE que también te hace admin. La única vía en standalone. false lo desactiva | command |
La misma comprobación decide quién ve la pestaña Admin dentro de la tablet. Más en ⌨️ Comandos y permisos.
Interacción y policía
Sección titulada «Interacción y policía»| Opción | Qué hace | Por defecto |
|---|---|---|
Config.InteractionSystem | Cómo aparece el aviso de la ganzúa en el coche: 'ox_target', 'qb_target' o 'drawtext' (pulsa E) | 'ox_target' |
Config.PoliceJobs | Trabajos que cuentan para el mínimo de policías conectados de cada clase | police, sheriff, lspd, bcso |
Con ox_target el coche también muestra una opción aparte de EMP Jammer a quien lleve uno. En los otros modos el inhibidor se sigue usando — automáticamente, cuando empieza la ganzúa.
Pruebas
Sección titulada «Pruebas»| Opción | Qué hace | Por defecto |
|---|---|---|
Config.ForceDropoffId | Envía todos los contratos a este punto de entrega | nil (aleatorio) |
Config.ForceLocationId | Genera todos los contratos en este punto de recogida | nil (aleatorio) |
Locations.BlipRadius | Radio en metros del círculo de búsqueda alrededor del coche objetivo | 150.0 |
shared/prices.lua — solo en el primer arranque
Sección titulada «shared/prices.lua — solo en el primer arranque»Este archivo siembra seis valores de economía en la base de datos la primera vez que arranca el recurso (cuando la tabla de ajustes está vacía). Después de eso, editarlo no hace nada — cámbialos en la pestaña Settings del panel de admin.
Prices.Tools en ese mismo archivo no es lo que vende la tienda de herramientas: la tienda lee su catálogo de la pestaña Market del panel de admin.
El panel de admin
Sección titulada «El panel de admin»/boostingconfig lo abre en Locations. Añade una pestaña para abrirlo en otro sitio: locations, dropoffs, classes, vehicles, setups, progression, minigames, market o settings — por ejemplo /boostingconfig classes.
| Pestaña | Qué gestionas ahí |
|---|---|
| Locations | Puntos de recogida: una posición del coche y cuatro posiciones de guardias cada uno, las clases permitidas y la configuración de guardias por clase. Teletransportarte, reordenar, editar, borrar o colocar uno nuevo en el mundo |
| Drop-Offs | Dónde se entregan los coches. Coloca nuevos en el mundo, teletranspórtate, bórralos |
| Classes | Todo lo de cada clase (tabla de abajo) |
| Vehicles | El catálogo de coches del que cada clase saca sus objetivos |
| NPC Setups | Equipamientos de guardias con nombre y sus armas |
| Progression | Desafíos, hitos, logros y ventajas |
| Minigames | Cada minijuego, sus ajustes de dificultad, activado/desactivado y qué clases lo usan |
| Market | La tienda de herramientas: ítems y mejoras, precio, moneda (MB o efectivo), valor, clase mínima, activado/desactivado |
| Settings | Economía, heat, la pestaña Herramientas y el marcador del punto de entrega |
Colocar en el mundo. Los puntos y las entregas nuevos se colocan con un fantasma: E confirma, la rueda del ratón rota, Backspace cancela. Un punto de recogida es primero el coche, luego cuatro guardias y luego un nombre.
Classes
Sección titulada «Classes»Vienen seis: D, C, B, A, S y S+.
| Ajuste | Qué hace |
|---|---|
| Etiqueta, nivel mínimo | El nombre que se muestra y el nivel necesario para cogerla (D 0, C 3, B 6, A 10, S 15, S+ 20) |
| Rango de XP, rango de pago | Lo que da un coche entregado, elegido al azar entre los dos valores |
| Límite de tiempo | Minutos para entregar |
| Cooldown | Segundos antes de que el mismo jugador pueda coger otro |
| Mín. / máx. de cola | Cuánto tarda la cola en encontrar un contrato |
| Límites diarios | Contratos por jugador y por banda al día (0 = sin límite) |
| Máx. intentos de ganzúa | Intentos antes de que la cerradura se bloquee |
| Aviso a la policía | Si la policía recibe un aviso de dispatch para esta clase |
| Aumento de heat | Heat que se suma por trabajo |
| Mín. de policías conectados | Policías conectados necesarios para unirse o aceptar. Viene a 2 en todas las clases |
| Estrellas de búsqueda | Nivel de búsqueda que recibe el ladrón una vez abierto el coche (D 1 … S+ 5) |
Settings
Sección titulada «Settings»| Ajuste | Qué hace | Valor de serie |
|---|---|---|
| VIN Scratch Multiplier | La tarifa por raspar el VIN es el 35% del pago × este valor, pagada en MB | 4.0 |
| XP per Level | XP necesaria para el siguiente nivel = nivel × este valor | 500 |
| Heat Decay per Minute | Heat que se quita cada minuto a los jugadores conectados | 2 |
| Max Heat | Con este heat, los contratos se rechazan hasta que se enfríe | 100 |
| Hide Locked Items | Oculta los ítems de la tienda de herramientas por encima de la clase del jugador | Desactivado |
| Dropoff marker | Activado/desactivado, tipo de marcador, color (RGBA) y tamaño | Activado, tipo 2, rojo |
| Queue Fee, Crypto Rate | Aparecen en el panel. En esta versión unirse a la cola es gratis y una entrega abona su pago completo en MB | 0, 0.10 |
Empezar de cero
Sección titulada «Empezar de cero»boostingseed, escrito en la consola del servidor, vacía las tablas de configuración y vuelve a poner los valores de serie. Los datos de los jugadores — perfiles, niveles, MB, bandas, contratos, anuncios del mercado — no se tocan.
Idiomas
Sección titulada «Idiomas»Vienen once en locales/: en, es, fr, pt (brasileño), de, tr, it, nl, pl, cs, ru. Pon Config.Locale en uno de ellos. Una clave que falte en un idioma se muestra en inglés.
Para añadir uno:
- Copia
locales/en.luaalocales/<code>.luay cambia el código de idioma al principio de la tabla. - Traduce los valores de las dos mitades:
script(notificaciones — mantén%sy%d) yui(la tablet — mantén los marcadores{name}).date.intl_localefija el formato de fecha en la pantalla de bloqueo. - Añade el archivo a
shared_scriptsenfxmanifest.lua, después delocales/en.lua, y luego hazrefresh. - Pon
Config.Localeen el nuevo código.
El bridge
Sección titulada «El bridge»Los dos archivos del bridge están abiertos, y son donde se conecta un framework, inventario, notificación o dispatch personalizado.
bridge/server_bridge.lua
| Función | Para qué sirve |
|---|---|
| Detección del framework | Elige qbcore, esx o standalone y lo imprime |
GetPlayerIdentifier | citizenid en QBCore, identifier en ESX, license: en standalone |
GetPlayerJob, GetPoliceCount | Nombres de trabajo, y cuántos jugadores tienen un trabajo de Config.PoliceJobs |
AddMoney, RemoveMoney | Las recompensas y compras en efectivo usan la cuenta money |
AddItem, RemoveItem, HasItem | Primero ox_inventory si está en marcha, si no el framework |
RegisterUsableItem | Hace usable el ítem de la tablet (ESX y QBCore; nada en standalone) |
GiveVehicle | Mete un coche con el VIN raspado en el garaje: owned_vehicles en ESX, player_vehicles en pillboxgarage en QBCore |
IsAdmin | El ACE, y luego Config.AdminGroups |
Notify | Notificación del framework desde el servidor |
bridge/client_bridge.lua
| Función | Para qué sirve |
|---|---|
Notify | Notificación de QBCore o ESX, feed nativo en standalone |
ShowTextUI, HideTextUI | El aviso en modo drawtext. Ejemplos comentados para okokTextUI y cd_drawtextui |
ClientHasItem | Comprobación de ítems en el cliente, usada por la opción EMP del coche |
AddEntityInteraction, RemoveEntityInteraction | ox_target / qb-target / drawtext en el coche |
PoliceDispatch | Se ejecuta en el cliente de cada policía cuando salta un aviso. Por defecto: una notificación y un blip parpadeante durante 60 segundos. Ejemplos comentados para cd_dispatch y ps-dispatch |
La mayoría de las notificaciones que ve un jugador salen de dentro de la tablet como sus propios toasts, no a través del framework.