minimapcayo pericoscaleformstreaming8 min read · updated 9/15/2026

Cayo Perico and the FiveM minimap: how the island map actually works

You install a custom minimap, the mainland looks exactly right, and then a player flies to the island and the radar turns back into stock GTA art mid-flight. Nothing is broken and nothing is misconfigured: Cayo Perico is simply not part of the map you replaced. This explains what the island actually is at the file level, why a normal minimap resource cannot reach it, and what a replacement has to do instead.

Short answer: Cayo Perico is a single Scaleform file (int3232302352.gfx) holding three bitmaps, streamed separately from the six Los Santos texture dictionaries. Replacing the mainland minimap never touches it; replacing the island means rewriting that .gfx and streaming it as its own resource.

Cayo Perico Minimap for FiveM — how the island map works

#Two different assets, two different systems

The radar you see on the mainland is drawn from texture dictionaries. Six of them carry the land — minimap_0_0 through minimap_2_1, a 2 × 3 grid of 3072-pixel squares, 6144 × 9216 in total — with matching sea tiles behind them and a low-detail sheet for zoomed-out views. A minimap resource streams those files, the client resolves them instead of the stock ones, and that is the entire mechanism.

Cayo Perico uses none of it. The island shipped with the heist update as a Scaleform movie: a single file named int3232302352.gfx, streamed like any other asset, carrying its own artwork as embedded bitmaps. The game switches the radar over to it when the player crosses onto the island and switches back on the way out. Because it is a different file with a different name, a resource that streams minimap_*.ytd has no way to affect it — not through load order, not through priority, not through anything in the manifest.

Los Santos and Blaine CountyCayo Perico
FormatTexture dictionaries (.ytd)Scaleform movie (.gfx)
Files6 land + 6 sea + 1 LOD + 65 .ydd geometry1
Resolution6144 × 9216 across the grid1991 × 1995 sea, 1819 × 1773 island
Replaced byStreaming the same .ytd namesStreaming the same .gfx name
Switched byAlways activeArriving on the island / SetToggleMinimapHeistIsland

What each half of the map actually is

#What is inside the island file

A .gfx is a Scaleform movie, which is an SWF with a Rockstar header on it. Inside int3232302352.gfx there are three image tags, each a zlib-compressed, premultiplied ARGB bitmap.

That structure is why the island can be restyled at all without any modelling work: the artwork is a raster, the same kind of input the mainland tiles are, so the same renderer can consume it.

  • One 1991 × 1995 sea bitmap, whose alpha channel encodes the bathymetry as a staircase of shelf bands around the island.
  • Two 1819 × 1773 island bitmaps — the same landmass in two states, which is why a restyle has to treat both or the map changes appearance during the heist.
  • The island sprite sits at an offset inside the sea sprite rather than centred, so anything drawn across both has to account for it.

#How a matching island map is produced

A colour filter over the stock island is the obvious approach and it is the wrong one: the mainland map is not a filtered image either, so the two never agree. The island has to go through the same renderer.

In practice that means decoding the three bitmaps, separating them into the same channels the mainland map is built from — land mask, relief, shading, road hierarchy, coastline, bathymetry, labels — and then colouring those channels with the identical palette. The output matches the mainland by construction rather than by eye, because the same code produced both.

  • The land mask and the coast glow come from the island sprite alpha, so the rim reads exactly like the mainland coastline.
  • Water depth comes from the sea sprite alpha, which is what the mainland source encodes too, so the shelf gradient and the contour rings match.
  • The airstrip is the only feature wide enough to qualify as a trunk route, so it carries the palette accent the way a freeway does on land; the concrete apron beside it is treated as pavement, not road.
  • The stock island carries no lettering at all, so district names are set in the same grotesque, letter-spaced and haloed, as the zone names baked into the mainland art.

#Installing an island map

It installs exactly like a minimap, because it is one. One folder, one ensure line, no script and no dependency. The island resource and the mainland resource never touch the same file names, so load order is irrelevant and the two cannot conflict.

  1. 01 Copy the folder

    Unzip the island resource into your resources directory, next to the mainland map.

  2. 02 Ensure it

    Add one line to server.cfg. It can go anywhere; there is no ordering requirement.

    ensure pityus_minimap_cayo_orange
  3. 03 Clear the client cache

    Streamed assets are cached per server. Delete FiveM.app/data/server-cache and server-cache-priv, then reconnect.

  4. 04 Check on the island, not on the mainland

    The island map only draws while the island radar is active, so the mainland looks unchanged either way. Fly out and look.

