> For the complete documentation index, see [llms.txt](https://f4-studio.gitbook.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://f4-studio.gitbook.io/documentation/resources/f4-mapeditor.md).

# f4-mapeditor

An in-game map editor for FiveM: build a scene, publish it live, export it as a resource.

An in-game map editor for FiveM. Build a scene out of anything the game has, walk through it as a player, release it to the whole server without a restart, and take it out again as a `.ymap`, a Lua script or a complete resource.

It is standalone. No framework is required, no dependency is required, and nothing has to be installed on the players' side — a released scene is built on each client from what the server sends.

## What it is for

Two jobs that servers usually solve with two different things:

* **Dressing the world.** A café terrace, a market, a stage, a roadblock. Somebody with permission flies there, places it, presses Publish, and every player on the server sees it a second later.
* **Making map resources.** The same scene exported as a `.ymap` and a `client.lua`, as a folder you drop into `resources/`. The editor becomes the tool; the output is an ordinary FiveM map.

## What is in it

<table><thead><tr><th width="230">Area</th><th>What it covers</th></tr></thead><tbody><tr><td><strong>Placing</strong></td><td>Every prop, vehicle and ped the build has — just under twenty thousand with pictures, and any model by name. Raycast placement, a brush that scatters, arrays, align and spread.</td></tr><tr><td><strong>Editing</strong></td><td>A transform gizmo, grid and angle snapping, a corner magnet, multi-select, drag, duplicate, copy and paste, and sixty undo steps that survive the session.</td></tr><tr><td><strong>Scene</strong></td><td>Props, vehicles, peds, lights, particle effects, ropes, markers, blips, openable doors, and motion on anything.</td></tr><tr><td><strong>Organising</strong></td><td>Groups with their own hide and lock, a searchable hierarchy, saved sets you can stamp into the next project, and folders on the project shelf.</td></tr><tr><td><strong>Publishing</strong></td><td>Release to the server with no restart, streamed per player, on a schedule and on a release date.</td></tr><tr><td><strong>Together</strong></td><td>Live rooms: several editors in one project, every edit arriving as it happens, with presence, invitations and a host lock.</td></tr><tr><td><strong>Out and in</strong></td><td>Export as a resource, a <code>client.lua</code>, a <code>.ymap</code> or JSON. Import <code>.f4scene</code>, CodeWalker and Map Editor XML.</td></tr></tbody></table>

## How a scene reaches players

A released project is **not** a map resource and needs no restart. The server holds it, sends it to every client, and each client builds the objects around itself and takes them down again as the player leaves — so a project of four thousand objects costs a player only the few hundred that are near them.

{% hint style="info" %}
Everything the editor builds while somebody is working is a **client-side entity**. A half-finished scene exists only on its author's machine: nobody else can see it, walk into it or be blocked by it, and there is no instance or routing bucket to arrange.
{% endhint %}

## Where to start

* [Requirements](/documentation/resources/f4-mapeditor/getting-started/requirements.md) — what the server needs, which is very little.
* [Installation](/documentation/resources/f4-mapeditor/getting-started/installation.md) — drop it in, give somebody permission, press F6.
* [Editor Overview](/documentation/resources/f4-mapeditor/building-a-scene/editor-overview.md) — the interface, panel by panel.
* [Server Exports](/documentation/resources/f4-mapeditor/developers/server-exports.md) — for the resource that wants to open a scene when an event starts.
