Multicharacter: documentación
Pantalla de título, multipersonaje y selector de spawn en un solo script. Los jugadores entran a una escena cinemática en vivo con tu logo y un menú principal:
- Jugar;
- Novedades;
- Reglas (hay que aceptarlas);
- Controles;
- Sobre nosotros;
- Discord;
- Salir.
Después eligen un personaje, que aparece delante de la cámara con su ropa real, o crean uno nuevo con tu propio creador de ropa. Por último eligen dónde aparecer mientras la cámara vuela sobre cada sitio.
Funciones
- 🎬 Escenas de título en vivo: cámara del juego con un movimiento cinemático lento, NPCs haciendo escenarios, su propia hora y clima. Varias escenas rotan con un fundido. Añade las tuyas en
Config.Scenes. - 🖼️ Tu marca:
- logo desde un archivo (
html/img/) o un enlace, o el nombre de tu servidor como texto; - lema;
- música de fondo opcional (
html/music/o un enlace; el botón de silencio se recuerda); - colores de rolo_notify: cada jugador ve el tema que eligió.
- logo desde un archivo (
- 📰 Paneles: novedades, reglas (por secciones), controles (tecla + acción) y sobre nosotros (texto + enlaces, web). Todo en texto plano en
config.lua. - ✅ Aceptación de reglas: los jugadores aceptan las reglas una vez. Sube
Config.Rules.versiony todos las vuelven a aceptar. - 👤 Tarjetas de personaje: nombre, trabajo y rango, efectivo, banco, fecha de nacimiento, nacionalidad, tiempo jugado y última vez. El modo streamer difumina el dinero y el ID.
- 🧍 Vista 3D con el aspecto real guardado. Arrastra para girar.
- ➕ Crear:
- nombre y apellido (validados, con mayúscula, opcionalmente únicos), fecha de nacimiento (límites de edad), sexo y nacionalidad (lista);
- después se abre tu creador: origen_clothing, illenium-appearance, fivem-appearance o qb-clothing, con una rama
custom.
- Cada personaje se muestra con su propio aspecto en la selección. Con origen_clothing el aspecto se lee de la base de datos (todavía no hay nadie cargado): se revisan todas las tablas candidatas y gana la fila con el aspecto completo (cara, pelo, rasgos); se ignoran las tablas de conjuntos guardados / armario / tienda. La consola lista las tablas que revisa. Si un servidor alguna vez muestra la ropa equivocada, fuerza la tabla con
Config.LookTable.Config.Debug = truemuestra lo que se leyó de cada personaje. - 🗑️ Borrar con doble confirmación (escribiendo el nombre completo). Se puede desactivar o dejar solo para admins.
- 🎟️ Espacios: un número por defecto, extras por jugador dados por los admins, y un comando de consola pensado para Tebex.
- 📍 Selector de spawn: última ubicación más tus puntos. La cámara vuela sobre cada uno. Los personajes nuevos aparecen en un punto fijo (o eligen un apartamento de qb-apartments) y reciben los items iniciales (id_card / driver_license con sus datos).
- 🔒 Privado mientras eliges: cada jugador está solo en su propio routing bucket. Sin HUD ni radar, y la sincronización del clima se pausa.
- 🔁
/logoutvuelve a la pantalla de título, para admins o para todos. El cambio de personaje de rolo_admin funciona con él. - 🌍 Español e inglés. QBCore y Qbox. Inventarios para los items iniciales: todos los de la sección de Compatibilidad.
Dependencias
Instalación
- Quita tus scripts actuales de multipersonaje y spawn: qb-multicharacter, qb-spawn, origen_titlemenu… Solo puede funcionar uno.
- Pon
rolo_multicharacteren tus resources y hazensuredespués de tu framework, ox_lib y oxmysql. - Pon tu logo en
html/img/(o usa un enlace) y configuraConfig.Branding: nombre, logo, Discord, música. - Escribe tus novedades, reglas, controles y "sobre nosotros" en
config.lua. - Las tablas se crean al primer arranque (
rolo_multichar_accounts,rolo_multichar_chars). Los personajes siguen en las tablas propias de tu framework.
Pantalla de carga
La pantalla de carga se cierra en cuanto la pantalla de título está lista. Lanza loadingscreen:client:shutdown y además llama a ShutdownLoadingScreenNui. Si tu pantalla de carga espera el nombre de un recurso, ponle rolo_multicharacter.
Espacios (admins / Tebex)
| Comando | Dónde | Qué |
|---|---|---|
/multichar_slots <id|license> <n> |
en el juego (admins) o consola | fija los espacios de un jugador |
multichar_addslot <id|license> [n] |
consola / Tebex | añade espacios (1 por defecto) |
En Tebex, añade al paquete el comando multichar_addslot {sid}, con "requiere que el jugador esté conectado". Para dar espacios sin estar conectado, usa la license.
Configuración (config.lua)
| Opción | Qué hace |
|---|---|
Config.Framework, Clothing, Inventory, Notify |
'auto' los detecta |
Config.Branding |
Nombre del servidor, lema, logo (archivo / enlace), Discord, web, música |
Config.MainMenu |
Botones y su orden |
Config.News, Rules, Controls, About |
Contenido de los paneles |
Config.Slots, MaxSlots, AllowDelete, DeleteNeedsAdmin |
Personajes por jugador y borrado |
Config.MinAge, MaxAge, NameMin, NameMax, UniqueNames, Nationalities |
Reglas de identidad |
Config.StarterItems |
Items de los personajes nuevos (nil = la lista del framework) |
Config.Logout |
Comando /logout y quién puede usarlo |
Config.Spawn, NewCharacter |
Puntos de spawn, última ubicación, sitio de los personajes nuevos, qb-apartments |
Config.Scenes, SceneRotateSeconds |
Escenas de título (cámara, NPCs, hora, clima) |
Config.Select |
Dónde se para el personaje delante de la cámara |
Exports
-- servidor
exports.rolo_multicharacter:Logout(src) -- guarda, cierra sesión y muestra la pantalla de título
-- cliente
exports.rolo_multicharacter:IsOpen() -- true mientras se ven los menús
Archivos abiertos (sin escrow)
config.lua,locales/*.luabridge/server.lua: framework (personajes, login, logout, borrar, admins), aspectos guardados, items inicialesbridge/client.lua: notificaciones, aplicar aspectos, abrir el creador, eventos después del spawn, sincronización del clima
Compatibilidad
El núcleo de compatibilidad (compat/server.lua + compat/client.lua, archivos abiertos) detecta tus sistemas al arrancar y los muestra en la consola del servidor, por ejemplo compat: framework qbcore · inventory ox_inventory · garages qb-garages · society qb-banking.
- Inventarios: ox_inventory, origen_inventory, qs-inventory, codem-inventory, core_inventory, qb-inventory, ps-inventory / lj-inventory / tgiann-inventory (mediante las funciones de jugador de QBCore).
Config.Inventory = 'custom'+Compat.CustomInventory. - Los errores se muestran en la consola con el nombre del sistema, nunca en silencio.
- Los nombres y columnas siguen la documentación pública de cada script. Prueba una vez después de instalar con tu propia configuración.
ROLO SCRIPT · Soporte y actualizaciones en nuestro Discord.
Escríbenos en el canal de soporte de Discord con el script, tu framework y el error de la consola.
