Death·Installazione

Installazione

DS-Death sostituisce il ciclo predefinito di morte/knockout/revive del tuo ambulance job. L’installazione è quasi tutta drag-and-drop, con qualche piccola modifica a esx_ambulancejob o qb-ambulancejob perché il flusso di revive esistente passi il controllo a DS-Death.

Download

Scarica lo script da portal.cfx.re. Assicurati di aver effettuato l’accesso con l’account FiveM che hai usato per acquistarlo.

Estrazione

Estrai l’archivio e sposta la cartella DS-Death ottenuta in un punto qualsiasi della cartella resources del tuo server.

Dipendenze
DS-Death richiede mysql-async. ESX e QBCore sono entrambi supportati e rilevati automaticamente all’avvio.

Esegui l'SQL

Esegui il file SQL corrispondente al tuo framework. Aggiunge una singola colonna ds_death, usata per mantenere lo stato di morte anche tra una disconnessione e l’altra.

ESX

Esegui INSTALLATION_GUIDE/ESX.sql nel tuo database: aggiunge ds_death TINYINT(1) alla tabella users.

QBCore

Esegui INSTALLATION_GUIDE/QBCore.sql nel tuo database: aggiunge ds_death TINYINT(1) alla tabella players.

Installa l'item per rianimare

DS-Death richiede un item aidkit per rianimare i giocatori a terra. Aggiungilo all’inventario che usi.

ESX (inventario predefinito)

Esegui INSTALLATION_GUIDE/INSTALL_ITEM/ESX/item.sql nel tuo database per registrare l’item.

ESX (ox_inventory)

Apri INSTALLATION_GUIDE/INSTALL_ITEM/ESX/OX_INVENTORY_ITEM.md, copia lo snippet e incollalo in ox_inventory/data/items.lua:

ox_inventory/data/items.lua
['aidkit'] = {
    label = 'Aid Kit',
    weight = 100,
    stack = true,
    consume = 0,
    allowArmed = true
},

QBCore

Apri INSTALLATION_GUIDE/INSTALL_ITEM/QBCORE/item.md, copia lo snippet e incollalo in qb-core/shared/items.lua:

qb-core/shared/items.lua
['aidkit'] = {['name'] = 'aidkit', ['label'] = 'Aid Kit', ['weight'] = 0, ['type'] = 'item', ['image'] = 'aidkit.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'Useful to revive knocked people'},
Usare un item diverso
Se hai già un item medico che preferisci usare, cambia ItemRevive e ItemLabel in config.lua invece di installare aidkit.

Modifica il tuo ambulance job

DS-Death prende in carico il flusso di morte e revive, quindi gli handler esistenti in esx_ambulancejob / qb-ambulancejob vanno rimossi o reindirizzati. I blocchi esatti da eliminare e sostituire sono inclusi nella resource:

ESX (esx_ambulancejob)

Segui INSTALLATION_GUIDE/ESX.txt, tre modifiche in tutto:

  • esx_ambulancejob/client/main.lua: rimuovi (o commenta) l’handler esx:onPlayerSpawn che azzera isDead.
  • esx_ambulancejob/client/main.lua: sostituisci l’handler dell’evento esx_ambulancejob:revive con una riga che passa il controllo a DS-Death:
    esx_ambulancejob/client/main.lua
    RegisterNetEvent('esx_ambulancejob:revive')
    AddEventHandler('esx_ambulancejob:revive', function()
        TriggerEvent('DS-Death:revive')
    end)
  • esx_ambulancejob/client/job.lua: nella funzione revivePlayer, cambia if IsPedDeadOrDying(closestPlayerPed, 1) then in if closestPlayerPed then, così lo stato di knockout di DS-Death conta come rianimabile.

QBCore (qb-ambulancejob)

Segui INSTALLATION_GUIDE/QBCORE.txt, due modifiche:

  • qb-ambulancejob/server/main.lua: rimuovi (o commenta) il blocco QBCore.Commands.Add("revive", ...) esistente. DS-Death registra il proprio.
  • qb-ambulancejob/client/dead.lua: rimuovi l’handler gameEventTriggered che gestisce il laststand e il timer di morte. DS-Death sostituisce quel flusso.
Fai un backup prima di modificare
Queste modifiche toccano resource del framework. Tieni una copia della cartella esx_ambulancejob / qb-ambulancejob originale prima di procedere, così puoi tornare indietro se qualcos’altro nel tuo setup dipende dal comportamento precedente.

Assegna i permessi admin

QBCore

Aggiungi il permesso ace al tuo server.cfg così gli admin possono usare i comandi di revive:

server.cfg
add_ace group.admin ds_death allow

ESX

I permessi si gestiscono tramite l’array AuthorizedGroup in config.lua. Il valore predefinito {'admin'} copre già la maggior parte dei setup.

Avvia la resource

Aggiungi lo script al tuo server.cfg:

server.cfg
ensure DS-Death
Ordine di avvio
Assicurati che il tuo framework (ESX / QBCore) e l’ambulance job modificato partano prima di DS-Death nell’ordine di avvio.

Configurazione

Apri config.lua e adatta lo script al tuo server. Le impostazioni più utili:

  • KnockoutTime / RespawnTime: quanto restano a terra i giocatori e quando diventa disponibile il respawn.
  • HeadShotDeath: salta lo stato di knockout e uccide sul colpo alla testa.
  • RespawnPosition / RespawnSamePos / RespawnCost: dove tornano i giocatori e se il respawn costa contanti o soldi in banca.
  • CombatLogging: puoi lasciare il giocatore morto al rientro (CheckDeath) oppure farlo respawnare in automatico (RespawnOnJoin).
  • RemoveItemsAfterRPDeath: fa perdere soldi, armi e item alla morte RP, con una whitelist KeepItems per cose come i documenti.
  • Progressbar: NATIVE, RPROGRESS o CUSTOM (collega la tua in CustomProgress / StopCustomProgress).
  • EMSCall: inserisci qui il trigger di chiamata del tuo telefono, così la chiamata EMS in-game passa dal telefono invece che dalla notifica predefinita.
  • EnableLogs: attiva i log tramite webhook Discord e configurali in webhooks.lua.
Hook personalizzati
OnKnocked, OnDeath, OnRevive e OnRespawn in config.lua sono funzioni vuote, pronte per i tuoi trigger o export. CanDie ti permette di disattivare il ciclo di morte in modo condizionale: utile per zone minigioco, eventi softair o arene PvP.

Sei ancora bloccato?

Apri un ticket nel nostro Discord e ti diamo una mano.

Entra nel Discord →