Cómo crear un MLO para FiveM

Crea un pequeño interior de dos habitaciones con Blender, Sollumz y CodeWalker, después empaquétalo y pruébalo como recurso de FiveM.

En esta guía

Un interior original de dos habitaciones, exportado y comprobado en un recurso de prueba FiveM.

Antes de empezarModelado básico en Blender · Exportación y reimportación de un asset verificadas · Servidor de pruebas FiveM local
Taller conceptual de dos habitaciones: sala delantera, taller, portal interior y portal exterior
Nuestro diagrama original del taller. Geometría ilustrativa, no un asset probado en el juego.

Un MLO funcional para FiveM es más que un modelo con forma de interior. Necesitas geometría, colisión adecuada, un arquetipo MLO con datos de habitaciones y portales, una colocación en el mundo y un recurso que entregue los assets exportados.

Esta guía usa un taller original de dos habitaciones como ejercicio controlado. No es un asset de juego prefabricado para descargar. Crearás la geometría tú mismo. Los nombres de ejemplo siguientes pertenecen al ejercicio; no son nombres especiales de archivos de CodeWalker ni ajustes garantizados para todos los interiores.

Qué vas a crear

Mantén pequeña la primera versión: una sala delantera, un taller al fondo, una puerta entre ambos y una entrada exterior. Deja las puertas móviles, la iluminación elaborada, los conjuntos de entidades y las sustituciones exteriores complejas para una revisión posterior.

El modelo ilustrado muestra la relación entre los espacios. Es un diagrama conceptual, no una prueba realizada en el juego. La validación consiste en comprobar que el interior realmente exportado funciona correctamente en tu servidor de destino.

Antes de empezar, completa el ciclo de exportación y reimportación Blender–Sollumz y primer ejercicio YMAP. Necesitas conocimientos básicos de modelado en Blender; CodeWalker no sustituye una aplicación de modelado.

1. Define la ubicación y el destino de compilación

Elige una ubicación de desarrollo donde puedas identificar la geometría original cercana y los recursos de mapa existentes. Registra la posición y orientación deseadas. Para el primer ejercicio, evita sustituir un edificio original complejo: la colisión existente puede bloquear la nueva entrada aunque tu modelo tenga una puerta.

Decide si producirás assets Legacy o Enhanced. Mantén carpetas de exportación separadas cuando trabajes con ambos. La guía de introducción a Enhanced de Cfx.re indica las herramientas de conversión aplicables y las diferencias de comportamiento. No supongas que la descarga dev46 enlazada aquí sea adecuada para ambos destinos.

Escribe un objetivo sencillo: dos habitaciones, una entrada exterior y ninguna interacción mediante scripts. Dibuja el plano antes de añadir detalles. Así, «terminado» será una condición verificable y no un objetivo cambiante.

2. Crea los volúmenes básicos del interior en Blender

Crea suelos, paredes, techo y aberturas despejadas. Elige un origen local coherente y registra la transformación prevista en el mundo. La guía de modelado de Sollumz muestra cómo conservar una referencia de colocación al mover la geometría editable al origen.

Usa colecciones separadas para geometría visible, colisión y referencias. Sus nombres sirven para organizarte, no son datos obligatorios del juego. Organízalas para evitar exportar por accidente un edificio de referencia.

Inspecciona el modelo desde dentro. Revisa la dirección de las caras, las intersecciones de paredes y la relación entre puerta y suelo. Un marco decorativo no debe reducir la abertura útil más de lo previsto. Mantén la escala y las transformaciones coherentes; no «corrijas» después una colocación incorrecta escalando al azar todo el interior en el mapa.

Guarda un punto de control en la etapa de volúmenes básicos. Una habitación sencilla y transitable es mejor base que una escena amueblada con un origen incierto.

3. Prepara drawables y materiales

Prepara las mallas visibles como drawables GTA con Sollumz y asigna los materiales de shader adecuados a tu flujo. Empieza con pocas superficies opacas normales. El vidrio complejo, los elementos emisivos y los efectos especiales añaden posibles fallos innecesarios para validar la estructura del interior.

Exporta e inspecciona una superficie representativa antes de texturizarlo todo. Comprueba que las referencias de texturas y la apariencia de materiales se conserven en CodeWalker. Reutilizar un conjunto pequeño y coherente de materiales facilita también las correcciones posteriores.

Mantén un inventario sencillo de assets. Un ejemplo puede incluir cw_workshop_shell para la estructura visible y cw_workshop_col para la colisión del interior. Los nombres distintos ayudan a reconocer qué archivo exportado estás inspeccionando.

