Skip to content

Full Config Reference

The complete default configs/shared/contact.lua for Dead Drop. Use this as a reference or starting point for your own configuration.

TIP

This is the full unedited config file. For a detailed explanation of each option, see the Configuration page.

Download contact.lua

lua
return {
    -- The fence economy is server-only (configs/server/contact.lua): payout account, the Sellables
    -- price list, and the heat discount curve/bands. Starting heat is configs/server/heat.lua.

    PedModel = 's_m_y_dealer_01', -- contact ped model

    -- Voice line he barks when you start talking to him (GTA speech name, e.g. 'GENERIC_HI',
    -- 'GREET_OUTSIDE', 'GENERIC_WHATS_UP'). false = silent.
    GreetSpeech = 'GENERIC_HI',

    -- Ambient scenario he plays (FiveM "Ped scenarios" list, e.g. 'WORLD_HUMAN_SMOKING',
    -- 'WORLD_HUMAN_LEANING', 'PROP_HUMAN_SEAT_CHAIR'). false or '' = stands frozen.
    Scenario = 'PROP_HUMAN_SEAT_CHAIR',

    SpawnDistance = 50.0, -- metres at which the contact ped spawns via lib.points (and despawns again)

    -- The candidate spawn Locations are server-only (configs/server/contact.lua); the server picks
    -- one at boot and publishes its coords via GlobalState.

    -- Optional map blip. Sprite/colour ids: docs.fivem.net/docs/game-references/blips
    Blip = {
        enabled = true, -- master switch: no blip at all while false
        sprite = 280, -- icon id
        color = 2, -- colour id (2 = green)
        scale = 0.8, -- icon size
        shortRange = true, -- only visible when nearby
        display = 4, -- 2 = minimap only, 4 = map + minimap, 8 = map only
        alpha = 255, -- 0-255 opacity
    },

    -- Reputation: selling earns XP (per-item amounts in the server-side Sellables), raising a
    -- per-character standing persisted to deaddrop_reputation.
    Reputation = {
        Rewards = true, -- master switch for the one-time level-up rewards (false also hides the gold dialog entry)

        -- Reward-claim proximity uses the server-only config.Contact.ClaimDistance, shared with buy/snitch/notify.

        Stats = true, -- show the "how have I been doing?" dialog option (stats are always tracked server-side)

        -- The level ladder (xp thresholds + reward items) and PayoutMultiplier are server-only in
        -- configs/server/contact.lua; the server sends the computed level + tier key, so none of it is dumpable.
    },

    -- Buy: purchase gear (the hacking tablet + hack USBs) from the contact. The catalog (items,
    -- prices, level gates) + pay account are server-only (configs/server/contact.lua) and the
    -- backend re-checks everything.
    Buy = {
        Enabled = true,
    },

    -- Selling: whether the contact buys sellables at all. false hides every sell option AND the
    -- backend refuses the fence callbacks, so it can't be bypassed. Looting keeps working - this
    -- only turns off selling TO the contact. Prices/sellables: server-side contact config.
    Selling = {
        Enabled = true,

        -- Trunk selling: sell every sellable in a parked vehicle's trunk in one deal. The vehicle
        -- must be UNLOCKED, empty of people, and within Radius metres; the backend re-checks all
        -- of it (plus the optional ownership rule in the server-side config) at quote and sale.
        Trunk = {
            Enabled = true,
            Radius = 10.0, -- metres from the contact a vehicle may sit and still be sellable-from
        },
    },

    -- Snitch: a level-gated, per-use fee to mark the live drop's search area on your map (the same
    -- circles the triggering crew sees; see configs/event.lua PublicDropIntel). No drop = no charge;
    -- already informed = re-marked free. Shows while Enabled, refused below MinLevel.
    Snitch = {
        Enabled = true, -- only the on/off switch is client-side; MinLevel/Fee/Account are server-only (configs/server/contact.lua)
    },

    -- Drop-alert subscription: a ONE-TIME purchase that pings the player whenever a new drop is
    -- made (does NOT reveal the location - that's the Snitch). Delivered by the server-side OnDrop
    -- hook - wire it to your phone resource.
    Notify = {
        Enabled = true, -- only the on/off switch is client-side; MinLevel/Fee/Account + OnDrop are server-only (configs/server/contact.lua)
    },
}