Developers
kartik-ers is escrowed, but everything you need to connect it to other scripts is open.
- Exports & Events: server exports and the events kartik-ers fires.
- Open Hooks: change rewards and react to shifts, callouts, arrests and patients.
- Custom Callouts: write your own scenarios with the callout API.
- Bridges: framework, MDT, dispatch, notifications and progress bars.
- Voice Dispatch: spoken dispatch lines with ElevenLabs or your own TTS.
Data shapes
NPC identity
{
citizenId = 'ERS-1A2B3C4D', firstName, lastName, name, gender, dob, age,
address, city, phone, nationality,
licenses = { car = 'valid' | 'suspended' | 'expired' | 'none', bike, truck, boat, pilot },
flags = { wanted, armed, probation, gang },
warrantReason = string | nil,
situation = { bac, drugs, carryingIllegal, carryingDrugs, weapon, items = { { label, illegal, weapon? } } },
}Vehicle registration
{
plate, model, label, color, class, year,
owner = { citizenId, name },
registration = 'valid' | 'expired',
insurance = 'valid' | 'expired' | 'none',
stolen, bolo, boloReason,
items = { { label, illegal } },
}Database
Tables are created on first start (or import [SQL]/kartik-ers.sql):
| Table | What it holds |
|---|---|
ers_peds | NPC identities |
ers_vehicles | NPC vehicle registrations |
ers_stats | Career totals per player (tablet Stats and leaderboard) |
ers_logs | Activity per player (tablet Recent activity) |