Who sees your skin
Who sees your skin
Skins are shared. Other players see the designs your players make, and the sync is on by default — nothing needs enabling.
The short version
| Weapon | What others see |
|---|---|
| One of the ten prop-lane weapons | Your actual design, on the whole weapon |
| Carbine Rifle Mk II, Marksman Rifle Mk II, Pistol Mk II | Your actual design, on the weapon's camo surfaces |
| Anything else | The design of whichever nearby player is closest, on everyone's copy of that weapon model |
In every case the weapon has to be in the player's hands. A skinned weapon in a pocket shows nothing, because nothing is drawn.
Range is Config.Sync.radius, 25 metres by default.
Why the third row exists
The game replaces weapon textures at model level, not per entity. There is exactly one texture slot per weapon model on each client. Two players holding a Combat Pistol cannot show two different Combat Pistol textures at the same time — not a limitation of this script, but of the native it has to use.
Two of the three mechanisms exist purely to work around that.
Prop lane — full body, ten weapons
The real weapon is hidden and a per-slot copy of its model is overlaid on it. Because each copy is a separate model, each one has its own texture dictionary, so the players in a scene stop competing for one slot. This is the only path that covers the whole weapon.
The real weapon stays equipped throughout: inventory, ammo, damage, recoil, firing, muzzle flash, animations and the serial number are all untouched.
Config.Lanes.prop = {
enabled = true,
slots = 4, -- how many different designs can show at once in one scene
weapons = { 'WEAPON_PISTOL', 'WEAPON_COMBATPISTOL', ... }, -- ten weapons
}
slots = 4 is not "four players per server". Slots are handed out by proximity, so players who cannot see each other share a slot and four slots cover an entire server. The limit only bites when more than four skinned players holding covered weapons stand together, and the extras fall back to the third row rather than showing something wrong. Two players who walk into each other while holding the same slot are reassigned within a few seconds.
Adding weapons to this lane is on Adding weapons.
Camo lane — Mk II camo surfaces
Every Mk II camo component is its own model, so it has its own texture dictionary. Painting a camo slot affects only the players wearing that slot, which makes it a second way around the model-level limit — and this one the game replicates natively.
Config.Lanes.camo = {
enabled = true,
slots = 10,
baseModel = 'vanilla',
}
The camo component sits on top of the weapon body; it does not cover it. The body still uses the base model's texture, which is model-level and cannot be separated per player. baseModel decides what happens there, and there are only two coherent options:
| Value | The weapon body | Trade-off |
|---|---|---|
'vanilla' (default) |
Left alone | Nobody ever sees a wrong design; the weapon does not look fully covered |
'own' |
Carries the local player's design | Your own weapon looks fully skinned, but everyone else holding that model shows your design on their body too |
Verified camo slots exist for Pistol Mk II, Carbine Rifle Mk II and Marksman Rifle Mk II. SMG Mk II and Assault Rifle Mk II are locked — see Adding weapons.
Fallback — nearest player wins
For every other weapon, the model's single texture slot goes to the nearest player holding that model. In practice you see the design of whoever you are actually looking at.
A challenger has to be meaningfully closer than the current holder before it takes the slot (Config.Sync.hysteresis, default 0.8). Without that, two players at a similar distance would trade the slot on every scan and the weapon would visibly flicker.
"My design appeared on someone else's gun"
That is the model-level limit, and it is the most visible symptom of it. It is not a bug, and it is not your configuration.
Config.Sync.conflict decides what happens when someone else nearby carries a weapon of the same model as yours:
| Value | Behaviour |
|---|---|
'mine' (default) |
Stay on your design. Your own weapon is always correct; other players carrying that model look like you |
'vanilla' |
Drop the design entirely while the clash lasts. Nobody shows a wrong design — but you lose your own skin too, until they walk away or switch weapons |
Neither is right. It is a trade between your weapon looking correct and other players not looking wrong. If your server finds the copying more jarring than losing the effect, switch to 'vanilla'.
The clean answer is to put the weapon on the prop lane, where the problem does not arise at all.
"My design shows on a second copy of the same gun in my own inventory"
Same cause. One texture slot per model per client means every Combat Pistol on your screen — yours, the spare in your inventory, the one on the player next to you — shares it. True per-weapon separation only exists on the prop and camo lanes.
Turning sync off
Config.Sync = {
enabled = false,
}
Designs then stay private to their owner. The other tuning knobs:
| Key | Default | Meaning |
|---|---|---|
radius |
25.0 |
Metres. Past this a design is not worth rendering |
interval |
700 |
Milliseconds between scans |
maxModels |
12 |
How many texture targets may be live at once |
hysteresis |
0.8 |
How much closer a challenger must be to take a slot |
conflict |
'mine' |
See above |
Checking it on a live server
/gunsmithsync what the sync scanner currently sees
/gunsmithlook the local player's own appearance state
/gunsmithpool the texture pool and what is holding each slot
All three print to the console and change nothing.
See also
- Adding weapons — putting a weapon on the prop lane
- Weapon catalogue — which lane covers which weapon
- Troubleshooting