Community Service
Commands
Commands
Admin
| Command | Description |
|---|---|
/comserv <id> <count> [reason] |
Sentence a player to community service. count = number of tasks. reason = optional free-text logged + announced. |
/endcoms <id> |
Release a player from community service immediately. Stripping weapons (if enabled) still happens. |
Permissions depend on Config.Permissions — Discord roles, Discord IDs, or ACE groups.
Programmatic API (other resources)
Other resources can sentence a player via export:
exports['suty-sv_sync']:SendToCommunityService(playerSrc, taskCount, reason)
Used by:
hl-perfmon— to punish caught vehicle spawnerssuty-chainsnatch— to punish detected exploiters- Your own scripts when you need a non-chat punishment hook
exports['suty-sv_sync']:ReleaseFromCommunityService(playerSrc)
exports['suty-sv_sync']:IsInCommunityService(playerSrc) -- returns bool, remainingTasks
Player flow (involuntary)
- Player gets
/comserv'd → teleported toConfig.ServiceLocation - Routing-bucketed (alone — friends can't join)
- NUI panel shows total task count
- Walk to a task marker → ox_lib skill-check sequence → task completes
- Repeat until count reaches 0
- Released to
Config.ReturnLocation, weapons stripped (if enabled)
Escape attempts
If the player walks more than Config.MaxDistance meters from Config.ServiceLocation, they get auto-teleported back AND Config.EscapePenalty tasks are added to their sentence.
