Skip to content
These docs reflect Contracts v0.6.0, the latest release. Older servers may differ.

Command

Executes a server console command when the reward is claimed. This is the escape hatch for granting anything the other reward types can’t: kits, ranks, custom plugin actions. Technically, all rewards can be achieved with the Command reward!

{
"type": "Command",
"title": "Supply signal",
"description": "",
"eligiblePermissions": ["contracts.vip"],
"command": "inventory.giveto supply.signal {playerId} 1"
}
Field Type Description
type string Exactly 'Command'
title string Display name. May be empty to use the reward type's default name (recommended for most rewards).
description string A short blurb of 1 to 3 sentences. May be empty.
eligiblePermissions string[] Permission strings that gate this reward, using any-of logic: a non-empty list grants the reward to any player holding at least one of the listed permissions. An empty array means everyone is eligible.
command string The console command to run when the reward is claimed. Supports runtime placeholders such as {playerId} and {playerName}.

The command string can include these placeholders, substituted at run time:

PlaceholderReplaced with
{playerId}The player’s Steam ID
{playerName}The player’s display name
{qPlayerName}The player’s display name, wrapped in quotes
{playerX}The player’s X position
{playerY}The player’s Y position
{playerZ}The player’s Z position

Give 500 scrap to the completing player:

inventory.giveto scraps {playerId} 500
  • The command runs on the server console, with the same authority as a server admin.
  • Use {qPlayerName} when a name with spaces must be passed as a single argument. Otherwise, some command might misinterpret the player’s name as multiple arguments.