4. Crea la colisión como una tarea independiente

Construye una estructura simplificada de colisión para las superficies que el jugador debe tocar. Debe conservar el suelo, las paredes y las aberturas reales sin copiar mecánicamente cada borde decorativo.

El guía de colisión de Sollumz cubre la conversión a un compuesto de colisión y la asignación de materiales. También explica los materiales de suelo específicos por habitación necesarios para asignar IDs. Sigue las convenciones de tu versión en lugar de suponer que un número de habitación visible es exactamente el valor interno de colisión.

Inspecciona la entrada exterior desde ambos lados. Si modificas un edificio existente, identifica todos los assets de colisión que bloquean la abertura. No borres colisión ajena del mundo solo para hacer transitable la puerta. Para este primer ejercicio original, una ubicación sin sustituciones superpuestas hace la prueba mucho más clara.

El lección de colisión ofrece un plan de prueba independiente para caminar y comprobar los límites.

5. Crea el YTYP y el arquetipo MLO

Las definiciones de arquetipos vinculan los nombres de tus assets con los datos que necesita el juego. La guía YTYP de Sollumz describe la creación de arquetipos base para drawables y de un arquetipo MLO a partir de la selección de colisión. Sigue esa estructura documentada en lugar de tratar la estructura visible como un interior completo por sí sola.

Para el ejercicio del taller, necesitas una definición MLO que referencie los assets previstos y contenga la organización interior. Anota el nombre exacto del arquetipo MLO; lo usarás después en un YMAP.

No renombres el arquetipo durante las pruebas sin actualizar todas las referencias. De lo contrario, un cambio cosmético de nombres puede parecer un fallo de renderizado.

6. Añade habitaciones, limbo y portales

Crea el limbo con la herramienta prevista y después define la sala delantera y el taller. Establece límites desde geometría que describa realmente cada espacio. No uses un límite enorme solo porque seleccionar geometría precisa lleve más tiempo.

En la puerta entre habitaciones, crea un portal con sus cuatro esquinas y conecta las habitaciones correctas. En la entrada exterior, conecta el interior al limbo según la convención de dirección documentada. Un portal es un dato de visibilidad, no la malla visible de la puerta, y no abre un hueco en la colisión.

Trátalo como un grafo pequeño: sala delantera ↔ taller y sala delantera ↔ exterior. Comprueba las asignaciones de extremos y la orientación en el editor. Después prueba las mismas transiciones en el juego. No te fíes del ángulo de vista que casualmente hace parecer correcto el interior.

Mantén las entidades internas asociadas a la estructura adecuada. Evita reproducir todo el interior como colocaciones mundiales independientes solo porque así resulta visible al principio. La lección de habitaciones y portales amplía la prueba de dos habitaciones en lugar de ofrecer valores universales de indicadores.

7. Exporta a una carpeta limpia

Selecciona los objetos que exportarás y confirma que los necesarios no estén ocultos. Usa una ruta de exportación coherente. El flujo XML documentado convierte la salida de intercambio mediante RPF Explorer de CodeWalker.

Abre los assets exportados al formato del juego antes de empaquetarlos. Comprueba los drawables, la colisión y las definiciones previstas en el YTYP. No mezcles el YTYP de hoy con la colisión de la semana pasada solo porque coincidan los nombres de archivo.

Mantén las fuentes, los archivos de intercambio y los archivos que desplegarás en carpetas distintas. Nunca conviertas .ydr.xml en .ydr cambiándole el nombre. Expórtalo o conviértelo correctamente.

8. Coloca el interior en CodeWalker

Carga los assets exportados en el proyecto. Añade un YMAP nuevo y una entidad con el nombre exacto del arquetipo MLO. Aplica una sola vez la transformación de colocación registrada. Si creaste la geometría en espacio local, no incorpores además la misma traslación mundial en cada componente.

Comprueba la entrada respecto al mundo circundante y calcula los indicadores y las extensiones del YMAP antes de guardar. La guía de colocación de Sollumz documenta esta etapa.

La generación de manifiestos de mapas del juego en CodeWalker y el archivo de FiveM fxmanifest.lua sirven a sistemas diferentes. Un archivo generado _manifest.ymf no sustituye el manifiesto de recurso siguiente.

9. Prepara el recurso FiveM

Este ejemplo supone un YTYP personalizado llamado cw_workshop.ytyp. Los nombres de tus exportaciones de drawable y colisión pueden diferir; conserva los generados por tu proyecto.

