# Commands
Recap uses CommandAPI for command registration. All commands are under the `/recap` root command and require the `recap.admin` permission.
---
## /recap
| Subcommand | Description |
|---|---|
| `record start <name> [players]` | Start recording a player (or multiple players) |
| `record stop [players]` | Stop recording a player (or multiple players) |
| `play start <name> [loop]` | Play a recording at your location |
| `play stop <sessionId>` | Stop a specific playback session |
| `scene create <name>` | Create a new empty scene |
| `scene add <scene> <recording> [delay] [offsetX] [offsetY] [offsetZ]` | Add a recording to a scene |
| `scene play <name>` | Play a scene at your location |
| `scene delete <name>` | Delete a scene |
| `scene list` | List all scenes |
| `list` | List all saved recordings |
| `stopall` | Stop all active playback sessions |
---
## /recap record start
Start recording one or more players. Each player's actions are captured every tick until stopped.
```
/recap record start <name> [players]
```
- **name** — identifier for the recording file
- **players** (optional) — player selector; defaults to the command sender
When recording multiple players, each recording is saved with a suffix (e.g., `battle_0`, `battle_1`).
---
## /recap record stop
Stop recording one or more players. The recording is saved to disk immediately.
```
/recap record stop [players]
```
If no players are specified, stops the sender's recording.
---
## /recap play start
Play back a saved recording at the sender's current location.
```
/recap play start <name> [loop]
```
- **name** — the recording to play
- **loop** (optional) — `true` to loop playback indefinitely; defaults to `false`
Returns a **session ID** that can be used with `/recap play stop` to end playback.
---
## /recap scene
Scenes combine multiple recordings with individual time delays and position offsets.
### Create a scene
```
/recap scene create <name>
```
### Add a recording to a scene
```
/recap scene add <scene> <recording> [delay] [offsetX] [offsetY] [offsetZ]
```
- **delay** — ticks to wait before this recording starts (default: 0)
- **offsetX/Y/Z** — position offset relative to the scene origin (default: 0)
### Play a scene
```
/recap scene play <name>
```
All recordings in the scene play relative to the sender's location, with their configured offsets and delays applied.
---
## Permissions
| Permission | Grants |
|---|---|
| `recap.admin` | All `/recap` commands |
---
## Related Pages
- [[Recap/Server Owners/Configuration]] — config values for recording and playback
- [[Recap/Server Owners/Overview]] — plugin overview