MLOs (custom interiors) are one of the biggest ways to make a FiveM server feel unique — custom police stations, hospitals, clubs and shops players can actually walk into. This guide covers how to install MLOs and custom maps in FiveM, and how to fix the common problems.
What’s in an MLO
An MLO resource is just a FiveM resource with map data. Inside you’ll typically find a stream/ folder containing:
- .ymap — the world placement (where objects sit in the map). Missing these = the interior doesn’t show.
- .ytyp — object type definitions.
- .ybn — collisions. Missing these = players fall through the floor.
- .ytd — textures.
How to install an MLO
- In your server’s
resourcesdirectory, create a[maps]folder to keep map resources organised. - Upload the entire MLO folder inside
[maps]without changing its contents. - Make sure it has a correct
fxmanifest.lua(see below). ensure resourcenamein your server.cfg.- Restart the server and head to the interior’s location in-game.
The fxmanifest.lua for a map
A map resource’s manifest needs a couple of map-specific lines that regular scripts don’t:
fx_version 'cerulean'
games { 'gta5' }
this_is_a_map 'yes'
files { 'stream/**/*' }
data_file 'DLC_ITYP_REQUEST' 'stream/yourtype.ytyp'
The this_is_a_map 'yes' directive is required for MLOs to load, and the data_file 'DLC_ITYP_REQUEST' line registers your .ytyp definitions. Our fxmanifest guide covers the manifest in general.
Fixing common MLO problems
- Interior not showing — almost always missing or unstreamed
.ymapfiles. Check the stream folder and the files declaration. - Falling through the floor — missing
.ybncollision files. - Map conflicts — two MLOs editing the same location will fight; don’t load duplicates of the same interior.
- Performance — oversized
.ytdtextures hurt streaming; keep them reasonable (see our optimization guide).
MLOs and jobs
Custom interiors shine when paired with jobs — place markers and ox_target zones inside an MLO for shops, armories, garages and crafting stations. See our guide to adding jobs.
Where to get MLOs
The official cfx.re forum hosts many free MLOs and YMAP maps, while marketplaces like Tebex sell premium interiors. Free YMAP-only maps (props placed in the world) install the same way as full MLOs — the difference is an MLO includes a proper interior shell you can walk inside, while a YMAP is usually exterior prop placement.
Testing your interior
After installing, you need to actually reach the interior to verify it. Use a teleport (admin menu, or a /tp command) to the MLO’s coordinates — good MLO resources list the entrance coordinates in their description. Walk the whole interior to check for missing collisions (falling through floors), missing textures (untextured surfaces), and z-fighting with the base-game interior it replaces.
MLO vs interior swaps (IPL)
Some interiors are toggled via the game’s interior proxy loader (IPL) rather than streamed map files — for example enabling a building’s existing interior. A true custom MLO streams its own shell, collisions and props. Most modern custom interiors are full MLOs; just be aware the two approaches exist so you follow the right instructions for the resource you downloaded.
Frequently asked questions
How do I install an MLO in FiveM?
Place the MLO resource in resources/[maps], ensure its fxmanifest has this_is_a_map 'yes' and streams the map files, add it to server.cfg, and restart.
Why is my MLO interior not showing?
Usually missing or unstreamed .ymap files, which place the interior in the world.
Why am I falling through the floor in my MLO?
Missing .ybn collision files.
Ready to play?
Run your own FiveM server with XGamingServer
Spin up an always-on FiveM server your friends can join in minutes — no port-forwarding, no tech headaches.