resources/
└─ [standalone]/
   ├─ pityus_minimap_orange/
   └─ pityus_minimap_cayo_orange/

server.cfg:  ensure pityus_minimap_orange
             ensure pityus_minimap_cayo_orange

#Making the island exist, not just look right

Replacing the artwork and switching the island on are two separate jobs. FiveM does not load Cayo Perico for you: the world content has to be enabled on the client, the radar has to be told to draw the island map while the player is there, and the water and AI path nodes have to be swapped across with it — or the sea behaves like open ocean and traffic has nothing to drive on.

The island resource sold here carries a small client script for exactly that, next to the texture. It is enabled out of the box, because a server buying an island map almost always wants the island, and every part of it is one flag in config.lua — so it can be turned off entirely if your server already loads Cayo from its own resource.

FlagDefaultWhat it does
Config.EnableIslandScripttrueThe whole script. false leaves the folder as pure artwork
Config.LoadIslandtrueEnables the Cayo Perico world content
Config.SwitchMinimapOnIslandtrueIsland radar while the player is on Cayo
Config.SwitchWaterOnIslandtrueThe alternate water map around the island
Config.SwitchPathNodesOnIslandtrueIsland AI path nodes for traffic and GPS
Config.CheckInterval1000Milliseconds between zone checks

config.lua

#When the island still looks wrong

The last row is the only real conflict case, and it behaves exactly like two mainland minimaps fighting over minimap_0_0.ytd: whichever the server resolves last wins, and that order is not stable between restarts. Keep one island map installed.

What you seeWhyFix
Mainland changed, island did notNo island resource is runningThe island is a separate file — install the island resource too
Island is the old art after installingClient cacheDelete server-cache and server-cache-priv, reconnect
Island art flips between two looksOnly one of the two island bitmaps was restyledUse a build that rewrites both
Island never appears on the radarThe island radar was never enabledSetToggleMinimapHeistIsland(true) while the island is active
Island is there but the water looks wrongAlternate water map not loadedLoadGlobalWaterType(1) on the island, 0 on the mainland
Two island maps fightingAnother resource streams the same .gfxOnly one resource may provide int3232302352.gfx

Symptom, cause, fix

#Does it cost anything at runtime?

No. A replacement file has the same dimensions and the same pixel format as the original, so the island asks the engine for exactly as much memory as it did before. There is no script, no thread and no per-frame work: it is art streamed to the client and drawn underneath the HUD, the same as the mainland map.

The only number that changes is the size on disk, because colour compresses worse than the stock greyscale artwork. That affects the first download and nothing else.

#Do you actually need one?

Only if your players go there. If nothing on your server sends anybody to the island, the mainland map is complete on its own and the island is dead weight.

If you run the heist, an island job, a smuggling or cartel storyline, or a Cayo-based custom map, then players cross that boundary several times a session — and the radar changing style in mid-air is the kind of detail that reads as an unfinished server. That is the entire case for it.

Questions

Why does my custom minimap not change Cayo Perico?
Because the island is not part of the map you replaced. Los Santos comes from six texture dictionaries; Cayo Perico comes from a separate Scaleform file, int3232302352.gfx. A resource streaming minimap_*.ytd cannot affect it.
What file is the Cayo Perico minimap?
int3232302352.gfx — a Scaleform movie holding three embedded bitmaps: the ocean with its bathymetric shelf and two states of the island itself.
Can the island map break my mainland minimap?
No. They stream different file names, so they never compete. You can add or remove the island resource at any time and the mainland map is unaffected.
Does the island map need a script?
The artwork does not, but making the island exist does — and that script is included. It loads Cayo Perico, switches the radar, water and path nodes while a player is on the island, and every part of it is a flag in config.lua. Turn it off in one line if your server already handles the island itself.
Why does the island look like the old art after I installed it?
Client cache. FiveM caches streamed assets per server, so delete FiveM.app/data/server-cache and server-cache-priv and reconnect. If somebody who has never joined sees the new art and you do not, it is definitely the cache.
How much does a Cayo Perico minimap cost?
Here it is a $1 add-on to any of the 36 minimaps, priced per map because it is rendered from that map’s palette. It is optional, and it can be added to a later order without rebuying the map.

Ready to pick a map?

Twelve themes on three base map styles, $8 each, instant download.

Relevant to what you just read