Koja Scripts

Troubleshooting

Fixes for common Koja Spawn Selector problems: the map not opening, two spawn screens, locked spots, last location and the 3D map.

Troubleshooting

The map does not open after selecting a character

  • Check the start order: oxmysql, koja-lib, then koja-spawnselector, and your multicharacter after it.
  • ESX: Config.Open.OnPlayerLoaded must be true. New characters skip the map unless Config.NewCharacter.UseSelector is true.
  • QBCore / QBox: Config.QbSpawnCompat must be true, and qb-spawn must be removed.
  • Koja Multicharacter: it opens the map itself — see its troubleshooting.
  • Use /spawnselector as an admin. If that opens it, the problem is the trigger, not the selector.

Two spawn screens show up

Another spawn resource is still running (qb-spawn, ps-spawn, a spawn screen inside your multicharacter). Remove it or turn its spawn screen off.

Everyone sees "Police only" on the police station

The lock reads the job from koja-lib (KOJA.Server.GetJobInfo). Check that the job name in jobs = { police = 0 } matches your framework's job name, and the minimum grade. With onDuty = true, the player must be on duty. Change the rule in ServerEditable.GetJob or ServerEditable.CanAccess if your duty system is different.

"Last location" is missing or wrong

  • It is saved every SaveInterval seconds, on logout and on disconnect. A server crash loses at most one interval.
  • Positions in another routing bucket are skipped (IgnoreBuckets). A player who logged out inside an instanced interior comes back at their previous saved spot.
  • After a fresh install, the position comes from users.position / players.position until the first save.

The player falls through the map or spawns in the air

The camera flight waits up to Config.Cinematic.LoadTimeout ms for collision. Raise it on slow clients, and check that the z of your spawn is at street level (stand there and use the coordinates of your ped).

The 3D map is black or blurry

  • Black map: the client has no WebGL in the NUI (very old GPU or drivers). Update the graphics drivers.
  • Blurry up close without internet access to the Rockstar map CDN: the sharper zoom 7 tiles cannot load, so the shipped zoom 6 tiles are used. Set Config.Map.OnlineDetail = false to stop trying.

ESC does nothing

Cancelling is off by default, so a player cannot skip spawning. Set Config.Open.CanCancel = true, or pass canCancel = true to Open.