Skip to content

Build your first FiveM shell

Start with a floor plan, furnish it from pictures, and check it with an animated MP ped in third person before exporting.

1. Draw a room

Open Build → Room, then drag a rectangle across the grid. The floor, ceiling and outer walls appear together. The size is shown in metres. Choose New room before drawing a bedroom or bathroom so it gets its own materials and dividing walls.

Use Top to work on the floor plan and 3D to inspect it. WASD moves the editor camera. Right-drag rotates it, middle-drag pans and the mouse wheel zooms. Frame brings the whole shell back into view.

2. Add walls, doors and windows

Choose Draw wall and drag between grid corners. A bright preview shows the wall, its footprint and its length before you release. The wall follows the main horizontal or vertical direction of your drag. It uses the project’s wall height. Select it to change its dimensions or material.

Choose Doors & windows, select an opening and click a wall. The tool removes solid geometry where the opening belongs. On a room wall, click the same opening again to remove it. A custom drawn wall becomes several solid pieces around the opening; use Undo to restore it.

For a working door, use Choose a real door or Furnish → Doors. A suitable single leaf snaps to the wall. Click to see “Do you want to cut this wall to fit the door?” with the measured width and height. Confirm to cut the wall flush to the measured door dimensions, or choose Place without cutting. A red preview means the model will not fit at that position; move away from corners or use a taller wall.

The fitted opening follows its door along the same wall. Removing the door heals the wall, and Undo restores both. Moving the door away heals the old opening; use Fit / cut wall on the new wall. The original drawn wall remains editable. For an imported door, enable Opening door in its inspector, choose the hinge side and opening angle, then use Fit / cut wall. Use a single leaf: a frame, garage shutter or combined double-door model is not suitable for this hinge movement.

Map · native GTA doors exports each door with its own hinge pivot, collision and GTA door-physics flags. The map streams the shell and doors at your chosen coordinates; no script spawns or rotates the doors. Push the door leaf in game. Housing shell · scripted doors retains the companion script for shells that your housing framework moves. The browser Walk swing is a preview; GTA controls native door behaviour in map export.

3. Build with blocks and levels

With Snap to grid enabled, a cube or platform aligns its edges with the grid. Duplicating a block places its copy alongside it. Quarter-turn rotations also preserve edge alignment. Turn snapping off for decorative placement or non-grid dimensions.

For an upper floor, press Add floor. The active level, grid and camera move up by the floor height, and the Room tool is selected. Draw its floor, then place stairs on the lower level. New objects and blocks stay on the selected level.

Use Floor opening and click or drag a rectangle above the stairs. The green preview shows exactly which tiles will open; the matching ceiling below opens too. Start on an existing opening to restore the area (amber preview). On Floor 1 this targets the ceiling into Floor 2; on upper floors it targets that floor. It also works when looking up from below. Draw an upper floor there first; a red preview means there is no upper tile to cut. Walk up the stairs and check headroom. A ceiling or uncut upper floor can obstruct the stairs even when the steps look correct from outside.

4. Furnish from the catalog

Open Furnish. Search by readable name or the original GTA model name. Categories separate beds, seating, tables, storage, kitchen, bathroom, lights, electronics and decoration. The source selector switches between GTA V, your private objects and the shared model library.

Click a picture, move the preview into the shell, then click to place it. R rotates 90 degrees; Q/E adjust by 15 degrees. Hold Shift to place multiple copies. Esc cancels placement. Selecting an object exposes move, rotate, scale and duplicate controls. G selects the move gizmo and E the rotate gizmo. The lit model and footprint show the exact placement before clicking.

Only models that pass conversion and have usable textures and a generated picture are published in the GTA catalog. Very large scenery, race pieces, unsupported articulated models and failed assets are excluded. The catalog is intended for interior construction, not the entire world map.

