Every docs URL answers with Markdown when you add .md. Site map: llms.txt
Map Tile Builder
Cut artwork into the GTA V minimap and pause map tiles in the browser, place it on the real world map, and download the .ytd files as a ready FiveM resource.
Documentația este deocamdată în engleză.
The Map Tile Builder turns a picture into the map textures GTA V reads for the rotating minimap and the pause menu map, and hands you a resource that streams them. It can also build those tiles from our own top down render of Los Santos, so you can ship a satellite style map without drawing anything.
Everything runs in your browser. Your artwork is never uploaded, and the .ytd files are written on your own machine.
Quick start
- Leave GTA V map render on if you want a satellite map of the real world, or turn it off if your artwork is replacing the map.
- Press Load an image and pick your artwork.
- Drag it on the map until it sits where it belongs. Pull a corner to resize.
- Look at the Tiles strip: those thumbnails are the real textures.
- Press Download resource, unzip it into
resources, addensure <your resource>toserver.cfgand restart the whole server.
The grid you are filling
The game’s world map is a grid of square tiles: 2 columns by 3 rows, each 4500 game units across, with the top left corner at X -4140, Y 8400. That grid is drawn on the map in the tool, with the cell numbers on it.
Two sets of textures back it:
| Set | Read by | Stock size |
|---|---|---|
minimap_<row>_<col> |
the rotating minimap | 512 px, land only |
minimap_sea_<row>_<col> |
the pause menu map | 1024 px, includes the sea |
The row comes first in the name because there are three rows and two columns. minimap_sea_0_0 is the top left tile, minimap_sea_2_1 the bottom right.
Both sets are written by default and both get the same picture, which is what you want almost always.
The road layer on top
The textures are only the bottom layer. The radar, and the pause map once you zoom in, draw the game’s roads and land on top of them from a second set of files: 65 vector tiles named minimap_<row>_<col>.ydd on a finer 8 by 9 grid. If those stay, they cover your tiles and the map looks like the stock one, especially on the radar and when you zoom in.
Hide the game’s road layer (on by default) puts all 65 in the resource as blank files, so only your tiles are drawn. That is also why a postal map has so many more files than six plus six.
The pause map zoomed all the way out shows one more texture, minimap_lod_128, the whole map in 128 px. Zoomed out overview (on by default) writes it from the same layers.
Layers
GTA V map render is our own rasterised pass over the game world, the same tiles the Interactive Map and the Minimap Editor draw. On its own it gives you a photographic map instead of the stock illustrated one.
Your artwork sits on top of it. Load a PNG, JPG or WebP. One big image is easiest: the tool does the cutting, so there is no need to slice anything yourself.
Fill behind paints a flat colour under both layers. Leave it off to keep the parts you do not cover transparent.
Placement
The placement is a rectangle in world coordinates, so it is the same numbers you would read off the game.
- Centre X and Centre Y are where the middle of your picture lands.
- Width and Height are how much world it covers. The hint under each one says how many tiles that is.
- Keep the shape ties them together so the picture is never stretched.
- Rotation turns the artwork, in case your source is not north up.
- Opacity fades it over whatever is under it.
Two buttons do the fiddly part:
- Fit the stock map drops the artwork over the whole 2 by 3 grid, keeping its own proportions.
- Snap to whole tiles rounds the edges onto tile boundaries and clears the rotation, so every tile gets a clean cut with nothing spilling over.
You can also drag the rectangle on the map and pull any corner.
Look
Brightness, contrast, saturation and a tint, applied to the finished tile rather than to the preview. Multiply keeps the picture and pushes it toward the colour, Colorize throws the colours away and rebuilds the image in that one hue. The thumbnails under the map are rendered through the same code as the export, so what you see is what ships.
Output
- Tile size: 512, 1024 or 2048 px. The game ships 512 for the radar and 1024 for the pause map. 2048 is sharper on the pause map and costs four times the memory.
- Format: DXT5 keeps a full alpha channel, DXT1 is half the size but a pixel is either solid or gone.
- Mipmaps: leave them on. Without them the pause map sparkles as soon as it is zoomed out.
- Radar tiles and Pause map tiles pick which sets are written.
- Write all six grid tiles fills every cell of the stock grid even where nothing is drawn, which is how you erase the game’s own map rather than patching part of it.
- Hide the game’s road layer writes the 65 blank
.yddroad tiles described above. Leave it on unless you want the game’s roads drawn over your picture. With it on, all six grid tiles are built, because a cell left to the game would show its bare land texture without the roads. - Zoomed out overview writes
minimap_lod_128.ytd. - Tiles outside the grid builds the cells your artwork reaches beyond the 2 by 3 box. See below.
- Resource name and Extra tile prefix name the folder and the textures outside the grid.
What you get
fivemad_maptiles/
fxmanifest.lua
README.md
map-tiles-project.json
stream/
minimap_0_0.ytd
minimap_sea_0_0.ytd
...
minimap_lod_128.ytd
minimap_0_2.ydd
...There is no script in it. Replacing a map tile is done purely by streaming a file whose name matches the one the game ships, so a manifest and a stream folder is the whole resource. It cannot clash with your HUD, your framework or another minimap script.
Important
Streamed assets are read once when the server starts. restart fivemad_maptiles will not pick up new tiles. Restart the whole server, and if players still see the old map, clear the server cache folder and have them clear their FiveM client cache.
Tiles outside the grid
The stock map scaleform only ever asks for the six tiles it knows about, so a tile at, say, one square east of the grid has nowhere to go. Extra Map Tiles by Alex Licuriceanu adds that ability with its own modified map scaleform, and it counts tiles in the same 4500 unit steps from the same origin as this page.
So when your artwork reaches past the grid, the tool builds those textures too and writes extra-map-tiles-config.lua: the rows to paste into that resource’s config.tiles. The textures stay in the resource you downloaded here, because once a texture dictionary is streamed any resource can ask for it by name.
Extra Map Tiles is released under the PolyForm Noncommercial License 1.0.0. Read its terms before putting it on a server people pay for.
Limits worth knowing
- A tile that ends up completely empty gets no file, and the README lists which cells those were. The game keeps its own tile there. Turn on Write all six grid tiles if you meant to blank it.
- The radar set can be transparent and the game’s own sea shows through it. The pause map has nothing underneath, so transparent is just empty there.
- Map tiles are pictures. A GPS route only draws where the game has path nodes, so a new area needs its own nodes before routing works over it.
- The share link carries the placement and the look, not the artwork. Keep your source image next to the project file.
Related
- Minimap Editor shapes and places the minimap itself, rather than what is drawn inside it.
- Texture Editor if you want to take a single tile further by hand.
- YTD Optimizer to check what the finished files cost in memory.
