// FiveM

Installing MLOs and custom maps on your FiveM server

Installing MLOs and custom maps on your FiveM server

Anyone who plays FiveM knows the default Los Santos by heart by now. If you want your server to feel different from all the others, MLOs and custom maps are the fastest way: your own police station, a fully detailed hospital or a clubhouse that exists in no other city. The good news: installing an MLO isn't technically difficult. The real work is choosing what to add, and knowing what every addition costs.

MLO or YMAP: what's the difference?

The terms are often used interchangeably, but they're different things:

  • An MLO is a fully fledged interior: a building with its own walls, doors and rooms you can walk into without a loading screen. A good MLO has proper collision (you don't fall through the floor) and portals, the invisible transitions that determine how light and sound travel from outside to inside.
  • A YMAP is a placement file: it puts existing objects into the world. Think extra fences around a car park, market stalls on a square or a road closure. Handy for set dressing, but it doesn't create new interiors.

In practice, a downloaded "map" often contains both: an MLO for the interior and a YMAP that dresses up the outside. You can also tell the difference from the files: a resource with only a .ymap mostly adds decoration, while a real MLO also ships .ytyp and collision files. For you as an admin it makes little difference; you simply install it as a single resource.

Where do you find trustworthy MLOs?

Roughly two flavours:

  • Paid MLOs you buy from the creators themselves, usually through a Tebex store linked to your Cfx.re account. You pay for quality: correct portals, optimised textures and updates when something breaks. Do read the licence: most apply to a single server and prohibit sharing or reselling.
  • Free MLOs you'll find on community forums and in creators' Discord servers. There's beautiful work among them, but quality varies wildly. One poorly optimised free MLO can cost more performance than three good paid ones.

Stay away from leaked paid MLOs. Apart from the fact that you're hurting the creator and violating the licence, with a leak you never know what's been slipped in. The same vigilance you should have with scripts applies here in full: only download from sources you trust.

How to install an MLO

  1. Upload the resource. Extract the archive and upload the folder to your server's resources folder, through your panel's file manager or via SFTP. No spaces or odd characters in the folder name.
  2. Check the structure. The folder should contain an fxmanifest.lua and a stream folder with the map's own files, such as .ydr, .ybn, .ytyp and .ymap files. Everything in that stream folder is automatically streamed to your players.
  3. Add an ensure. Put ensure name-of-the-map in your server.cfg, preferably in its own block next to your other maps, so you keep the overview.
  4. Restart and go take a look. Restart the server and walk to the location in game. Test the doors, the lighting and whether you fall through anything.

A minimal fxmanifest.lua for a map looks like this:

fx_version 'cerulean'
game 'gta5'

this_is_a_map 'yes'

That last line tells FXServer this is a map resource. Virtually every serious MLO ships with this file already correct; you only need to check it.

If you see nothing change in game, look at the live console first: errors while loading a resource are spelled out there word for word. If an old version of a map stubbornly lingers after an update, the server cache may be the culprit; the knowledge base explains what the Clear internal cache option does and when to use it.

Common problems

Texture loss

Blurry or missing textures elsewhere in the city are the classic sign that you're streaming too many heavy assets. Your players' video memory is the bottleneck here, not your server: every MLO and every custom model competes for the same space. So the solution is rarely a heavier server, but almost always pruning: remove MLOs you're not actively using and pick optimised versions.

Conflicting interiors

Two MLOs modifying the same location produce flickering walls, doubled interiors or holes in the world. This often happens when you install a new police station while an old version is still running in another resource. So keep track somewhere of which resource modifies which location, and remove the old one completely before adding the new one.

Black windows or strange lighting

That usually points to missing or broken portals in the MLO itself. There's little you can repair as an admin: report it to the creator, or pick a different MLO.

Long loading times

Everything you stream, new players have to download first. Nobody notices a few MLOs, but a city with gigabytes of maps and models makes joining noticeably slow. So weigh up for each MLO whether it's worth the extra waiting time, especially if you want to attract lots of new players who don't have anything cached yet.

Tips for RP cities

  • Choose for playability, not for collecting. A police station, a hospital and a few business premises where roleplay actually happens do more for your city than thirty interiors nobody ever visits.
  • Add one MLO at a time. Restart, test, and only then move to the next. If something goes wrong, you'll know immediately which addition caused it.
  • Watch your disk space. MLOs are considerably bigger than scripts; a well-stocked RP city easily eats up a few gigabytes. The FiveM plans from MC-Node run on NVMe storage and can be cancelled monthly, so you can always upgrade when your city outgrows its plan.
  • Keep the original downloads. Then after a failed modification you can always go back to a clean version.

Further reading

// TRY IT YOURSELF
Your Minecraft server online in 60 seconds
View packages →