Skip to content
🖥️ PC1999Minh Le and Jess Cliffe (Valve from 2000)BRUTAL

Counter-Strike rebuild deck

BRUTAL

Everything that makes it Counter-Strike is the server rewinding every player back to what your screen showed 60ms ago, and that is a distributed-systems argument you cannot reach from a local build.

The hard part is not game design at all.

The first beta shipped in June 1999 as a Half-Life mod by two people, which is either encouraging or the most misleading fact on this site. Valve teamed up with Minh Le and Jess Cliffe the following April, and the 1.0 that Sierra put in shops in November 2000 stood on Half-Life's networking. That is the part you cannot prompt: the server rewinding the world to what the shooter's screen showed is the competitive contract, and every argument about this game since has been an argument about milliseconds. Build the local version anyway. Nothing teaches you more about shooting feel than finding out that the spray pattern, not the hit detection, is what makes it good.

Difficulty
BRUTAL · 5 of 5
First playable
A project
The original
6 team-years
Released
1999 · PC
Genre
Tactical Shooter
The one-shot build prompt
Build a round-based tactical shooter against bots. three.js, one bomb-defusal map, five a side, local only — the networking is the product and you are deliberately not building the product.

Requirements:
- Recoil is a deterministic, memorisable pattern, never random spread. Each weapon owns a fixed array of aim offsets indexed by shots-fired; the crosshair walks that array identically on every burst and resets after a short pause. Layer a separate inaccuracy multiplier scaled by player velocity and whether the feet are off the ground. This is the whole game: bullets go exactly where the pattern says they go, so standing still becomes a decision and learning the pattern becomes a skill. A random cone makes it a dice roll and nothing else you build will matter.
- One life per round, freeze time at the start, buy zones and a buy menu. Economy: a win payout, an escalating loss bonus, per-weapon kill rewards, and equipment carried over only if you survive.
- Bomb with a plant timer and a defuse timer halved by a kit. Planting inverts the roles — the attackers now defend a clock.
- One map, two sites, three routes, with long sightlines that reward holding an angle over pushing it.
- Bots with a preferred hold position per site, a rotation triggered by sound, and reaction times you can tune, starting around 200ms.
- Feel: footsteps audible through walls at a defined radius, armour reducing damage, and multiplied headshot damage.

Definition of done: I learn the rifle's pattern well enough to pull down against it, and I land the second and third shots on purpose.
What you lose
  • Lag compensation: the server rewinding every player back to what your screen showed 60ms ago, which is the product
  • Twenty-six years of map balance across about seven maps, most of it settled by arguing
  • Anti-cheat, and the permanent war with people whose hobby is ruining it
  • Recoil patterns that hundreds of thousands of people have committed to muscle memory
What to steal

The escalating loss bonus

A payout schedule that pays you more the worse you are doing is the cheapest comeback mechanic ever invented, and it costs nothing to run — no rubber-banding, no difficulty scaling, no lying to the player about what happened. The losing side just gets richer until it can afford one real attempt, and everybody in the room can see it coming.

ScopeAn evening— build just this, not the game

Single self-contained HTML file, Canvas 2D, no build step. A round-based duel between two sides, resolved abstractly: no shooting, no movement. Each round both sides spend a budget on a loadout drawn from six items with plain numeric stats, and the outcome is a deterministic function of the two loadouts with no randomness at all. The mechanic is the payout. The winner gets a flat sum; the loser gets a consolation payment that steps up with each consecutive loss and drops back to the floor on a win. Unspent money carries over, and so does surviving equipment. Put both banks, the current loss streak and the current bonus tier on screen permanently, because the tension only exists if it is legible. Add a debug panel to edit the payout numbers live. Definition of done: I lose four rounds in a row, out-buy the opponent on the fifth, and win it without the resolution rules changing at all.
Make it different

Not a clone — Counter-Strike re-themed and cut down to something you can finish. The angle is the important reel: it is what turns a project into a weekend. 24,360 ways to land.

Deniable Overhead

Counter-Strike, but top-down instead of first-person, set in Cold War espionage. Rendered in paper cut-out collage.

ThemeCold War espionage
Angletop-down instead of first-person
Lookpaper cut-out collage
Build a browser game called "Deniable Overhead".

The pitch in one line: a tactical shooter in the spirit of Counter-Strike, but top-down instead of first-person, set in Cold War espionage.

