# Customization

<details>

<summary>Basic options (config.lua)</summary>

```lua
--------------------------------
-- Choose Game Edition ---------
-- Detailed in: game-edition/ --
--------------------------------
Config.GameEdition = 'default' -- 'default', 'halloween', 'xmas'

--------------------------------------------------
-- Choose Doll Sound Mode ------------------------
-- 1: Doll sings a specific song -----------------
-- 2: Doll says "Green Light" and "Red Light" ----
--------------------------------------------------
Config.DollSoundMode = 2

-------------------------
-- Basic Configuration --
-------------------------
Config.Fee = 100
Config.FeeItem = nil -- 'item_invite_card' -- Player should have the item
Config.RewardItem = nil -- 'item_dalgona_game_access' -- Player receives the item when win the game
Config.StartPoint = vec3(2084.704, 3363.02, 45.91064)
Config.StartPointEnabled = true
Config.GameDuration = 120000 
Config.GameStartInterval = 10000
Config.Locale = "en"
Config.GameName = "Red Light, Green Light"
Config.StartPointSize = 7.5
Config.StartPointColor = {255, 0, 0, 125}
Config.StartPointBlip = {
    Id = 1,
    Color = 1,
    Scale = 0.75,
    Enabled = true,
}
Config.ShowWinnerMessageGlobally = false

---------------------------
-- Restricted Animations --
---------------------------
Config.RestrictedAnimations = {
    {'missminuteman_1ig_2', 'handsup_base'}, 
    {'missminuteman_1ig_2', 'handsup_enter'},
    {'random@mugging3', 'handsup_standing_base'}, 
    {'dead', 'dead_a'},
    {'mp_arresting', 'idle'}, 
}

--------------------------
-- Teleport Coordinates --
--------------------------
Config.SpawnCoords = {
    GameStarted = {
        vec3(1173.15, 7151.82, 2247.62),
    },
    GameSuccess = { 
        vec3(2123.95, 3298.85, 56.55),
    },
    GameFailed = { 
        vec3(2060.04, 3285.5, 44.89),
    }
}

--------------------
-- Player Clothes --
--------------------
Config.PlayerOutfits = {
    ["male"] = {
        {
            -- pants_1, pants_2
            [4] = {5, 0},
             -- shoes_1, shoes_2
            [6] = {43, 0},
            -- tshirt_1, tshirt_2
            [8] = {0, 1},
            -- torso_1, torso_2
            [11] = {74, 0},
            -- mask_1, mask_2
            [1] = {0, 0},
            -- arms, arms_2
            [3] = {0, 0},
            -- bags_1, bags_2
            [5] = {0, 0},
            -- chain_1, chain_2
            [7] = {0, 0},
            -- bproof_1, bproof_2
            [9] = {0, 0},
            -- decals_1, decals_2
            [10] = {0, 0},
        },
    },
    ["female"] = {
        {
            [4] = {66, 0},
            [6] = {80, 0},
            [8] = {2, 0},
            [11] = {147, 0},
            [1] = {0, 0},
            [3] = {0, 0},
            [5] = {0, 0},
            [7] = {0, 0},
            [9] = {0, 0},
            [10] = {0, 0},
        },
    }
}
```

</details>

<details>

<summary>Advanced options (config.lua)</summary>

