> For the complete documentation index, see [llms.txt](https://code-after-sex.gitbook.io/script-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://code-after-sex.gitbook.io/script-documentation/cas-tattoo/configuration.md).

# Configuration

Every option of CAS Advanced Tattoo System for RedM: prices, the artist share, the steady hand minigame, the session layout, ink passes, keys and logs.

`config/config.lua`

| Option                                                          | What it does                                                                                                                                                                                                                                                                                                                         |
| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `Framework`                                                     | `auto`, `vorp` or `rsg`                                                                                                                                                                                                                                                                                                              |
| `VorpCurrency`, `RsgMoneyType`                                  | the money taken and paid                                                                                                                                                                                                                                                                                                             |
| `Debug`                                                         | console lines (textures, scene placement, sessions) and the `/tattoodebug` command                                                                                                                                                                                                                                                   |
| `TestCommands`                                                  | everyone may use `/tattootp` and `/tattootry` (test servers only)                                                                                                                                                                                                                                                                    |
| `AdminAce`                                                      | the ace admins need for the admin and setup commands                                                                                                                                                                                                                                                                                 |
| `ArtistJobs`                                                    | job names that may work as artists                                                                                                                                                                                                                                                                                                   |
| `RsgNeedsOnDuty`                                                | RSG: the artist must also be on duty in the framework                                                                                                                                                                                                                                                                                |
| `ArtistShare`                                                   | share of the price paid to the player artist                                                                                                                                                                                                                                                                                         |
| `ArtistPriceRange`                                              | how far an artist may go under or over the book price (0.5 = half, 2.0 = double)                                                                                                                                                                                                                                                     |
| `NpcArtist`                                                     | the house artist works when no player artist is on duty                                                                                                                                                                                                                                                                              |
| `HousePed`, `HouseSeconds`                                      | true: a house artist ped walks over and does the work; false (default): no ped, the ink fades in over `HouseSeconds` with the camera on the spot                                                                                                                                                                                     |
| `NpcPriceFactor`                                                | house artist prices = book price times this                                                                                                                                                                                                                                                                                          |
| `SizeFactor`                                                    | price factor of small, medium and large spots                                                                                                                                                                                                                                                                                        |
| `RemovalFactor`                                                 | removal price as a share of the tattoo's price                                                                                                                                                                                                                                                                                       |
| `WorkSeconds`, `RemovalSeconds`                                 | needle time by spot size, and for a removal                                                                                                                                                                                                                                                                                          |
| `Minigame`                                                      | the steady hand: on or off, seconds per slip, seconds between winces, ms to react                                                                                                                                                                                                                                                    |
| `StencilAlpha`                                                  | how strong the stencil shows while choosing                                                                                                                                                                                                                                                                                          |
| `Session`                                                       | the layout around the stool: the stool model, how the customer sits down, the seated customer's position, where the artist works for each side of the body and in which pose, the cart, the house artist's waiting place, and the light (the cart's lamp burns, and a soft fill front and back lights the customer during a session) |
| `UndressOnSit`, `Undress`                                       | the customer sits down and everything comes off down to the underwear (upper, lower and the extras: belts, holsters, satchels); without UndressOnSit only the part being worked on. Every piece goes back on exactly as worn when they stand up, on VORP, RSG and cas-charcreator characters alike                                   |
| `Inks`, `LineInk`, `DefaultInks`                                | the ink (India black) and its swatch colour in the book                                                                                                                                                                                                                                                                              |
| `InkBlend`                                                      | how the ink is laid into the skin: 2 = the texture's own black by its coverage (keep it with the textures that ship)                                                                                                                                                                                                                 |
| `InkPasses`                                                     | how many times each tattoo is laid in (every pass is a layer)                                                                                                                                                                                                                                                                        |
| `InkRoughness`                                                  | optional roughness of the ink layers (0 glossy .. 1 matte)                                                                                                                                                                                                                                                                           |
| `MaxTattoos`                                                    | tattoos per body part (the game blends at most 15 layers, so 15 / `InkPasses` at most)                                                                                                                                                                                                                                               |
| `HeadTattoos`, `HeadInkPasses`                                  | face, neck and head tattoos on or off, and their ink passes (the face texture also carries the creator's layers)                                                                                                                                                                                                                     |
| `RefreshSeconds`                                                | re-apply the tattoos on a timer (0 = only when the body changes or a framework reloads the skin)                                                                                                                                                                                                                                     |
| `RefreshCommand`                                                | the player command that puts the own tattoos back on (`/tattoos`)                                                                                                                                                                                                                                                                    |
| `Keys`, `HoldMs`                                                | prompt keys and the hold time                                                                                                                                                                                                                                                                                                        |
| `Blip`                                                          | the parlour blip (sprite nil = no blips)                                                                                                                                                                                                                                                                                             |
| `Log`                                                           | console lines and a Discord webhook for every tattoo, removal and admin change                                                                                                                                                                                                                                                       |
| `NeedleModel`, `NeedleOffset`                                   | the needle in the artist's hand                                                                                                                                                                                                                                                                                                      |
| `AdminCommand`, `SetupCommand`, `TeleportCommand`, `TryCommand` | command names                                                                                                                                                                                                                                                                                                                        |

`config/designs.lua`: the price and the book page of every design, the size of every spot and the body areas of the book. Remove a design line to take it off the book.

`config/parlours.lua`: the parlours (the stool's position and the way the customer faces, the house artist and their model, the blip, an optional job) and what stands on the cart.

`config/locale.lua`: every line a player reads.
