fxmanifest per Mappe
INFO
Configurazione finale della risorsa per far funzionare la mappa su FiveM.
| Obiettivo | Dettagli |
|---|---|
| Cosa imparerai | Configurare il fxmanifest per risorse di mappe FiveM |
| Prerequisiti | File YDR, YBN, YTD, YTYP, YMAP pronti |
Struttura Finale della Risorsa
my_map_resource/
├── fxmanifest.lua
└── stream/
├── mio_edificio.ydr ← Geometria
├── mio_edificio.ybn ← Collisione
├── mio_edificio.ytd ← Texture
├── mio_edificio.ytyp ← Archetype
└── mio_edificio.ymap ← Posizionamento
fxmanifest Base
-- fxmanifest.lua
fx_version 'cerulean'
game 'gta5'
author 'TuoNome'
description 'Mappa Custom - Mio Edificio'
version '1.0.0'
-- Registra gli archetype (fondamentale!)
data_file 'DLC_ITYP_REQUEST' 'stream/*.ytyp'INFO
Dato che tutti i file sono nella cartella
stream/, FiveM li carica automaticamente. L’unica eccezione è lo.ytypche richiededata_file 'DLC_ITYP_REQUEST'.
fxmanifest per MLO (Interni)
fx_version 'cerulean'
game 'gta5'
author 'TuoNome'
description 'MLO Custom - Interno Banca'
version '1.0.0'
data_file 'DLC_ITYP_REQUEST' 'stream/*.ytyp'
-- Specifico per MLO: porta girevoli, teleporter
client_script 'client.lua'
server_script 'server.lua'Con client.lua:
-- client.lua
-- Gli MLO con entity sets possono essere attivati via script
-- quando il giocatore è nella zona.
-- NOTA: la geometria e il posizionamento sono già gestiti da
-- FiveM (stream/ + data_file DLC_ITYP_REQUEST). Non serve un
-- loop che "carica" la mappa: FiveM lo fa da solo.
local interiorCoords = vec3(100.0, -200.0, 25.0)
local interiorRadius = 50.0
-- Attiva gli entity sets dell'MLO quando il giocatore entra
CreateThread(function()
local lastInside = false
while true do
Wait(500) -- controlli a bassa frequenza, non Wait(0)
local dist = #(GetEntityCoords(PlayerPedId()) - interiorCoords)
local inside = dist < interiorRadius
if inside and not lastInside then
local interiorId = GetInteriorAtCoords(interiorCoords.x, interiorCoords.y, interiorCoords.z)
if interiorId ~= 0 then
-- Esempio: accendi le luci dell'MLO
EnableInteriorProp(interiorId, 'set_bank_lights')
RefreshInterior(interiorId)
end
elseif not inside and lastInside then
local interiorId = GetInteriorAtCoords(interiorCoords.x, interiorCoords.y, interiorCoords.z)
if interiorId ~= 0 then
DisableInteriorProp(interiorId, 'set_bank_lights')
RefreshInterior(interiorId)
end
end
lastInside = inside
end
end)fxmanifest per Oggetti Decorativi
fx_version 'cerulean'
game 'gta5'
author 'TuoNome'
description 'Decorazioni Città - Lampioni e Panchine'
version '1.0.0'
data_file 'DLC_ITYP_REQUEST' 'stream/*.ytyp'
-- Opzionale: modifica del timecycle o della time
client_script 'timecycle.lua'Riepilogo: Template Universale
-- fxmanifest.lua — Template per mappe custom
fx_version 'cerulean'
game 'gta5'
author 'IL_TUO_NOME'
description 'DESCRIZIONE_MAPPA'
version '1.0.0'
-- CORE: dice a FiveM di caricare gli archetype
data_file 'DLC_ITYP_REQUEST' 'stream/*.ytyp'
-- Opzionale: se hai anche script
client_script 'client.lua'
server_script 'server.lua'Test della Risorsa
- Metti la cartella in
resources/ - Aggiungi
ensure my_map_resourceinserver.cfg - Avvia il server
- Vai alle coordinate dello YMAP
Comandi di Debug
TIP
Usa questi comandi in console F8 per verificare che la risorsa sia caricata senza errori.
# Verifica che la risorsa sia caricata
status
# In console F8
reslist
# Verifica errori specifici della risorsa
# Cerca nel log: "my_map_resource"
TIP
✅ Modulo Mappe completato! Passa al Modulo 03 — Armi Custom.
Torna alla: Indice Generale