```lua
-------------------------
-- Player Tick Options --
-------------------------
Config.EnableGodmode = true
Config.InGameTick = function(playerPed)
    DisableControlAction(2, 37, true) -- Disable Weaponwheel
    DisablePlayerFiring(playerPed, true) -- Disable firing
    DisableControlAction(0, 45, true) -- Disable reloading
    DisableControlAction(0, 24, true) -- Disable attacking
    DisableControlAction(0, 263, true) -- Disable melee attack 1
    DisableControlAction(0, 140, true) -- Disable light melee attack (r)
    DisableControlAction(0, 142, true) -- Disable left mouse button (pistol whack etc)
end

------------------
-- Doll Options --
------------------
Config.DollyWatchingRandomTime = {2000, 3000, 4000, 5000, 6000, 7000, 8000}
Config.DelayBeforeEliminatingPlayer = 100

---------------------
-- Clothes options --
---------------------
Config.AllowCustomPeds = false
Config.ChangePlayerSkin = true
Config.KeepGameClothesForWinners = true
Config.UsePedModelsInsteadOutfitsForPlayers = false
Config.PlayerPeds = {"u_m_y_zombie_01", "u_m_y_mani", "u_m_y_juggernaut_01", "u_m_m_streetart_01", "ig_rashcosvki", "ig_claypain"}
Config.UsePedModelsInsteadOutfitsForGuards = false
Config.GuardPeds = {"hc_gunman", "hc_driver", "s_m_y_swat_01"}

-----------------
-- NPC options --
-----------------
Config.EnablePlayerNPCs = true
Config.PlayerNPCSpawnDelay = 2500

---------------------------
-- Game Location Options --
---------------------------
Config.DollyCoords = vec3(1147.02, 7252.68, 2247.62)
Config.DollyIsWatchingHeading = 0.0
Config.DollyIsNotWatchingHeading = 180.0
Config.GunHash = `WEAPON_SNIPERRIFLE`
Config.GunCoords = { 
    vec3(1117.00, 7154.95, 2259.44),
    vec3(1116.89, 7176.52, 2259.37),
    vec3(1116.89, 7214.59, 2259.37),
    vec3(1117.00, 7193.01, 2259.44),
    vec3(1177.62, 7249.56, 2259.37),
    vec3(1177.70, 7227.99, 2259.44),
    vec3(1177.70, 7190.06, 2259.44),
    vec3(1177.62, 7211.63, 2259.37),
    vec3(1177.70, 7152.09, 2259.44),
    vec3(1177.62, 7173.67, 2259.37),
    vec3(1117.00, 7230.30, 2259.44),
    vec3(1116.89, 7251.88, 2259.37),
}
Config.ZoneCoords = {
    GameBorders = {
        vec2(1117.05, 7139.62),
        vec2(1177.84, 7139.29),
        vec2(1177.80, 7261.03),
        vec2(1116.60, 7261.10)
    },
    FinishBorders = {
        vec2(1116.24, 7250.23),
        vec2(1178.55, 7250.45),
        vec2(1177.82, 7261.05),
        vec2(1116.03, 7261.10)
    }
}

----------------------
-- Cutscene Options --
----------------------
Config.Cutscene = {
    Enabled = true,ue 
    Sequence = {
        {
            position = vec3(1147.10, 7250.28, 2251.72),
            rotation = { pitch = 0.0, roll = 0.0, yaw = 0.0 },
            transitionTime = 3000,
            waitTime = 0
        },
        {
            position = vec3(1147.10, 7243.30, 2248.21),
            rotation = { pitch = 0.0, roll = 0.0, yaw = 0.0 },
            transitionTime = 0,
            waitTime = 0
        },
        {
            position = vec3(1172.30, 7167.88, 2250.37),
            rotation = { pitch = 0.0, roll = 0.0, yaw = 180.0 },
            transitionTime = 6000,
            waitTime = 0
        },
        {
            position = vec3(1122.07, 7167.77, 2250.37),
            rotation = { pitch = 0.0, roll = 0.0, yaw = 180.0 },
            transitionTime = 0,
            waitTime = 0
        },
    }
}
```

</details>

<details>

<summary>Game Edition (game-edition/default.lua)</summary>

```lua
-- Requirement: luman-survivalgame-level1-mlo

if Config.GameEdition ~= 'default' then
    return
end

GAME_EDITION = {
    Mlo = {
        Hash = `sq_game_level1_col`,
    },
    Doll = {
        HeadPosition = vec3(1147.029053, 7252.691152, 2251.129883),
        BodyPosition = vec3(1147.029053, 7252.681152, 2248.929883),
        HeadHash = `dolly_head`,
        BodyHash = `dolly_body`,
    },
    Sounds = {
        -- BackgroundMusic = 'default/background.mp3',
        GreenLight = 'default/light-green.mp3',
        RedLight = 'default/light-red.mp3',
        DollSong = 'default/doll-song.mp3',
        DollRotation = 'default/doll-rotation.mp3',
    },

    ----------
    -- Snow --
    ----------
    ToggleSnow = false,

    -------------------
    -- Guard Clothes --
    -------------------
    GuardOutfits = {
        {
            [1] = {4, 0},
            [4] = {19, 0},
            [3] = {16, 0},
            [11] = {65, 0},
            [6] = {25, 0},
            [8] = {15, 0},
        },
        {
            [1] = {4, 1},
            [4] = {19, 0}, 
            [3] = {16, 0},
            [11] = {65, 0},
            [6] = {25, 0},
            [8] = {15, 0},

        },
        {
            [1] = {4, 2},
            [4] = {19, 0}, 
            [3] = {16, 0},
            [11] = {65, 0},
            [6] = {25, 0},
            [8] = {15, 0},
        },
    },
}
```

</details>

<details>

<summary>Sound Mode (shared/sound.lua)</summary>

```lua
------------------
-- Sound Config --
------------------
-- Mode: 1
if Config.DollSoundMode == 1 then
    Config.Song = {
        StartSound = {
            Name = GAME_EDITION.Sounds.DollSong,
            Volume = 0.1,
            Duration = 8000,
            RandomPlaybackRates = {1.0, 1.2, 1.4, 1.6, 1.8},
            RandomWaits = {0},
        },
        StopSound = {
            Name = GAME_EDITION.Sounds.DollRotation,
            Volume = 0.1,
            Duration = 637,
        },
    }
elseif Config.DollSoundMode == 2 then
    Config.Song = {
        StartSound = {
            Name = GAME_EDITION.Sounds.GreenLight,
            Volume = 0.1,
            Duration = 3200,
            RandomPlaybackRates = {0.6, 0.75, 1.0, 1.2, 1.4, 1.6, 1.8},
            RandomWaits = {250, 500, 500, 750, 750, 750, 1000, 1000, 1250},
        },
        StopSound = {
            Name = GAME_EDITION.Sounds.RedLight,
            Volume = 0.1,
            Duration = 1600,
        },
    }
end
```

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lumanstudio.gitbook.io/docs/fivem-scripts/squid-game/doll-game/customization.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
