# Koja Spawn Selector

Koja Spawn Selector lets players choose where they wake up on a live 3D map of San Andreas — terrain, buildings, the server's time and weather — and then flies the camera from the sky down to their character.
It is built on [koja-lib](/koja-lib/getting-started), uses the same look as [Koja Appearance](/new/appearance) and gives other scripts a full API to add locations, lock them and react to spawns.

This section covers version **1.0.0** of the resource.

## What you get

| Area | What is in it |
| --- | --- |
| 3D map | Radar tiles with level of detail, terrain, extruded buildings, day / night, rain and snow, road route from the last location, game blips |
| Live preview | The card shows the selected spot live from a camera circling it, or the photo taken in the editor |
| Locations | Last location, arrival points, properties, job and gang spawns, city spawns and timed events — grouped, searchable, with favourites |
| Locks | Jobs with a minimum grade, on duty, gangs, ACE permissions and your own checks. Locked spots stay visible with a "Police only" badge |
| Anti combat log | Combat logouts and relogs are recorded, shown to nearby players, logged to Discord and lock the last location. Death forces the hospital, jail forces the prison |
| Vehicles | Spawn in the driver seat of a car — from config, the editor or a garage provider |
| Admin tools | In-game location editor with map picking and photos, timed events, spawn statistics |
| Camera flight | A top-down shot, a descent to the street and a hand-over to the gameplay camera, with a letterbox caption |
| Integrations | ESX, a drop-in replacement for `qb-spawn`, 6 housing scripts, jail and ambulance flags, [Koja Multicharacter](/new/multicharacter) |
| Developer API | Client and server exports, providers, access checks, restrictions, last location rules, events and `import.lua` |
| Languages | 10 languages: cs, de, en, es, fr, it, nl, pl, pt-BR, tr |

## Quick facts

- **Frameworks:** ESX, QBCore and QBox, through koja-lib.
- **Requires:** `koja-lib` and `oxmysql`. `screenshot-basic` only for editor photos.
- **Security:** locks, restrictions and the chosen location are checked on the server. The UI never decides access, and a restricted player cannot cancel.
- **Database:** four `koja_spawnselector*` tables, created on start.
- **UI:** shipped prebuilt in `web/dist`. You only need Node and pnpm to change it.

## Start here

:::steps

### Install it

[Installation](/new/spawn-selector/installation) — dependencies, `server.cfg` order and what to remove.

### Configure it

[Configuration](/new/spawn-selector/configuration) — every option in `shared/config.lua` and the spawn definition.

### Learn what it does

[Features](/new/spawn-selector/features) — the map, live preview, locks, vehicles and integrations.

### Stop combat logging

[Anti combat log & restrictions](/new/spawn-selector/anti-combat-log) — death, jail, relogs and forced spawns.

### Use it from your own code

[Developer API](/new/spawn-selector/developer-api) — houses, garages, motels or anything else as a spawn location.

:::

## In this section

::::cards{cols="2"}
:::card{title="Installation" href="/new/spawn-selector/installation" icon="download"}
Dependencies, start order and framework setup.
:::
:::card{title="Configuration" href="/new/spawn-selector/configuration" icon="settings"}
Every Config option and the spawn definition.
:::
:::card{title="Features" href="/new/spawn-selector/features" icon="sparkles"}
Map, live preview, locks, vehicles, sounds and integrations.
:::
:::card{title="Anti combat log" href="/new/spawn-selector/anti-combat-log" icon="shield"}
Combat logs, death, jail and restrictions.
:::
:::card{title="Admin tools" href="/new/spawn-selector/admin-tools" icon="wrench"}
Editor, photos, events and stats.
:::
:::card{title="Developer API" href="/new/spawn-selector/developer-api" icon="code"}
Exports, providers, access checks and events.
:::
:::card{title="Translations" href="/new/spawn-selector/translations" icon="languages"}
Languages and adding your own.
:::
:::card{title="Database" href="/new/spawn-selector/database" icon="database"}
The koja_spawnselector tables.
:::
:::card{title="Troubleshooting" href="/new/spawn-selector/troubleshooting" icon="bug"}
Fixes for the problems people actually hit.
:::
::::
