Save 20% with WELCOMEView sales

MLO vs YMAP: What the Two FiveM Map Files Actually Do

The short answer. A .ymap is a placement file: it says which objects stand where, at what angle, and from how far away they draw. An MLO is an interior, defined by a .ytyp archetype carrying rooms and portals, and shipped as its own resource. Every MLO includes a ymap. Almost no ymap is an MLO.

That distinction decides what you can actually walk into, what breaks when two resources disagree, and whether a listing is worth what it asks. This page separates the file types, then explains how to read a product listing against them.

What each file does

File What it defines Creates an enterable interior? Typical use
.ymap Entity placement: position, rotation, draw and LOD distances for objects that already exist in the game or in an accompanying model file No, not on its own Adding props to a street corner, removing a fence, dressing an existing location
.ytyp Archetype definitions, and for an MLO the room list, portals and entity sets that make an interior navigable Yes: this is the file that makes an MLO an MLO Declaring a new interior, or new object types a ymap can then place
.ydr, .ydd, .ytd The drawable geometry, drawable dictionaries and texture dictionaries the placement refers to No The actual model and textures behind a prop or a building shell
MLO resource A resource folder with an fxmanifest.lua and a stream directory carrying all of the above together Yes, and this is what a shop listing normally means by “MLO” A finished interior you start like any other resource

Why this changes what you are buying

A listing described as a ymap is usually a placement edit. It is cheap, it is easy to reverse by stopping the resource, and it will not give players a door they can walk through into a new space. A listing described as an MLO gives you an interior with collision, rooms and portals, which is a different amount of work and a different price.

Both arrive the same way. Cfx.re documents that FiveM and RedM support raw .ymap and .ytyp files inside a resource, so a map resource does not need to be packed into a DLC container to load. The manifest directive this_is_a_map marks a resource as a GTA map and reloads map storage when that resource loads, and data_file registers a file of a given type with the game’s extra content system.

Where the two collide

  • Two resources, one coordinate. If a ymap moves props at the same location an MLO occupies, the resource that loads later wins. The symptom is props floating inside a wall, or an interior that looks correct from outside and is empty when entered.
  • An MLO without its ytyp. The shell streams, the interior does not. Players see the building but pass through the door into nothing.
  • A ymap referencing models that are not streamed. The placement loads and the object does not, so the edit silently does nothing.

None of these are framework problems. A map asset does not know or care whether the server runs ESX, QBCore or Qbox, which is why MLOs are listed without a framework and scripts are not.

How to tell which one a listing is

  1. Look for the words interior, rooms or portals. Those describe an MLO. Placement, prop set or map edit describe a ymap.
  2. Check whether the description mentions a .ytyp. A map edit that ships one is declaring new archetypes; a plain placement edit does not need one.
  3. Check the coordinates or the named location. Two MLOs at the same address cannot both run.
  4. Check whether the seller states which other map resources it conflicts with. Anyone who has shipped an interior knows that list exists.

If a listing answers none of those, treat it as a placement edit and price it accordingly.

Tooling, if you want to look inside

CodeWalker is the open-source GTA V map and asset explorer used to open .ymap and .ytyp files, inspect what a resource actually places, and find the coordinate collisions above before they reach a live server. You do not need it to install anything. It is how you check a claim rather than trust one.

Last updated: 1 August 2026.

Frequently Asked Questions

Is an MLO just a YMAP with a different name?

No. A ymap places objects. An MLO is an interior defined by a ytyp that carries rooms and portals, and it ships a ymap as one of its files. Every MLO contains a ymap; a ymap on its own cannot create an interior you can walk into.

Do MLOs need a specific framework?

No. A map asset is streamed content and does not call framework functions, so it runs the same on ESX, QBCore, Qbox or a standalone server. Scripts that use an interior, such as a job or a robbery, are framework-specific; the interior itself is not.

Why does my MLO show the building but no interior?

That is the usual signature of a ytyp that is not loading, or of a second map resource occupying the same coordinates and starting after yours. Check that the ytyp is present in the streamed files and stop other map resources at the same location one at a time.

Can two MLOs use the same location?

Not at the same time. Whichever resource loads last wins, and the result is usually a broken mix of both. Interiors at popular addresses conflict most often, so check the coordinates before buying a second interior for the same place.

Do I need CodeWalker to install an MLO?

No. Installing is a normal resource install: drop the folder in your resources directory and start it. CodeWalker is for inspecting what a resource places, which is how you confirm a conflict rather than guess at one.

Sources (4)