Installation
This page takes you from the downloaded archive to a working spawn screen.
Requirements
| Resource | Required | What it is used for |
|---|---|---|
| koja-lib | Yes | Framework bridge (jobs, identifiers, admin check, notifications) |
| oxmysql | Yes | Last location and remembered choice |
| A framework | Yes | ESX (es_extended), QBCore (qb-core) or QBox (qbx_core) |
| Koja Multicharacter | No | Opens this map after character selection |
qb-apartments, qb-houses | No | Starter apartments and owned houses on QBCore |
Install
-
Put the resource in
Unpack the archive and keep the folder nameresourceskoja-spawnselector. Other scripts callexports['koja-spawnselector']and include@koja-spawnselector/import.lua, so the name matters. -
Remove the old spawn screen
- QBCore / QBox with qb-multicharacter: remove
qb-spawn. Koja Spawn Selectorprovides it and handles the sameqb-spawn:client:setupSpawns/qb-spawn:client:openUIevents, including theqb-apartmentsstarter apartments. - ESX: nothing to remove. The selector opens on
esx:playerLoadedafter your multicharacter loaded the character. - Koja Multicharacter: nothing to remove. When it runs, it opens the selector itself and the automatic openers above stay off.
- QBCore / QBox with qb-multicharacter: remove
-
Add it to
server.cfgserver.cfgensure oxmysql ensure koja-lib ensure koja-spawnselector # scripts that use it (multicharacter, housing...) after this line -
Pick the language
Any file name fromshared/config.luaConfig.Locale = 'en'shared/locales/works. See Translations. -
Restart the server
Thekoja_spawnselectortable is created on start. You can also importsql/koja_spawnselector.sqlyourself.
Admin command
/spawnselector [id] opens the selector for you or for player id, with ESC enabled so you can close it.
It needs the ACE in Config.Admin.Ace (default command) or a framework group from Config.Admin.Groups.
From the server console: spawnselector <id>.
Check that it works
- Join and load a character. The map opens over the world with your last location selected.
- Click another location in the list — the camera flies there.
- Press Enter or Spawn here. The camera drops from the sky to your character.
- As an admin, type
/spawnselectorto open it again at any time.
Changing the UI
The UI is shipped prebuilt in web/dist. You only need Node and pnpm when you change web/src:
cd web
pnpm install
pnpm build
Next steps
- Configuration — your own locations, locks and theme.
- Developer API — houses and other per-player locations.