WHAT THIS IS
Take the SHAPE of Counter-Strike — its core loop, and whatever makes that loop good — and rebuild it as your own game in a different world at a smaller scope. Use your own names, art and audio, which you want anyway: a reskin of somebody else's game is less interesting than a new one that works the same way.

THE ANGLE — this is the important constraint, honour it above everything else
Top-down instead of first-person. A fixed overhead camera. You lose immersion and gain readability, a far cheaper art pipeline, and collision you can actually debug.
This is what makes the project finishable. If a decision would push the scope back towards the original's, take the smaller option every time.

THE THEME
Cold War espionage. Nobody can be trusted including your own side, and the failure state is exposure rather than death.
The theme is not a coat of paint. Let it change what the mechanics mean — a reload, a health pack and a locked door should all be things that make sense in this world and nowhere else.

LOOK
Paper cut-out collage. Layered cardstock shapes, soft drop shadows between layers, and scissors-edge silhouettes that parallax.

REQUIREMENTS
- Runs in a browser with no build step. Canvas 2D unless the angle genuinely requires 3D, in which case three.js.
- Fixed-timestep update loop with interpolated rendering, so it behaves the same at 60Hz and 144Hz.
- Every tuning constant in one CONFIG object at the top, exposed as live sliders in a debug panel. You will find the feel by dragging those, not by prompting.
- All content — levels, entities, balance numbers — in JSON or plain data files, never inline in the logic.
- Audio generated with the Web Audio API rather than asset files.
- Respect prefers-reduced-motion: keep the fades, drop the shake and the parallax.

BUILD ORDER
1. The core loop with placeholder rectangles, at the reduced scope the angle demands. No theme, no art, no audio. Make it fun as rectangles first.
2. The angle's consequences. Cutting to bots, or to turn-based, or to one level changes the design rather than just shrinking it — find out how and rewrite step 1.
3. The theme, as content and data.
4. The look, applied last as a rendering layer over a game that already works.

Start by writing a one-page plan: the core loop, what the angle removes and what that frees you to do properly, and what you are deliberately leaving out. Wait for me to approve it before writing code.
Prior art — read before you build

Half the time one of these already does what you wanted, and the other half it saves you a week of solving a problem someone documented in 1997.

Did you build it?
0Share on X

One count per game. No account — it is tied to a salted hash of your IP, which is not stored in a form anyone can reverse. Every build adds 6 team-years to the counter on the homepage.

Questions

How hard is Counter-Strike to rebuild with an AI agent?

Yes — every game is buildable at some scope. The question is how hard, and Counter-Strike is BRUTAL (5 of 5). The hard part is not game design at all. Everything that makes it Counter-Strike is the server rewinding every player back to what your screen showed 60ms ago, and that is a distributed-systems argument you cannot reach from a local build. Reckon on a project to something you can actually play — not to something that matches the 6 team-years Minh Le and Jess Cliffe (Valve from 2000) spent.

What makes Counter-Strike hard to rebuild?

Everything that makes it Counter-Strike is the server rewinding every player back to what your screen showed 60ms ago, and that is a distributed-systems argument you cannot reach from a local build. That is why it sits at BRUTAL rather than a tier either side of it. If you want the idea without the project, the transferable part is the escalating loss bonus — an evening of work.

How long does it take to build a Counter-Strike clone?

Wrong question, and it is worth saying why. Nobody rebuilds Counter-Strike — the original took Minh Le and Jess Cliffe (Valve from 2000) on the order of 6 team-years, released in 1999 on PC. What you can do is reach something playable and genuinely yours in about a project, and then keep going for as long as it stays interesting. Any figure that claims otherwise is measuring a prototype and calling it a game.

What do I lose by building my own Counter-Strike?

Lag compensation: the server rewinding every player back to what your screen showed 60ms ago, which is the product. Twenty-six years of map balance across about seven maps, most of it settled by arguing. Anti-cheat, and the permanent war with people whose hobby is ruining it. Those are the parts a prompt will not hand you.

Which AI coding agent should I use to build it?

Any of Claude Code, Codex or Cursor will handle this prompt. Paste it as your first message, let the agent scaffold the project, then iterate on feel — the second, third and tenth prompts are where a game actually gets good. Work in an empty folder or a fresh git branch so you can throw it away cheaply.

Get the next game

One email when new games go on the list. No other reason to email you, ever.