> For the complete documentation index, see [llms.txt](https://tk-scripts.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tk-scripts.gitbook.io/docs/tk_graffiti.md).

# tk\_graffiti

Graffiti adds spray-painted text and an admin spray list to a FiveM server.

Players spray text on walls in the colour and font they pick, with an item or `/spray`. It runs standalone or on ESX, QBCore and Qbox. Sprays only go on even surfaces. There is no cap on how many are placed, but FiveM shows at most 14 on screen at once.

[Graffiti & Spray System product page](https://tkscripts.com/scripts/graffiti) | [Watch the showcase on YouTube](https://www.youtube.com/watch?v=FzU-6jqO8g0) | [Install Graffiti](/docs/tk_graffiti/installation.md)

{% embed url="<https://www.youtube.com/watch?v=FzU-6jqO8g0>" %}
Graffiti showcase (1 min 45 s).
{% endembed %}

## Features

### Sprays, fonts and colours

* Place sprays using an item or command (/spray)
* Opens a spray menu where you choose the spray text, colour and font
* Configure blacklisted or whitelisted words and a minimum and maximum length
* Shows a preview of the text
* Colour picker that shows the 6 most recently used colours
* 12 fonts by default, 10 of them custom, and you can add more
* After confirming, place the text on any wall (even surfaces only)
* Place unlimited sprays; FiveM shows up to 14 on screen at the same time
* Configurable time after which a spray decays and is removed automatically
* A spraying animation plays while the text is placed

### Remove sprays

* Remove sprays using an item or command (/removespray)
* Starts removing the closest spray if the player is near
* Animation for removing a spray

### Admin spray menu

* Open the admin menu with /sprayadmin
* Shows all placed sprays with their text and distance
* Teleport to any spray in the list
* Remove any spray from the list

### Discord logs and translations

* Discord logs are included
* English and Finnish included, translatable

## Requirements

| Item      | Supported                                                                                 |
| --------- | ----------------------------------------------------------------------------------------- |
| Framework | Standalone, ESX, QBCore, Qbox. Another framework works after editing the framework files. |
| Database  | None. Sprays are saved in the server's resource storage.                                  |
| Inventory | ox\_inventory, qb-inventory, the ESX inventory. Standalone uses the commands only.        |
| Languages | English, Finnish                                                                          |

ox\_lib is optional, for its text UI. Every dependency and its start order: [Graffiti installation](/docs/tk_graffiti/installation.md#requirements).

## Start here

* [Install Graffiti](/docs/tk_graffiti/installation.md)
* [Update without losing your config](/docs/tk_graffiti/installation.md#update-without-losing-your-config)
* [Set fonts, word lists and spray lifetime](/docs/tk_graffiti/config.md)
* [Commands for players and admins](/docs/tk_graffiti/commands.md)
* [Fix common problems](/docs/tk_graffiti/common-questions-and-problems.md)

Support: open a ticket in the [TK Scripts Discord](https://discord.gg/YndnF9tkqu).
