FiveM Custom Maps and MLOs: Streaming and Performance Guide

Published on

How to add custom interiors (MLOs) and map modifications to your FiveM server. Covers installation, streaming configuration, IPL loading, and performance optimization.

Written by Space-Node Team – Infrastructure Team – 15+ years combined experience in game server hosting, VPS infrastructure, and 24/7 streaming solutions. Read author bio →

Custom interiors (MLOs - Map Loader Objects) and map modifications transform your FiveM server from vanilla GTA V into a unique world. Here's how to implement them properly.

What Are MLOs?

MLOs are custom-built interiors that exist inside GTA V's world. They're placed at specific coordinates and loaded as streaming assets. Examples:

  • Custom police stations
  • Hospital interiors
  • Gang hideouts
  • Nightclubs
  • Dealerships
  • Apartments

File Types

.ymap (Map Placement)

Defines where objects are placed in the world. Contains coordinates, rotation, and references to models.

.ytyp (Type Definition)

Defines object properties. Links models to collision data.

.ydr (Drawable Model)

The 3D model itself - the visual geometry players see.

.ybn (Bounds/Collision)

Collision data. Without this, players walk through walls.

.ytd (Texture Dictionary)

Textures applied to models. Resolution affects VRAM usage.

Installation

Basic MLO Structure

my_custom_interior/
  fxmanifest.lua
  stream/
    my_interior.ymap
    my_interior.ytyp
    my_interior.ydr
    my_interior.ybn
    my_interior.ytd

fxmanifest.lua

fx_version 'cerulean'
game 'gta5'

this_is_a_map 'yes'

The this_is_a_map 'yes' flag tells FiveM to treat all files in stream/ as map assets.

server.cfg

ensure my_custom_interior

IPLs (Interior Proxy Levels)

Some MLOs require IPL loading - they need specific game interiors enabled:

-- Client-side
Citizen.CreateThread(function()
    RequestIpl("v_hospital")
    while not IsIplActive("v_hospital") do
        Wait(100)
    end
end)

Common IPLs:

  • Hospital interiors
  • Casino
  • Nightclub
  • Studio apartments
  • Heist setup rooms

Performance Impact

Streaming Budget

GTA V has a streaming budget - a limit on how many models can be loaded simultaneously. Custom MLOs consume this budget:

Small interior (barbershop, small office): 2-5MB streaming Medium interior (police station, hospital): 10-30MB streaming Large interior (full custom area): 30-100MB+ streaming

Poly Count

Each model adds polygons. When players are inside an MLO, GTA V only renders the interior (exteriors are culled). But when approaching from outside, both exterior and interior models may load.

Collision Complexity

Complex collision (many surfaces, detailed shapes) is more expensive for physics calculations. Simplified collision works fine for most interiors.

Optimization Tips

LOD (Level of Detail)

Well-made MLOs include LOD levels - simplified models for distance viewing:

  • LOD 0: Full detail (player is inside)
  • LOD 1: Reduced detail (player is nearby)
  • LOD 2: Minimal (player is far away)

Texture Optimization

  • Maximum texture: 2048x2048 for large surfaces
  • Small objects: 512x512 or 1024x1024
  • Use texture atlases (combine multiple textures into one file)

Culling

Good MLOs have proper culling volumes - invisible boundaries that tell the engine what to render. Without culling, GTA V renders everything inside the interior even when the player can't see it.

Common Issues

Falling through floor: Missing or incorrect .ybn collision file. Verify the collision matches the visual model.

Invisible walls: Collision exists but no visual model. Check .ydr files.

Missing textures (pink/purple): .ytd file not streaming correctly. Verify file names match references in the model.

Performance drop near MLO: Interior is too complex or missing LODs. Consider a simpler alternative.

On Space-Node's FiveM hosting, NVMe SSD ensures fast streaming of custom assets. Players enter custom interiors without loading pauses, and the high RAM allocations keep assets cached for quick re-entry.

Space-Node Team

About the Author

Space-Node Team – Infrastructure Team – Experts in game server hosting, VPS infrastructure, and 24/7 streaming solutions with 15+ years combined experience.

Since 2023
500+ servers hosted
4.8/5 avg rating

Our team specializes in Minecraft, FiveM, Rust, and 24/7 streaming infrastructure, operating enterprise-grade AMD Ryzen 9 hardware in Netherlands datacenters. We maintain GDPR compliance and ISO 27001-aligned security standards.

View Space-Node's full team bio and credentials →

Start Streaming in Minutes

Join content creators worldwide who trust our streaming infrastructure. Setup is instant and support is always available.

FiveM Custom Maps and MLOs: Streaming and Performance Guide