Tombstone
ZenerdCSCrosshair
Mar 2001 – May 2001 · age 19
What it was
A tiny MFC dialog, a personal tool unaffiliated with the game, meant to paint a fixed red crosshair over Counter-Strike so a player always had a static aim point. Pressing its "Start Hack" button started a 1 ms timer that searched for a top-level window with the game's caption. Once found, the plan was to borrow the game window's drawing context and draw a small round-capped cross at its centre. That drawing code exists, and every line of it is commented out, so the shipped build only found the window and reported that it was waiting. A second commented-out feature would have embedded a hidden browser control refreshing an ad page every fifteen seconds. Scaffolded one March afternoon and finished in one May evening, it is effectively a stub.
Wins, for the age
- At nineteen, Jeff found the simplest possible way to attach to another program: no injection, no hooks, just wait for its window caption to appear. A primate with a want and very little code between the want and the machine.
- Wired a browser control into a dialog to carry ads, the same model Opera's ad-supported browser had used a year earlier. A freeware brand with a monetisation plan before it had a product.
- Commented out the overlay rather than shipping something that flickered or failed over a fullscreen 3D surface. Whether by judgement or by frustration, the broken part did not go out.
What it taught
- Finding a window is not owning its pixels. GDI cannot reliably paint over a surface owned by a 3D API, which is why real overlays use layered windows or in-engine features.
- Polling has a cost. The 1 ms timer ran forever and was never killed, and each tick bumped the system cursor's display count without bound.
- Tools that reach into someone else's process carry ethical weight. Even a harmless aim dot has the same shape as a cheat loader, and intent is the whole question. This was the first time that texture was felt.
- Dead dependencies are still weight: the browser wrapper sat in the build, wired to nothing.
Genealogy
Ancestors: none on record. A one-evening side trip. Descendants: none on record. Nothing here was carried forward, except a lesson about what not to build.
Epitaph
Here lies ZenerdCSCrosshair, which waited a thousand times a second for a window it never learned to draw on.