In Walk edit mode, Free placement and Grid placement sit beside Exit walk. Free placement disables position and rotation snapping. Select an object and drag the green vertical arrow to change its height. Rotate shows X/Y/Z rings for ordinary furniture; drag a ring to tilt or turn it. The inspector also has Heading, Tilt X and Tilt Z. Tilt is kept when moving, saving or exporting. Hinged doors stay upright so their hinges and wall cuts remain valid; structural walls and stairs rotate horizontally.

Place on → Automatic follows the surface under your pointer. Aim at a wall to mount a picture or TV at that height; the preview aligns to the wall. Use Floor, Wall or Ceiling to restrict the surface. Rotate the model if its front faces the wrong way. Grid mode snaps along the wall and vertically without pulling the model away from the wall.

5. Import models and materials

Click Import objects & textures.

  • Upload model: GLB is easiest because it can contain the textures. Put glTF + BIN + images, or OBJ + MTL + images, together in one ZIP. FBX can also be uploaded. Set the longest side in metres if the source model uses a different scale.
  • Sketchfab: connect your own Sketchfab API token, search downloadable models and check the licence. The export retains attribution. A model that is not downloadable cannot be imported through this connection.
  • Poly Haven: search CC0 objects or surface materials directly.
  • Upload texture: provide an albedo/colour image, optionally a normal and roughness map, and set the repeat size in metres.

For other model stores, download an allowed model from your own account and use Upload model. A store page URL is not a model file. Your uploads belong to your account; another user cannot open them through your asset links.

6. Paint and light

Choose a material in Paint, then click a floor, wall, ceiling or block. By default a wall material applies to the room; hold Alt to paint one wall face. Materials repeat in world units so adjacent grid cells do not reset the texture scale.

Add lights under Lights & spots, then adjust their colour, intensity and range. The viewport limits simultaneous preview lights for performance; the export contains the lights in the document. Test the final illumination in FiveM, where game shaders and timecycles affect the result.

7. Place the entrance and walk through

Place Entrance where players should spawn. Place optional stash, wardrobe, exit and logout points if your housing script uses them. The entrance arrow should face into the room.

Press Walk or F to move with the actual Tattoo MP ped and a third-person camera. Move with WASD, use Shift to move faster and Space to jump. Mouse movement looks around; on touch devices use the stick and drag to look. The camera retracts when a wall is behind it. Opening doors swing as you approach.

Press Alt to pause walking and release the mouse. You stay at the same position and can choose furniture, place it, select objects or use their move/rotate controls. Right-drag to look around while editing. Press Alt or Keep walking to continue. While walking, left-click the object in your sights to select it and switch to editing. Esc exits Walk.

Walk through each doorway and upstairs before exporting. Furniture collision is simplified to boxes, so narrow spaces and furniture shapes need extra care.

8. Save and export

Give the project a name and a unique spawn name such as ff_shell_apartment. Save, then export. The price is shown before a paid build. The first successful creation per account is free; later new creations cost 200 credits. The same content is recognised across retries and repeat downloads. Editing the geometry, materials or objects creates different export content.

Choose the Export type before building:

  • Map · native GTA doors: enter the fixed GTA world X, Y, Z and heading. This is selected automatically when opening doors are present unless you explicitly choose Housing shell. The ZIP contains a streamed YMAP, shell and door models, native door archetypes, the exact entrance coordinates and an editable CodeWalker map XML. It contains no game scripts. Use your server’s admin teleport to reach the documented entrance. Changing only map coordinates or export format does not buy the same creation again.
  • Housing shell · scripted doors: your housing framework chooses each instance’s location. The ZIP includes the shell model, its archetype definition, resource manifest, housing configuration snippets, credits and installation notes. Opening doors use the companion script.

A streamed map has a fixed location. Spawning another copy of just its shell model does not also move or duplicate the map’s doors. Use the housing format when your framework needs movable shell instances.

For the housing format: Extract the resource into your FiveM server’s resources folder and add its ensure line to server.cfg. Apply the matching housing configuration from the ZIP. Script versions differ, so review the generated example against your installed script.

