Your first shift in five minutes
If you read nothing else:
- Open your community's CAD address and sign in with the email and password you were given.
- Click Go on duty at the bottom of the Units panel.
- A new call shows up in Pending on the left. Click it to open it in the middle.
- Drag a unit from the Units board onto the call. The unit goes en route and gets a waypoint in game automatically.
- Type notes in the box at the bottom of the call and press Enter.
- When it is over, click Close, pick a disposition, and click Close the call.
Everything else in this guide is a faster or more precise way of doing one of those six things.
Signing in
Your community has its own web address — usually
yourcommunity.cad.salskewlscripts.com, or a custom domain your server
owner set up. Ask them for it and bookmark it. There is no "pick your community" box
on the sign-in page; the address is the community.
- Open the address. The page shows your community's name.
- Enter your Email and Password and click Sign in.
- If you turned on two-factor, an Authenticator code box appears — enter the six digits from your authenticator app.
If your community uses Discord sign-in, you will also see Continue with Discord, which does the same thing without a password.
First time, from an invitation
If you were sent an invitation link, open it, fill in Your name (this is how dispatchers and officers will see you), choose a password of at least ten characters, and click Create account and sign in.
If you belong to more than one agency
A dropdown appears in the top bar showing your agencies. Pick the one you are working as this shift. It decides which agency's units you can manage and which agency your own unit belongs to. With only one agency it is just a colored chip and there is nothing to choose.
The connection light
The top bar shows Live, Connecting or Offline. If it says Offline, the boards may be out of date — refresh the page. Everything you missed is replayed when it reconnects.
Going on duty
- Find the Units panel (left side, under Pending).
- Click Go on duty at the bottom of it.
- Your callsign appears under your name in the top bar, and your unit appears on the board.
To finish your shift, click Go off duty in the same place.
The first time: your callsign
If your account has no callsign yet, the CAD asks What is your callsign? Type the one dispatch uses for you on the radio and click Go on duty. It is saved, so you are only asked once. If your community assigns callsigns, use the one you were given — and if an administrator has already set one for you, you will not be asked at all.
Finding your way around
The dispatch screen is made of panels. Out of the box you get:
- Left: Pending (calls waiting) on top, Units (the status board) below.
- Middle: Call (the one you are working), with Lookup and Messages as tabs behind it.
- Right: Map on top, Alerts below, with BOLOs as a tab behind Alerts.
The toolbar
| Control | What it does |
|---|---|
| Command line | Type short commands instead of clicking. See The command line. |
| + Call | New call (Alt+N). |
| + BOLO | New BOLO (Alt+B). |
| Signs | Put a message on the highway signs in game. |
| Sounds on / Sounds off | Mute or unmute the dispatch sounds, just for you. See Panic and backup. |
| Theme | Match system, Dark, Light or High contrast. Just for you, on this browser. |
| + Panel | Open any panel that is not on screen — Active, Closed, Roster, Stations, Hospitals and so on. |
| Pop out… | Open a panel in its own browser window, so you can drag it to a second monitor. |
| Reset layout | Put everything back where it started. |
Arranging panels
- Drag a panel's tab to move it, stack it behind another panel, or split the space.
- Drag the borders between panels to resize them.
- Your arrangement saves itself and follows you to another computer.
- If you get lost, Reset layout fixes it.
Every panel
| Panel | Use it for |
|---|---|
| Pending | Calls nobody has been sent to yet. |
| Active | Calls with units on them. |
| Call | Everything about the call you clicked. |
| Closed | Recently closed calls, and a search through every closed call. |
| Units | Every on-duty unit, its status and what it is on. |
| Roster | Everybody in the community, on duty or not, with hours over the last week. |
| Map | Live unit positions and calls. |
| Lookup | Search people, plates and firearms. |
| BOLOs | What is currently out. |
| Alerts | Alarms, shots fired, ALPR and toll hits from other scripts. |
| Messages | Text with units and other dispatchers. |
| Stations | Tone out fire and EMS stations. |
| Signs | The electronic road signs in game. |
| Hospitals | Which hospitals are open, limited or on diversion. |
| Tow | The tow queue. |
| Radio | Who is talking, if your community connected its radio. |
Using two monitors
- Click Pop out… and pick a panel — the Map is the usual one.
- It opens in a new browser window. Drag that window to the other monitor and maximize it.
- Repeat for as many panels as you have screens. They all stay live.
If the new window does not open, your browser blocked the pop-up — allow pop-ups for the CAD's address and try again.
Creating a call
The quick way: right-click the map
If you know where it is, right-click that spot on the map. The New call form opens with the coordinates filled in, which gets you a postal, puts the call on the map, lets the CAD recommend the nearest units, and warns you if there is already an open call nearby. This is the best way to create a call.
From the toolbar
- Click + Call, press Alt+N, or click New call at the top of the Pending panel.
- Pick a Call type. Priority, the title and which agencies go fill themselves in from the type — change any of them if you need to.
- Check the Priority:
- 1 — life at risk
- 2 — urgent
- 3 — prompt
- 4 — routine
- 5 — when convenient
- Fill in What is it (a short headline, like "Armed robbery in progress").
- Type the Postal if you have one. The map flies there and marks the spot, so you can check it is the right place before you create the call. If the postal is not on your community's map, the box says so.
- Add a Location in words if it helps — "Fleeca Bank, Legion Square". That is what you read out on the radio.
- Type what the caller said in Narrative, and their Caller name and Caller phone if you have them.
- Under Who goes, check the agencies that should see it. If you picked a call type, its usual agencies are used when you leave these alone.
- Click Create call.
If the CAD says there is already a call nearby
When you create a call close to an open one — from the map or with a postal — you get There is already an open call near there. Either click Open it on the existing call and add a note to that one, or click Create a separate call anyway if it really is a different incident.
Call types you will see
Your community can rename or add types, but you will usually find these codes:
| Group | Codes |
|---|---|
| Law enforcement | TS traffic stop, TC traffic collision, DUI, PURS pursuit, SHOTS, ROB, BURG, ALARM, DIST disturbance, DV, ASSLT, GTA, SUSP, WELF welfare check, WARR warrant service, BACKUP, PANIC, ASSIST, FOLLOWUP |
| Fire | STRUCT structure fire, VEHFIRE, BRUSHFIRE, ALARMFIRE, EXTRIC extrication, HAZMAT, PSA public service, INSP |
| EMS | MEDA / MEDB / MEDC medical, CARDIAC, GSW, TRANSFER |
| Service | TOW, IMPOUND, CLOSURE, DEBRIS, ANIMAL, MARINE, OTHER |
Reading the pending queue
Pending is sorted priority first, then oldest first. A P1 from ten seconds ago sits above a P4 from an hour ago.
Each row shows the call number, the title and type, the location and
#postal, the caller, and any units already on it. A colored bar down the
left is the priority. A 9-1-1 chip means the call was handed over
from a call taker in Sal's Kewl Dispatch.
When a call turns amber or red
The age clock changes color when a call has waited too long for its priority:
| Priority | Amber after | Red after |
|---|---|---|
| P1 | 30 seconds | 1 minute |
| P2 | 1 minute | 3 minutes |
| P3 | 3 minutes | 7 minutes |
| P4 | 7 minutes | 15 minutes |
| P5 | 30 minutes | 1 hour |
The footer counts how many are waiting and how many are overdue.
Calls move to the Active panel once a unit is assigned. Open Active from + Panel if it is not on your screen.
Sending units
There are four ways to assign a unit. They all do the same thing.
- Drag and drop. Drag the unit's row from the Units board onto the call in Pending, onto the Units area of the open call, or onto the call's pin on the map.
- Right-click the call. The menu lists up to six available units, nearest first, with the distance. Click one.
- Recommend. On the open call, click Recommend to see the nearest available units, then click Assign beside the one you want.
- The command line.
a 1-ADAM-12 119assigns 1-ADAM-12 to the call ending in 119.
When you assign a unit, three things happen at once:
- the unit goes En route;
- the call moves from pending to dispatched;
- the officer gets a notification and a GPS waypoint in game — they do not have to type anything.
When the first unit goes On scene, the call becomes active.
Nearest-first and Recommend only work when the call has coordinates — another reason to create calls from the map.
Taking a unit off a call
- Click Clear beside the unit in the call's Units list, or
- right-click the unit and choose Clear from call, or
- type
d 1-ADAM-12.
The unit is put back to Available automatically.
If the CAD refuses an assignment — usually because somebody else just took the unit — a yellow message in the corner says why.
A unit for a call that does not exist yet
Drag the unit from the board onto empty ground on the map. The New call form opens at that spot; when you click Create call, the unit is assigned to it.
Changing a unit's status
Units normally set their own status from the game or the MDT. You step in when a unit tells you on the radio and does not update it, or when something needs fixing.
From the board
- Click the ··· button on the unit's row (or right-click the row).
- Pick the new status under Set status.
The same menu is available on a unit listed inside a call — right-click it there.
Every status is in the menu
Your community's quick statuses come first — usually Available, En route, On scene and Busy — and every other code is under More: Out of service, Transporting, At hospital and so on. The command line is faster when your hands are on the keyboard:
u 1-ADAM-12 OOS Out of service
u MEDIC-4 TRN Transporting
u MEDIC-4 HOS At hospital
u ENGINE-3 STG Staging
If you type a code that does not exist, the command line answers with the list of codes your community actually uses.
The default status codes
| Code | Means | Can be assigned? |
|---|---|---|
AVL | Available | Yes |
ENR | En route | No — on a call |
ONS | On scene | No — on a call |
BSY | Busy | No |
TRN | Transporting | No — on a call |
HOS | At hospital | No — on a call |
OOS | Out of service | No |
OFF | Off duty | No |
PAN | EMERGENCY | No — see Panic |
Some communities use ten-codes instead — 10-8 in service,
10-76 en route, 10-97 on scene, 10-6 busy,
10-7 out of service and so on. Fire and EMS communities also get
STG Staging and AVL-S Available on scene.
Why a status is grayed out
- En route, On scene, Transporting and At hospital need a call. A unit that is not assigned to anything cannot be on scene "of" anything. Assign it first, or use Busy or Out of service.
- EMERGENCY cannot be set by hand. It only comes from the unit itself.
- Going backward is fine. A unit that arrives and has to back out can go from On scene to En route.
If the CAD refuses a change, a yellow message tells you why. Every change you make is written on the call's timeline as "(set by dispatch)", so it is always clear who decided.
Reading the board
- Units are grouped by agency. Within each agency, the ones that need attention are on top: emergency, then on scene, en route, transporting, at hospital, busy, available, out of service.
- Hover a callsign to see who is in the unit. A number badge means more than one person.
- 🔊 means lights and siren are on; 👤 means plain clothes.
- The first timer is how long the unit has been in its current status. The second is how long it has been on its call.
- The first timer turns amber when a unit has been in a status too long — by default 10 minutes en route, 30 on scene, 20 busy or transporting, 45 at the hospital. That is your cue to check on them.
- Use the Filter box to find a unit by callsign, agency or name.
Dispatchers can change the status of any agency's units, not just their own.
Working the call
Click any call to open it in the Call panel. It stays live — notes and status changes from the field show up as they happen.
Adding a note
Type in Add a note to this call… at the bottom and press
Enter or click Add. Or, from anywhere, type
n 119 driver detained in the command line.
Notes are the permanent record of the call. Anything that matters later — who was detained, what was found, who was transported — goes in a note, not in a message.
Changing the priority
Use the Priority dropdown at the top of the call. The change is written to the timeline.
The timeline
Every assignment, status change, priority change and note, in order, with times. Entries from the game are tagged from game.
Reports on this call
Reports units have written about the call are listed at the bottom.
Merging a duplicate
Three people call 9-1-1 about the same crash and you have three calls. Open one of the extras and click Merge…. The other open calls are listed, the nearest first; click Merge here on the one you are working. Its units, notes and timeline move across, and its number still finds the merged call if somebody reads it off a report later.
Copying the call number or location
Right-click the call in Pending or Active and choose Copy call number or Copy location.
Closing a call
- Click Close at the top of the call.
- Click one of the quick dispositions or type your own:
- Report taken
- Arrest made
- Citation issued
- Warning given
- Parties separated, no report
- Unfounded
- Gone on arrival
- Unable to locate
- Handled by another agency
- No further action requested
- Click Close the call.
Every unit still on the call is cleared and put back in service.
From the command line: x 119 citation issued.
Reopening a call
The caller rings back, or the suspect returns. Open the closed call (from the Closed panel, or by typing its number in Lookup), click Reopen, say why if you like, and click Reopen the call. It goes back to Pending with nobody on it — send units as usual. The old disposition stays on the timeline.
Finding an old call
Open the Closed panel from + Panel. With the search box empty it shows the most recent closed calls. Type in it to search every closed call — by number, title, location, narrative, caller, plate or disposition — and use the two date boxes to narrow it down. Click a call to read it. Refresh reloads the list.
To jump straight to a call you know the number of, type it in Lookup and click it.
Calls that come from the game
All of these land in Pending like any other call, and you work them the same way.
| What you see | Where it came from |
|---|---|
| Source game 911 | A player typed /911. The caller's character is attached. |
| A 9-1-1 chip, source skd dump | A call taker in Sal's Kewl Dispatch handed the call over. The narrative has their notes and the transcript, and later updates from the caller arrive as notes from "Call taker". |
| Source game, a unit already attached | A unit started it themselves — a traffic stop (/ts), a tow, EMS or fire request, or an accepted callout. |
| Source panic or backup | See Panic and backup. |
| Source alert | Another script on the server (an alarm, a robbery, an ALPR hit) and your community set that kind of alert to become a call. |
A unit that starts its own traffic stop is already attached and on the call. You do not need to assign anybody — keep an eye on it, and send backup if they ask.
Panic and backup
When an officer hits panic
You will see a priority 1 call titled OFFICER EMERGENCY — callsign at the top of Pending, with that unit already attached. The unit's status changes to EMERGENCY, which puts it at the very top of the Units board in its own color. A radio emergency button does the same thing as RADIO EMERGENCY.
- Open the call. The location is where the officer was when they pressed it.
- Assign every unit you can spare.
- Once the officer is safe, set them back to Available (or another status). That clears the emergency. You cannot set or clear EMERGENCY any other way.
Sounds
The dispatch screen plays a hi-lo siren when an officer hits panic, a triple beep for a new priority 1 call, and two short notes for any other new call (but not one you created yourself). Your browser will not play sound until you have clicked somewhere on the page once after signing in — so click anything at the start of your shift.
Sounds on in the toolbar mutes them for you; click it again to turn them back on. Pop-out windows stay quiet, so you only ever hear one siren.
When a unit asks for backup
- If the unit is already on a call, a note is added to that call — "callsign requesting backup" — and the priority may go up.
- If not, a new call Backup requested — callsign appears at their location.
Either way, assign units to that call.
Issuing a BOLO
- Click + BOLO or press Alt+B (or New BOLO in the BOLOs panel).
- Under About, pick a person, a vehicle, a plate, property or something else.
- Set the Priority (3 by default).
- For a vehicle or a plate, enter the Plate. That also puts it on the ALPR hotlist, so a plate reader in game flags it.
- Write a Headline and the Details.
- Click Issue and broadcast.
It goes to every MDT and every dispatcher screen straight away, and on-duty units get a notification in game.
When the subject is found, click Cancel on the BOLO. It comes off every terminal, and the record of what was out and when is kept.
Running a person or a plate
- Open the Lookup tab (behind the Call panel).
- Type a plate, a name, a serial number or a call number. It searches as you type.
- Anything dangerous comes first in a red box — stolen vehicles, flagged plates, officer-safety flags.
- Below that are people, vehicles, firearms, reports and BOLOs that matched.
- Click a person to open their file: details, licenses, vehicles, flags and reports.
The Records link in the top bar also has People and Vehicles tabs if you want a plain list to scroll through.
Messages and alerts
Sending a message
- Open the Messages tab (behind the Call panel).
- Pick a channel from the dropdown — All Users, or one per agency.
- Type in Message… and press Enter or click Send.
Check Broadcast to every screen for something everybody needs to see.
Messages are for talking, not for the record — by default they are deleted after 30 days. Anything about a call belongs in a call note.
The Alerts panel
Things other scripts on the server report — alarms, shots fired, ALPR hits, toll violations. Each one is marked became a call (it is already in Pending) or notify only (it is up to you). Click an alert that became a call to open the call. Click Dismiss to clear one you have dealt with. If a notify-only alert needs a response, right-click the map where it happened to create a call.
Using the map
| To | Do this |
|---|---|
| Move around | Click and drag. |
| Zoom | Scroll wheel, or + and − in the corner. |
| See everything | ⤢ (Fit the whole map). |
| Open a call | Click its pin. |
| Follow a unit | Click it on the map or on the Units board, or type f 1-ADAM-12. Click Stop following to let go. |
| Create a call at a spot | Right-click there. |
| Assign a unit | Drag it from the status board onto a call's pin. Onto empty ground, it starts a new call there with that unit on it. |
| See details | Hover a call or unit. Units show their crew and speed. |
What the shapes mean
- Teardrop pins are calls, colored by priority. Pending calls pulse.
- Arrows are units, colored by status and pointing the way they are moving. A glow means lights and siren.
- Amber triangles are alerts that did not become calls.
- Colored lines, areas and dots with labels are drawings — see below.
Drawing a road closure, perimeter or staging area
- Open Draw… at the top of the map and pick Road closure, Perimeter, Staging area or Marker.
- Click on the map: along the road for a closure, at each corner for a perimeter, or once for a staging area or marker. You can still drag to move the map while you draw.
- For a closure or perimeter, click Finish, double-click, or press Enter. Esc abandons it.
- Give it a Label — "Route 68 closed both ways", "Command post" — choose how long to Keep it for, and click Put it on the map.
It appears on every dispatcher's map at once and comes off by itself when its time is up. Drawings at the top of the map lists everything drawn, with Remove.
The buttons along the top
- Zones — jurisdiction boundaries.
- Labels — names on the map.
- Places — hospitals, stations and hydrants.
- Heat — where calls have been over the last 30 days.
Units only show while they are on duty in game. Plain-clothes units are visible to dispatch only.
Fire and EMS: run cards and tone-outs
Striking a run card
- Open the call and click Run card.
- The response plan for that call type shows each alarm level and what it sends.
- Click Strike on the level you want. The CAD assigns the apparatus and tells you what was Sent and what it came up Short.
Levels add up: striking a second alarm sends only what the second alarm adds, because the first alarm's units are already there. Once struck, the button reads "Alarm N · strike next".
If there is no plan for that call type, the dialog says so — assign units by hand.
Toning out a station
- On the call, click Tone out to alert the stations for the agencies on the call, or
- open the Stations panel, click Tone out on a station, choose the call under For which call, and click Tone out.
Choose Drill — no call and click Run a drill to test a station. Recent tone-outs shows whether each one was acknowledged and how quickly.
Signs, hospitals, tow and the roster
Putting a message on the road signs
- Click Signs in the toolbar.
- Choose Which signs (the highway group by default).
- Pick a Kind: Notice, Road closure, BOLO or Amber alert.
- Type the Message and choose For how long — five minutes up to eight hours.
- Click Put it up.
To remove it early, choose the kind Clear and click Take it down. The Signs panel shows every sign and what it is showing right now.
Hospitals
The Hospitals panel shows each destination as open, limited or closed, so you can tell a medic where to go before they ask.
Tow
The Tow panel lists tow jobs waiting and in progress.
Roster
Everybody in the community with agency, rank and callsign, a dot for who is on duty, and their hours over the last seven days. Use it to see who is around even if they are not on duty yet.
The command line
The box at the top left of the toolbar. Press / or Ctrl+K from anywhere to jump to it, type a command, and press Enter. Esc clears it.
Learn three or four of these and you will rarely need the mouse.
| Type | To | Example |
|---|---|---|
u <callsign> <status> | Set a unit's status — any code, not just the menu ones | u 1-ADAM-12 ONS |
a <callsign> <call> | Assign a unit to a call | a S-213 119 |
d <callsign> | Clear a unit from its call | d S-213 |
c <type> [postal] [location] | Start a new call of that type — at that postal, if the first word after the type is one | c TS 1042 Route 68 |
n <call> <text> | Add a note to a call | n 119 driver detained |
x <call> [disposition] | Close a call | x 119 citation issued |
f <callsign> | Follow a unit on the map | f TROOP-2-14 |
? | Show this list |
Shortcuts it understands
- Callsigns can be shortened.
1a12finds1-ADAM-12— dashes and capitals do not matter. - Call numbers can be just the end.
119finds26-000119.
If a command works, the box clears and a short confirmation appears, like "1-ADAM-12 → On scene". If it does not, what you typed stays there with the reason, so you can fix it instead of retyping it.
Put a postal straight after the type — c TS 1042 — and the call is
placed at that postal, pin and all. A call made with c skips the
nearby-call check, because it is meant to be quick.
Keyboard shortcuts
| Keys | Does |
|---|---|
| / or Ctrl+K | Jump to the command line |
| Alt+N | New call |
| Alt+B | New BOLO |
| Enter | Run a command, add a note, send a message |
| Esc | Close a dialog or menu; clear the command line |
The shortcuts are ignored while you are typing in a field, so typing the letter "n" in a narrative will never open a new call.
When something does not work
| Problem | Try this |
|---|---|
| Wrong password, or "That account is not permitted to sign in." | Check you are on your community's address. If it still fails, ask an administrator — they can reset your account. |
| It keeps asking for my callsign | Your community may block self-chosen callsigns. Ask an administrator to set one on your membership. |
| The top bar says Offline | Refresh the page. If it stays offline, check your internet connection. |
| A status is grayed out | En route, On scene, Transporting and At hospital need the unit to be on a call. Assign it first. |
| A unit will not assign | Read the yellow message in the corner — usually the unit is no longer Available. |
| No sound on panic | Click anywhere on the page once — browsers block sound until you do — and check the toolbar says Sounds on. |
| Recommend shows nothing | The call has no coordinates, or nobody is available. Assign by dragging. |
| A unit is missing from the map | They are off duty in game, in plain clothes, or their game is not sending a position. |
| Lookup shows no warrants | Your community has taken criminal history off the dispatcher role. Ask an administrator. |
| I closed a call by mistake | Open it from the Closed panel and click Reopen. |
| "This community is suspended. You can sign in and read, but not write." | Tell your server owner — it is a billing issue, not something you did. |
| A pop-out window does not open | Allow pop-ups for the CAD's address in your browser. |
| My panels are a mess | Reset layout. |
Anything else: tell your server owner what you clicked and what you expected, and they can bring it to us on Discord.