Configuration
Config File (config.lua)
The config/config.lua file defines your server branding, story options, and all available spawn locations with full control over their visuals and coordinates.
Locale
Sets the active language for the UI.
Config.Locale = "en"
Must match a file in the locales/ folder (default: en.lua)
UI Settings
Config.UISettings = {
['serverHeader'] = "SAKA <span>ROLEPLAY</span>",
['storeLabel'] = "SAKA <br>STORE",
['serverLabel'] = "Saka Roleplay",
['serverLogo'] = "https://.../sakaIcon.png",
['serverLogoLight'] = "https://.../serverIcon.png",
}
Used to brand the spawn UI:
serverHeader: Displayed at the top of the UI
storeLabel: Label shown in the store/info section
serverLabel: Label shown inside UI panels
serverLogo / serverLogoLight: URLs for logos (dark and light themes)
💡 Host these images yourself or use a CDN for maximum performance.
Character Stories Options
Config.canWriteStory = true
If true, players can write a short character story before spawning
Shown in the UI if enabled
Spawn Locations
Config.Locations = {
{
key = "police_station",
cityName = "Mission Row",
placeName = "Police Department",
imageUrl = "../spawnImages/lspd.png",
mapIcon = "./mapIcons/lspd.png",
spawnCoords = vector4(411.14, -964.88, 28.47, 92.0)
},
...
}
Each entry supports:
key: Internal identifier
cityName: Displayed on the card
placeName: Subtitle / location name
imageUrl: Image shown in the selector card (can be relative or hosted)
mapIcon: Small icon shown on minimap overlay
spawnCoords: Exact coordinates where the player will spawn
🗺️ Add or remove entries freely — the UI updates dynamically based on this list.
Theme File (theme.lua)
This file defines two built-in visual themes:
light — brighter UI
dark — darker, more immersive look
Each theme is split into three sections:
general
shortcuts
settings
General
Controls base UI colors like background and close button styles.
general = {
textColor = "#000000",
textColorSecondary = "#000000",
background = "#FFFFFFBF",
closeBackground = "#0000003D",
closeBorder = "#0000001C",
closeFill = "#000000",
}
Shortcuts
Styles all keyboard hints, buttons, and borders.
shortcuts = {
default = "#0000005C",
active = "#FFFFFF",
textColor = "#FFFFFF66",
activeTextColor = "#00000099",
boxBackground = "#0000003D",
keyBackground = "#000000",
keyTextColor = "#FFFFFF",
keyboardBorder = "#0000000F",
keyboardBorder2 = "#0000005E",
keyboardBorder3 = "#00000027",
keyboardBackground = "#0000004D",
keyboardBackground2 = "#000000AB",
boxShadow = "inset 0px 0px 4px rgba(0, 0, 0, 0.25), 3px 3px 0px rgba(0, 0, 0, 0.41)",
boxShadowActive = "3px 3px 0px rgba(191, 191, 191, 0.41), inset 0px 0px 4px rgba(0, 0, 0, 0.25)",
divBorder = "#0000001C",
}
Settings
Used for toggles, sliders, music player, and theme panel.
settings = {
themeBackground = "#0000003D",
themeBorder = "#000000",
themeFill = "#000000",
boxBackground = "#00000033",
switchBackground = "#0000001A",
switchCircle = "#000000",
activeSwitchBackground = "#00000066",
divBorder2 = "#0000002B",
headerDivider = "#0000002B",
dividerColor = "#0000001A",
textColor = "#00000073",
textColorSecondary = "#00000078",
musicPlayerBackground = "#00000012",
musicPlayerFill = "#000000A3",
musicBackground = "#0000000D",
selectedBgBorder = "#000000",
selectedBg = "#FFFFFF",
bgText = "#FFFFFF",
bgColor = "#000000",
selectedBgText = "#000000",
buttonBg = "#00000038",
svgFill = "#00000029",
}
💡 All color values accept either HEX (#RRGGBB, #RRGGBBAA) or rgba().
Creating Your Custom Theme
You can also duplicate and rename the "light" or "dark" block to create a custom theme:
["yourThemeName"] = {
general = { ... },
shortcuts = { ... },
settings = { ... },
}
Then activate it in your config:
Config.Theme = "yourThemeName"
Open Event
To trigger Saka Spawn Selection from other resource use this events.
TriggerEvent('saka-spawenselector:client:showUI')
or
TriggerEvent('saka-spawenselector:client:showUI',source)
Last updated