The question
Between 2006 and 2008 CrimeClub.nl was one of the biggest Dutch browser games. You could see it on the counters on its home page: 1,729 members in early 2006, 4,000 a year later, 45,000 by early 2008. You stole cars, bought weapons, started a family, bought land with nightclubs and motels, and at the end of a round real money went to the top three.
On 18 April 2008 the owners called it a day. No more resets, no new round, because they could no longer maintain the site the way they wanted. The script went to nobody. And that was that.
Rebuilding a game like that is not the same as copying it. Everything that made it good sat in the rules: the cooldowns, the odds, the rounds, the families. Everything that made it awkward sat in the technology: tables inside tables, a full page reload on every click, and a site that only worked if your screen was at least 1024 by 768. That last one was literally printed on it as advice.
The brief I set myself: keep the game exactly as it was, and throw away everything around it.
What I did
Built entirely by me in PHP 8, with my own structure and no framework or Composer. No library that stops being maintained in three years, no build step to repeat just to change a line of text.
The game itself is all there. Crimes in two weight classes, stealing vehicles, a garage, drink, drugs, the red light district, smuggling routes, the casino with blackjack, roulette, keno, dice, the slot machine and the lottery, the racetrack and the street race, the gym, the hospital and the prison, the hit list and the killings with a will attached. Plus the whole family layer: founding one, inviting, its own bank, garage, shoutbox, missions and heists. Eleven US states, each with a grid of plots where you buy land and put clubs, motels and casinos on it that pay out by the hour. A hundred and seventy-five addresses in total, spread over seventy-four separate services.
The home page carries the 2008 copy word for word, now spoken by The Don, the mascot who walks you through the game. Steal the finest vehicles, buy the best weapons and protection, start your own family with more than thirty missions. Anyone who played it back then recognises those lines instantly.
What did change sits underneath. Navigation goes through AJAX: the server sends ordinary HTML and the script swaps only the blocks that differ, so the game feels like an app without being one. Turn JavaScript off and it all still works as plain pages. It is mobile first, with its own bar along the bottom, because nobody plays this at a desk any more. Scheduled tasks ride along with page visits, so no background processes are needed. And the game speaks five languages: Dutch, English, French, German and Turkish, with over three thousand translated strings each.
Before a deploy a check fetches every page, logged out and logged in, in all five languages. That is 666 pages per run. One error and nothing goes to the server.
What it delivered
A game that is playable again, on a phone, in five languages, with the rules of fifteen years ago and none of the baggage that came with them. The resolution advice is gone. It is not needed any more.
The round is open and the first players are coming in.
What it looks like
Other projects
Port Father
My own browser game about the Antwerp underworld in 1931. Six districts to take over, families to join, and a port where the money comes in.
See this project →Stipt
A web app for shop inspections: walk your round on your phone, and anything out of order automatically becomes an action point with a name and a deadline. Built from scratch, from the first screen to the invoicing.
See this project →TuinKlussen.be
A marketplace where garden owners post their job and gardeners from the same area respond. Built from scratch, from the first table to the mascots.
See this project →