Usage
Creating a Scene
- Aim your crosshair at any in-world surface (wall, ground, vehicle, etc.) within 6 metres.
- Type
/scene [text]in chat, optionally including your message directly in the command. - The scene editor opens - customise font, colour, background, rotation and duration.
- Aim at the surface where you want the scene to appear and press Enter to place it.
- The scene appears in-world for all nearby players and expires automatically after the configured number of hours.
Quick re-use
The editor pre-fills from your last 5 created scenes. Select a history entry to instantly restore that style and text.
Commands
| Command | Access | Description |
|---|---|---|
/scene [text] | All players | Open the scene editor, optionally with pre-filled text |
/scenestaff [text] | Admin only | Open the editor in staff mode (scene is flagged as staff-created) |
/scenedelete | All players | Delete the nearest scene within 5 m of your crosshair |
/hidescenes | All players | Toggle local visibility of all scenes (setting persists across sessions) |
Graffiti Mode
- Have a
spray_canitem in your inventory and use it. - The graffiti creator opens - type your text and customise the style.
- Aim at a wall surface and confirm. A 30-second progress bar plays while spraying.
- One
spray_canis consumed per graffiti placed.
Removing Graffiti
- Have a
spray_removeritem in your inventory. - Target the graffiti in-world and select Remove Graffiti (appears within 2 m).
- A 25-second progress bar plays. One
spray_removeris consumed on success.
Scene Editor Options
| Option | Description |
|---|---|
| Text | The message displayed (max 200 characters, emojis stripped) |
| Font | Font family for the text |
| Font size | Text size |
| Font color | Text colour |
| Background | solid for a coloured box, or a custom image URL |
| Background color | Fill colour when background is solid |
| Rotation type | rotateTorwards - always face the player; rotateKeep - fixed facing; rotateGround - align to surface |
| Distance | Maximum render distance in metres |
| Hours visible | How long the scene persists before expiring (default 1) |
| Preset | Load a saved style preset |
Configuration
| File | Option | Default | Description |
|---|---|---|---|
editable/sv_config.lua | LogWebhookUrl | "" | Discord webhook URL for scene creation/deletion logs |
editable/sh_presets.lua | SCENE_PRESETS | Default empty scene | Style presets selectable in the editor |
editable/sh_progressbars.lua | SPRAYING_GRAFFITI_PROG_DURATION | 30000 | Graffiti spray progress bar duration (ms) |
editable/sh_progressbars.lua | REMOVING_GRAFFITI_PROG_DURATION | 25000 | Graffiti removal progress bar duration (ms) |
Server Event
Other resources can listen for scene creation:
lua
AddEventHandler("prp-scenes:server:sceneCreated", function(source, sceneId, sceneData)
-- source: player server ID
-- sceneId: database ID of the new scene
-- sceneData: full scene data table
end)