Browse docs
Supported Exports
Crime System exposes client and server exports for supported integrations. Call them from the correct runtime and treat every player-supplied argument as untrusted.
Integration map
Client: GetTerritories.
Server: GetTerritories, GetTerritory, GetTerritoryAtCoords, RecordTerritoryActivity, GetGraffitis, and RemoveGraffitiEntry.
Server robberies: RegisterRobbery, UpdateRobbery, UnregisterRobbery, GetRobbery, GetRobberies, StartRobbery, CompleteRobbery, CancelRobbery, and ResetRobbery.
Server PvP: RegisterPvPMode, GetPvPEvent, StartPvPEvent, CancelPvPEvent, and FinishPvPEvent.
Server: AwardCrimeReputation and GetCrimeReputation. Awards require a stable completion ID so the same activity cannot grant points twice.
Client: IsInterrogationFixed, GetInterrogationScene, GetInterrogationObjects, and StartObjectPlacement.
Server: HasInterrogationConsent, GetInterrogationConfig, GetInterrogationObjects, CreateInterrogationObject, RemoveInterrogationObject, RegisterInterrogationTool, IsPlayerCarried, IsPlayerFixed, GetPlayerSession, GetActiveSessions, and ForceEndSession.
Client: RefreshHeistCatalog, RefreshHeistPlans, RefreshHeistPlanning, GetHeistDefinition, GetHeistCatalog, GetHeistPlan, GetMyHeistPlans, and GetHeistServerTime.
The server exports configuration, Creator entries/items, runtime snapshots, heat, risk, contacts, businesses, dynamic market, batches, labs, campers, plants, processing, sales, routes, threats, power and consumption state.
Use the narrowest export for the integration. Do not use the raw developer commands as an API substitute.
Calling an export
local profile, error_code = exports.sky_crimesystem:GetCrimeReputation(identifier)
if not profile then
error(("Crime reputation lookup failed: %s"):format(error_code))
end
local territories = exports.sky_crimesystem:GetTerritories()
Integration checklist
Confirm the runtime
Match client exports with client code and server exports with server code.
Read the owning contract
Check the current source signature and return shape for the installed Crime System release before shipping the integration.
Preserve server authority
Resolve player identity, permission, ownership, items, money and state on the server before any mutation.
Handle explicit failure
Do not hide a failed export behind a silent fallback. Log the operation and error code without exposing private data.
Test through a restart
Verify that the integration handles unavailable resources and reloads its cached data after Crime System starts again.