Your tattoo script
Each tattoo script lists tattoos its own way. The pack brings a ready list for each one, and installs it for you.
How the lists are installed
Type this in the server console (not in the game):
zaiders_tattoos_install- It only touches the tattoo script your server is running. A stopped one is never touched.
- It copies the list into that script, or adds the designs to the script's own list. Installing twice adds nothing twice.
- Some scripts also need one line in one of their files.
Config.EditOtherScripts = truelets the installer add it; otherwise the console tells you the exact line and where it goes. Every edited Lua file is checked to compile before it is saved. - Every file it changes keeps its original as
<file>.zaiders_backup. - When it's done, restart that script (the console says which), or the whole server.
Config.AutoInstall = true does all of this by itself when the server starts. The lists come in Spanish and English: Config.ListsLanguage picks which.
By script
| Script | What to do |
|---|---|
| ZAIDERS Appearance | Nothing. Its tattoo shop finds the pack by itself, with each design's name and ZAIDERS as the pack, and shows every player's tattoos to the others, darker layers included. See Tattoo shop. |
| dx_clothing | Nothing: it reads the game's own tattoo shop, which the pack brings. Don't add the designs to its config/addon_tattoos.js too, or each one shows twice. It charges per zone; with Config.SetShopZonePrices = true the installer sets every zone to Config.Price. |
| rcore_tattoos | The installer copies zaiders_tattoos.json into its lists folder (assets/tattooLists/ unless its Config.TattooListsPath says otherwise). Then "zaiders_tattoos.json", goes inside Config.TattooLists in rcore_tattoos/config.lua. |
| illenium-appearance | The installer copies shared/zaiders_tattoos.lua. Then 'shared/zaiders_tattoos.lua', goes in its fxmanifest.lua, in shared_scripts, after 'shared/tattoos.lua'. Each design costs Config.Price when its Config.ChargePerTattoo is on. |
| fivem-appearance | The installer adds the designs to its tattoos.json, or to files/tattoos.json in the versions that keep it there. Versions without that file have no addon tattoos. |
| vMenu 3.8.8 or later, and vMenu Enhanced | The installer adds the designs to config/tattoos.json, in the format of the vMenu you run. vMenu reads it in each player's game, so players reconnect to see them. Older versions of vMenu have no list for addon tattoos. |
| esx_tattooshop | The installer copies zaiders_tattoos.lua. Then 'zaiders_tattoos.lua', goes in its fxmanifest.lua, in client_scripts, right after 'client/tattooList.lua'. It doesn't split tattoos by sex: each design is listed for the man and for the woman, and each character only shows its own. |
| qb-tattooshop, xnTattoos | The installer adds the designs to their AllTattoos.json. They show and charge a list's price divided by 20, so the list carries Config.Price × 20. |
| bl_appearance | The block in integrations/<language>/bl_appearance/zaiders_tattoos.lua goes inside tattoosList in bl_appearance/data/tattoos.lua. The installer pastes it with Config.EditOtherScripts = true. This script shows each design by its preset name. |
esx_tattooshop saves tattoos by their place in the list
Don't reorder the list or take designs out of it later: saved tattoos would point to other designs.
Any other script
If your script reads the game's own tattoo shop, the designs are already there, by sex, with their names.
If it keeps its own list, integrations/<language>/generic/zaiders_tattoos.json has every design with its name, its label (the name the pack gives the game), its zone, its collection, the man's preset, the woman's preset and a price. Most tattoo scripts ask for exactly those fields: copy them into its format.
{
"name": "ZAIDERS_LA001",
"label": "Left Arm 001",
"zone": "ZONE_LEFT_ARM",
"collection": "zaiders_overlays",
"hashMale": "zaiders_left_arm_001_M",
"hashFemale": "zaiders_left_arm_001_F",
"price": 200
}A design for one sex only has an empty preset for the other.
What other players see
Whatever the script, the pack shows each player's tattoos to the others itself, also past the game's limit. See What other players see.
