Temporary Permissions & Groups

Temporary Permissions & Groups

zPermissions supports two methods of giving players temporary permissions: the settemp command and temporary group assignments.

settemp

The settemp command looks like so:

/permissions player <player> settemp [-t <timeout>] <permission> [value]

The timeout is in seconds and, if omitted, will default to the value specified in config.yml. Ideally, the timeout should be something short — a few seconds to a few minutes. The reason being that settemp is implemented using Bukkit's own support for temporary permissions. Which means that these temporary permissions are truly temporary — they will disappear when any of the following happens: the player logs off, the server is restarted, and of course, when they expire.

Temporary Group Assignments

The group..add command will take an optional duration or timestamp:

/permissions group <group> add <player> [<duration/timestamp>]

As will the player..setgroup command:

/permissions player <player> setgroup <group> [<duration/timestamp>]

The duration defaults to days and may be modified by adding any of the following suffixes:

SuffixUnits
min, mins, minute, minutesMinutes
h, hour, hoursHours
d, day, daysDays
m, month, monthsMonths
y, year, yearsYears

A timestamp takes either of the following forms:

FormatExample
YYYY-MM-DDThh:mm2013-06-14T19:46
YYYY-MM-DD2013-06-14

(In reality, it will take any ISO 8601 formatted timestamp including seconds and timezone offset.)

If you use temporary group assignments in lieu of (settemp) temporary permissions (maybe because you want the permissions to persist until expiration, regardless of the player logging off or server restarting), you might consider setting the weight of the group to some negative number so it doesn't intefere with the primary group determination as described here. This might only be needed if you use a chat formatting plugin with zPermissions as your source of prefixes/suffixes.