cw_workshop/
  fxmanifest.lua
  stream/
    cw_workshop.ymap
    cw_workshop.ytyp
    cw_workshop_shell.ydr
    cw_workshop_col.ybn
    # Add texture dictionaries and other required exports.

Usa un manifiesto de recurso con el YTYP registrado expresamente:

fx_version 'cerulean'
game 'gta5'

this_is_a_map 'yes'

files {
    'stream/cw_workshop.ytyp'
}

data_file 'DLC_ITYP_REQUEST' 'stream/cw_workshop.ytyp'

Las directivas y el tipo de archivo de datos se documentan en Cfx.re y su referencia de archivos de datos. Añade las demás dependencias reales de tu proyecto; este fragmento no es un manifiesto universal para todos los MLO.

10. Prueba el comportamiento, no solo la apariencia

Inicia el recurso en un servidor de desarrollo y visita la ubicación registrada. Camina desde la calle por la sala delantera hasta el taller y vuelve. Mira por cada puerta antes de cruzarla. Gira estando en el umbral y prueba ambos lados de cada límite de habitación.

Comprueba suelos sólidos, aberturas utilizables y barreras no deseadas. Repite con distinta iluminación, reconéctate y acércate desde lejos. Por último, prueba con los demás recursos de mapa que coexistirán en ese lugar.

Guarda observaciones con coordenadas, dirección de cámara y versión exacta utilizada. Cambia una cosa cada vez cuando falle una prueba. Una habitación que desaparece desde un ángulo requiere una investigación distinta de un jugador que atraviesa el suelo.

Las siguientes etapas son la optimización y una lista de comprobación repetible de publicación. No des por terminado el MLO porque una captura de CodeWalker parezca correcta.

Sigue la transferencia de fuentes del navegador a Blender

Hay dos puntos de partida: modela el ejercicio tú mismo como se describe arriba o usa el paquete fuente original de dos habitaciones para inspeccionar el flujo limitado del complemento. El paquete fuente no es un interior nativo terminado ni demuestra que el diagrama de esta página haya superado una prueba en el juego.

En Map Studio, limita el plano a una planta de habitaciones rectangulares y elige Legacy. Exporta el paquete fuente y abre CW Studio en un entorno Blender/Sollumz compatible. La base documentada es Blender 4.2.23 LTS, Sollumz 2.9.0 y szio 1.3.0.dev9. Son versiones fijadas para la integración, no afirmaciones de versiones «más recientes».

Usa Importar, elige el ZIP del paquete y después Validar. Inspecciona las estructuras generadas, las aberturas físicas, las asignaciones de habitaciones y los portales antes de Exportar a un directorio nuevo. Si editaste manualmente geometría generada, no autorices reemplazarla sin guardar una escena aparte. El complemento distingue los elementos generados; mantén tus modelos fuera de esa colección salvo que quieras reconstruirlos.

Interfaz real de ayuda del complemento en Map Studio

La imagen muestra la ayuda de transferencia del navegador, no una salida de Blender ni una escena de GTA. El complemento genera un informe legible por máquina y XML fuente. Inspecciona ambos; un mensaje amable no sustituye la revisión de las salidas reales.

Registra tres resultados de validación independientes

Etapa Evidencias que conservar Qué no demuestra
Fuente Proyecto guardado, escena Blender, salidas XML e informe de generación Compilación de archivos nativos o compatibilidad con el juego
Nativo YDR/YBN/YTYP/YMAP compilados y abiertos de nuevo en CodeWalker Colisión, portales y streaming durante el juego
FiveM Versión de destino, revisión del recurso y pruebas observadas de movimiento/visibilidad Compatibilidad con otra edición o todos los demás recursos del servidor

No cambies «sin verificar» por «aprobado» sin realizar esa etapa. El origen mundial del paquete fuente es ilustrativo: elige un lugar real de prueba y comprueba la geometría vecina. La guía termina con tu resultado registrado en el juego, no al descargar el ejemplo.

Comprueba tu trabajo.

El progreso de la lista de comprobación permanece en este navegador cuando JavaScript está activado.

Fuentes y lecturas adicionales

El comportamiento de las herramientas sigue la documentación primaria enlazada. Los ejercicios, nombres de ejemplos y planes de prueba son orientaciones editoriales, no una afirmación de verificación dentro del juego.

Guarda tu progreso. No necesitas una cuenta.
Haz funcionar las habitaciones y los portales

Buscar en la guía práctica

Empieza a escribir para encontrar una herramienta o una guía.

    Busca en herramientas, títulos y textos de artículos. Las consultas permanecen en tu navegador.esc para cerrar