Chains tool (chains and pendants on the ped)
Updated Oct 15, 2026 Open the tool
The Chains tool at /app/chain designs a neck chain on the GTA V freemode ped and writes it as a FiveM clothing drawable in the neck slot (teef, the slot the game's own chains and ties use). It is in beta behind Tools on the left rail, under Create. Designing is free; Make chain is one conversion, counted like Props, Weapons and Clothing (3 a rolling day on Free, unlimited on Standard and up). The result goes into a pack (Packs writes the resource, its .ymt and the shop names) or downloads as files.
The stage
The ped stands in the game's own plain T-shirt with the short-sleeve arms the game pairs with it (jbib_000_u over uppr_000_r), jeans and trainers, each in its own texture from the game, male or female (the Male · Female switch at the top of the left column; changing it drops the game pieces of the other ped and an install slot of the other ped). Everything is placed in the game's own frame: what the stage shows is where the drawable sits in game. The left button orbits, the right pans, the wheel zooms. The views at the bottom right fly the camera: Front, Side, Back, Close (the neck and chest), Body. The toolbar holds the handles, undo and redo (Ctrl+Z, Ctrl+Y or Ctrl+Shift+Z), the picked piece's Duplicate (Ctrl+D), Mirror and Remove (Delete), the body on or off, the Shirt on or off (off shows the bare torso the game wears with no top) and the selection box on or off.
A click on a piece picks it. The handles are the workspace's: Move (G), Turn (R), Size (S), shown on the picked piece; they move it along the game's axes on top of where it sits by itself. Reset place in the right column puts it back. There are no number fields for position: the handles are the way to place (owner's rule for every tool).
Up to 48 pieces. The facts under the name: pieces, triangles, texture letters.
Adding pieces (left column, Add)
- Chains: fourteen link styles, each shown as a picture, in two groups. Cuban: Cuban (Miami: thick links twisted flat and nested), Iced Cuban (the same link with stones down both sides of every link), Curb (wider and flatter, diamond-cut faces), Franco (small square links at 45 degrees, packed tight), Spiked Cuban (a spike out of every other link), Baguette (long step-cut stones end to end). Classic: Cable, Figaro (three short, one long), Rope (three twisted strands), Tennis (a row of round stones), Box, Bead, Paperclip, Snake. A chain is a loop round the neck sized by its length; a second chain hangs 8 cm longer than the first, as layered chains are worn.
- Pendants: Lettering, Picture, Draw, SVG, GLB, OBJ, Generate (since 2026-10-13: the AI 3D generator in a dialog, "Generate a pendant"; words are drawn as one pendant facing the camera in a flat front view with its bail at the top and made into a model, which is added as a model pendant exactly like a GLB; spends credits, see the Image to 3D doc), and thirteen shapes (heart, star, disc, medallion, diamond, cross, plate, dog tag, crown, moon, bolt, shield, clover). A new pendant hangs from the chain picked (or the last chain added); a second pendant on the same chain hangs 4 cm to one side, a third to the other.
- Game chains: the game's own chains and necklaces for the ped in hand, as pictures with their shop names (Gold LS Pendant, Silver Moon Necklace…), worn out (the shop's tucked-in copies are left out). One is added as it is in the game, in the texture letter picked; pendants can hang beside it.
- A file dropped on the stage becomes a piece the same way: a PNG/JPG/WebP a traced pendant, an SVG an outline pendant, a GLB/GLTF/OBJ a model pendant, a TTF/OTF the face of the lettering piece picked.
The piece in hand (right column, Piece)
- Chain: Style (any of the fourteen, swapped in place), Length as six chips (Choker 62 cm, Collar 68, Mid chest 76, Low 86, Long 96, Deep 108) and a slider from 56 to 120 cm, Size (the link or stone size in mm), Detail (Low, Medium, High, with the piece's triangle count beside it; see below), Iced (stones on the links of a Cuban, Curb, Spiked Cuban, Cable, Figaro, Box or Paperclip; Iced Cuban, Baguette and Tennis are stones by themselves).
Detail and triangles (2026-10-13)
A ped piece should be light: the game's own chains are about 1,000 to 10,000 triangles, and FiveForge's library averages 77,000. Detail sets how finely a chain is built: fewer segments round each link and its wire at Low, and on iced styles Low sets half the stones (one stone per side of an Iced Cuban link instead of two, one on a plain iced Cuban link instead of three). A 76 cm, 8 mm Cuban is about 8,700 triangles at Low, 16,000 at Medium (the default) and 39,000 at High; a Cable about 4,300 / 6,500 / 15,000. Over 40,000 triangles the panel says so in one line. The worker still writes its own LODs (half, a quarter, a tenth) on top, so the game draws a chain far away with fewer triangles whatever the detail.
- Pendant: its own source (the text and Font, or the shape, or the trace settings, or Redraw), Height, Depth, Hangs from (a chain, or Chest), Loop (the bail the chain runs through), Iced (stones set on the face, pavé), and for lettering Plate behind.
- Game piece: Texture, the game's own letters as pictures.
- Model: Hangs from.
- Every piece but a game one: Metal (Main or Second), and with stones Stones (Main or Second): which of the finish's two metals and two stone colours it wears. A pendant or model hanging from a chain has a third choice first, Match chain, picked by default (since 2026-10-13): it wears whatever metal and stones its chain wears and follows the chain when that changes. Picking Main or Second lets go of the chain (the other of the two keeps what the chain had); Match chain goes back.
Why the lengths are not jewellers' lengths
The freemode ped carries a chain on a wide trapezius: the loop round the base of its neck alone is about 57 cm, so a real 50 cm chain would choke it. The chips are named by where the chain lands, measured against the game's own chains (a plain game chain is about 92 cm round on this ped and hangs 23 cm down). A chain rests on the body: its front is laid onto the ped's chest (onto the T-shirt, since in game a chain is worn over one; taking the shirt off on the stage does not move it, so on a bare chest it sits a few millimetres off the skin, as it will in game), and a pendant hangs plumb until the chest is in its way, then leans out to rest on it.
Lettering and fonts
Seven faces ship with the tool, all open licences (SIL OFL, Apache 2.0 for Marker), files and licences under static/fonts/chain/: Block (Anton), Old English (UnifrakturMaguntia, the default), Script (Great Vibes), Bubble (Pacifico), Heavy (Archivo Black), Serif (DM Serif Display), Marker (Permanent Marker). The chips show the piece's own text in each face. Own font takes a TTF or OTF up to 4 MB, kept with the project (the person needs a licence that allows it). Up to three lines, 24 characters.
Picture pendants
A picture is traced into an outline in the browser: Clear background follows the picture's transparency (a logo PNG), Dark and Light follow brightness for a picture with no transparency; Threshold moves the cut. Picture on the face keeps the picture printed on the pendant's front (off: plain metal). Thin lines in a logo lose detail at a pendant's size; bold shapes read best.
Drawn pendants
Draw opens a pad: a click adds a corner, a corner drags, Mirror (on by default) draws the left half and gives the right, Undo and Clear. Add makes the pendant; on a drawn pendant Redraw reopens its outline.
Finishes are texture letters (right column, Finish)
A clothing drawable in GTA V shows one texture at a time, picked by its letter (a, b, c…) like any clothing texture. Each letter here is a pair of metals (Main metal, Second metal: gold, white gold, rose gold, silver, black, copper), a pair of stone colours (diamond, ruby, sapphire, emerald, amethyst, onyx, yellow, pink) and a Polish. Add letter (up to 8) starts from the last one with its metals swapped. The stage wears the letter picked. One export writes the model once and one texture per letter, so a server gets gold, white gold and black versions of the same chain as one item.
How it reaches the game: the worker writes clothing on the ped shader, which takes a colour texture and nothing like real reflections, so the export bakes the look into the texture: each metal as a lit sphere looked up by every vertex's facing (polished links keep their highlights), stones as facets, a picture on a pendant's face and a game piece's own texture in their own squares. The game's lighting does the rest; the stage's real reflections are a preview.
Making the chain
The In game row at the foot of the left column says where it goes: New piece (an add-on in the neck slot, Packs numbers it) or Replaces …, picked from every neck slot of the ped in hand as pictures (chains first, All for ties and scarves too). Replacing streams the design over the game's own piece in that slot for every player who wears it.
Make chain merges every visible piece into one GLB with the atlas (in the browser), saves it to the library, and runs it as a Clothing conversion (mode: clothing, kind component, template teef, the ped, no fit: the design is already in the ped's frame). The worker skins it from the ped's body (in tests it took 80–89% of its weight on SKEL_Spine3 and the rest on the clavicles and Spine2, as the game's own chains do) and writes <name>.ydd and <name>.ytd with LODs. The other letters go through /convert/images-to-ytd, one YTD each. Then:
- Add to pack hands the files to Packs under the game's names: an add-on as
mp_m_freemode_01^teef_000_u.yddwith^teef_diff_000_a_uni.ytd,_b_uni… (Packs gives it its own number); a replacement as the slot's own name,mp_m_freemode_01_<collection>^teef_<NNN>_u.ydd(or_rwith_whitextures where the game's piece is per skin tone), which Packs reads as streaming over that game piece. - Download zips the same files.
A design changed after Make chain makes the result stale: the foot offers Make chain again. A failure says why in one line (Conversions used up today with a plans button, Sign in to make the chain, or the worker's sentence) and the design stays.
Projects
The design is a project on the device from its first piece (the address gains the project id; a reload or a later visit brings it back with its pictures, SVGs, models and fonts). Undo keeps the last 80 steps of the session.
The game's own pieces
static/chain/game/ holds every neck slot of both freemode peds, base game and every DLC collection (382 slots in 65 collections at the 2026-10-13 build, legacy game files): index.json (id m:<collection>:<index>, the shop's name and restriction tags, its letters and their names), a model for the 190 chains and necklaces (models/<slug>.glb, the high LOD in the game's frame, bind pose), each of their letters as a picture (textures/), and a picture of every slot (thumbs/). They come from the game itself through winapi scripts/chains_game.py (CodeWalker, the shops' apparel metas for the names; a slot is a chain when the shop tags it CHAIN, BIG_CHAIN, HOOP_NECKLACE, BEAD_NECKLACE or EPSILON_CHAIN, or its name says chain, necklace, pendant, medallion, beads, tags or cross); the pictures and the link-style pictures (static/chain/styles/) are drawn by node scripts/chain/thumbs.mjs <work dir>.
Compared with FiveForge's Chain Creator
Researched 2026-10-13 (obsidian-notes/Zoovdev/2026-10-13 FiveForge Chain Creator Research.md). Theirs: 5 link styles, 3 fonts, 6 shapes, a library of 236 chains, 184 pendants and 1,143 textures (none of it Rockstar's, much of it trademarks), 200 credits an export and 200 again to re-edit. Ours: 14 styles at measured lengths (6 Cuban styles) with three detail levels that rest on the body, 7 fonts plus your own, 13 shapes, traced pictures, the game's own 190 chains and necklaces, finishes as texture letters, replace-by-picture, one conversion. Nothing of theirs is used; when a person asks for one of their pendants (a celebrity, a car brand, a cartoon), the honest answer is that we ship no third-party likenesses or logos: their own picture traced into a pendant is the way.
Fixed 2026-10-13: links drawn inside out
Before the fix every link and set stone was placed as a mirror image (the frame along the chain was left-handed), so its triangles faced inward: the stage drew the inside of each link, lit from behind, which made the chains look paler than a pendant in the same gold, and the game (which hides back faces) would have shown them broken. Links are now placed right-handed, the bead's sphere and the box link's corners were corrected with them, and geometry.test.ts checks every style's triangles face outward. The stage's reflections are a soft studio (a warm top, a mid horizon, two soft boxes) instead of a room with hard lamps, so flat and round metal read alike.
Fixed 2026-10-13: a dressed ped, chains over the shirt
Until then the stage showed the bare torso and painted the game's skin overlay onto the jeans and shoes, so the legs looked like skin-coloured trousers, and a chain was laid onto bare skin, where a T-shirt in game would have covered part of it. The stage now wears the game's own T-shirt, arms, jeans and trainers in their own textures and lays the chain onto the shirt. The dressed body is built from the game files by zoovdev-winapi/scripts/ped_dressed_build.py (static/ped/<ped>/dressed.glb and dressed/<part>.webp); the other tools keep the bare body.glb. A design made before this sits a few millimetres further out once it is opened again.
Limits and what support should know
- Not checked in game yet (2026-10-13): the look of the baked metals under the game's light, the stones, and a replaced slot in a real resource. The skinning and the position were checked against the game's own chains with the worker run locally.
- Emissive glow (a lit pendant) is not possible yet: clothing is written on the plain
pedshader. - A model pendant (GLB, OBJ) takes the finish's metal; its own textures are kept only on the stage.
- The game pieces are the legacy game's files; Enhanced-only pieces are not in the catalogue.
- Very thin parts (fine script lettering, thin links at small sizes) lose detail at a distance in game; the triangle count shows in the facts (a heavy iced Cuban with pendants can pass 50,000).
Landed (2026-10-15). scripts/chains_game.py (the game chain catalogue builder this doc names) was committed to winapi as c59b8c1 on 2026-10-15; nothing in how the tool works changed.