Choose Test spawn location: Underground (Z -100 m) is the default; High in the sky (Z 1500 m) is available for testing above terrain. This changes the world altitude of the ZIP’s test command, not the model vertices or entrance offsets. Changing only this setting does not count as another paid creation. Housing scripts choose their own coordinates and remain authoritative.

There is no universal safe height for every custom map. The test command refuses underground spots with water above them. For housing, review the framework’s height/instance settings: upstream qb-houses uses MinZOffset, and qb-interior receives its spawn coordinates. Do not subtract that offset a second time in the exported snippet.

The optional test command is disabled by default. Enable it only while testing with setr ff_shell_test 1, then use the command documented in the ZIP. Turn it off afterward. Check collision, textures, entrance height, all floors and the housing script before using the shell on a public server.

Shells and MLO interiors

A shell is normally spawned by a housing script, often away from the visible map. An MLO is an interior definition with room bounds, portals and entity assignments, placed in the world. Exporting a shell model or adding a YMAP does not by itself create a complete MLO.

For a full mapped interior, use the shell as a modelling starting point and finish the MLO definition in an appropriate tool. The Sollumz interior guide explains room and portal setup. FiveM registers archetypes through DLC_ITYP_REQUEST.

Troubleshooting

Blocks do not align: enable Snap to grid; use dimensions that are multiples of the grid size and 90-degree rotations. Custom sizes or free rotation cannot put every edge on the grid simultaneously.

An opening does not fit: choose a longer or taller wall, a smaller doorway, or move the opening away from the corner.

A model has the wrong size: enter its real longest side when importing, or adjust the placed object’s scale.

An object is invisible: wait for the import to finish, check its original textures, and inspect the import error. Unsupported or untextured GTA candidates do not appear in the catalog.

Export asks for an entrance: place the Entrance point inside the floor plan before building.

A finished build needs payment: the balance may have changed while the build ran. Add credits and use Finish payment; do not pay for a second build of the same content.

A shell appears but cannot be entered: verify the housing offsets and collision. Do not assume a browser preview alone proves game-side behaviour.

Free re-edit and new versions

Your first successful creation is free. Every new creation after that costs 200 credits, charged only after a successful export. Review and confirm the price before building. Failed builds do not consume your free creation or credits.

After export, the project opens in Free re-edit. Select an existing object in the viewport or the object list to move or rotate it. You can adjust existing lights and entrance/interaction marker positions. Existing doors can be repositioned and their fitted wall opening follows their measured size.

The structure, walls, floors, ceilings, stairs, models, sizes, materials and number of objects remain locked. You cannot add, duplicate, delete, replace or import objects into a free revision. Saving or renaming a project does not remove this restriction.

Choose Create new version · 200 credits to open a separate, fully editable copy. Your original remains available for free re-edit. Creating the copy does not charge credits; payment happens only after a successful export of new content. An unchanged, already owned export stays free.

Frequently asked

What does an export cost?

Your first successful creation is free. Each new creation after that costs 200 credits. Failed builds are not charged. Downloading again and re-editing existing object positions, rotations and lights are free. New content requires a new creation.

Is this a full MLO editor?

Shell Creator exports a housing shell: a model with collision, lighting and an archetype definition. A placed MLO additionally needs interior rooms, portals, entity assignments and world placement. A shell export does not automatically supply those MLO features.

Can I import my own furniture?

Yes. Use GLB, FBX, OBJ or a ZIP containing the model and its textures. Uploaded assets remain private to your account. Sketchfab requires your own connected account; Poly Haven provides CC0 models and materials.

Are doors interactive?

Single door leaves can open when approached, both in Walk and in the exported resource. Fit the wall to the door from its actual dimensions. Map export streams native GTA doors with hinge physics, without a door script. Housing shell export keeps a companion script for movable instances. Locks remain part of your server integration.

Try it free

Create a free account, join the Discord for your credits, and build your first asset in minutes.