--- title: "Making and Uploading a Custom Spray in CS 1.6 (logo.bmp)" excerpt: "Build a CS 1.6 spray the game will accept: correct BMP format, power-of-two size, importing through the menu, binding the spray key, and why servers rate-limit it." category: "client" tags: "spray, custom-content" image: "" read_time: "7 min read" ---
A custom spray is a small decal you paint on walls with a keypress. CS 1.6 is fussy about the image format, and most "my spray shows up black" complaints come from feeding it a file it cannot use. This covers the exact image requirements, how to import it, how to bind the spray, and the server-side limits that stop you spamming it.
The importer accepts a BMP (or TGA), but it must meet old-engine rules:
If your editor cannot save 8-bit indexed BMP, reduce the colour depth to 256 colours (Indexed mode) before exporting.
The reliable path is the in-game importer, which converts your file into the internal decal the engine uses:
cstrike/tempdecal.wad — that generated file is your active spray.You do not hand-place files for a basic spray; let the importer produce tempdecal.wad. If the preview looks wrong at this stage, the source image failed the format rules in step 1 — fix the BMP and re-import.
Spraying is the impulse 201 command. Bind it to a comfortable key in your autoexec.cfg so it survives restarts:
bind "t" "impulse 201"
Aim at a wall and press the key. Sprays go on solid surfaces, not on players or the sky.
Even a perfect spray is throttled by the server and by decal settings, and this is deliberate:
decalfrequency — a server cvar setting the minimum seconds between a player's sprays. Spray again too soon and nothing paints. Admins raise this to curb spam; see the server cvars list.r_decals — your own client cap on how many decals render at once. If it is very low, older decals (including sprays) are culled quickly.Because the active spray lives in tempdecal.wad, keeping several is a matter of saving copies. Back up the generated file under a new name, and to switch sprays, copy the one you want over tempdecal.wad (with the game closed) or just re-import a different image. Note the game can regenerate tempdecal.wad on launch, which is why re-importing is the dependable way to change it.
A spray that looks great as a 256-colour file on your desktop can turn into an unreadable smudge on a wall across the map. Two habits keep it legible: use bold shapes and thick outlines rather than fine detail, and pick a small, high-contrast palette. Because you are limited to 256 indexed colours anyway, a design built from a handful of flat colours converts cleanly, while a gradient-heavy image bands badly during the reduction to indexed mode. Test the finished spray in-game at range before you settle on it — the wall at fifteen metres is the only preview that matters, and a logo that reads clearly there is worth more than one that only looks sharp in the importer.
decalfrequency. Confirm the bind and wait a few seconds between sprays.tempdecal.wad. Re-import the image you want as the active spray.Host a local server or join any server that allows sprays, face a wall, and press your spray key:
impulse 201
Your logo should appear crisp and in the right colours. If it paints correctly offline but not on a particular server, that server is throttling or disabling sprays — not a problem with your file. Read your bind back with bind t to confirm it is set, and if the image itself is wrong, the fault is always the source BMP's format, so return to step 1.