CLICommands

achievement

snug achievement <COMMAND>

Achievement engine management.

Subcommands

CommandWhat it does
defineDefine a new achievement (admin only) [aliases: d]
listList/discover achievements [aliases: l]
getGet an achievement definition [aliases: g]
leaderboardGet the global achievement points leaderboard
statsGet aggregate stats for an achievement
disableDisable an achievement (admin only)
eventSubmit a single achievement event [aliases: e]
batchSubmit a batch of achievement events
userGet a user's achievement profile
in-progressGet a user's in-progress achievements
grantGrant an achievement to users (admin only)
revokeRevoke an achievement from users (admin only)
watchStream a user's live progress updates over WebSocket

Run snug achievement <command> --help for that command's own options. The global options apply everywhere.

Examples

snug achievement define --id first_blood --name "First Blood" --description "Defeat your first enemy" --points 100 --category combat --tier bronze --rules '{"type":"counter","event":"enemy.defeated","target":1}'
snug achievement list --category combat --page 1 --page-size 20
snug achievement get --id first_blood
snug achievement disable --id first_blood --reason "Deprecated" --hide-from-ui
snug achievement event --event-type enemy.defeated --event-data '{"enemy_type":"boss"}'
snug achievement event --event-type enemy.defeated --user-id player123 --dedupe-key kill-42
snug achievement batch --events '[{"event_type":"enemy.defeated","event_data":{}}]'
snug achievement user --user-id player123
snug achievement in-progress --user-id player123
snug achievement leaderboard --limit 10
snug achievement stats --id first_blood
snug achievement watch --user-id player123
snug achievement grant --id first_blood --user-id player123 --reason "Comp"
snug achievement revoke --id first_blood --user-id player123 --reason "Cheating" --remove-points

Next

On this page