Skip to content
← All side projects

still alive 2020 – 2026

Paratrooper

Paratrooper is one of the first video games I ever played. I rebuilt it twice, almost finished it once, and then left it alone for six years. Below is the version that is actually done.

Play the game

Click the game first, so it listens to your keyboard. Open the game in its own window →

Controls

SpaceEnter
Start the game
←→
Aim. The barrel keeps turning until you shoot.
↑Space
Shoot. Every bullet costs a point.
↓
Stop turning
PEsc
Pause and instructions
M
Sound on or off

On a touch screen: tap left or right to aim and the middle to shoot.

How this game came to be

  1. Wave 1 Late 1980s

    The original

    Paratrooper dates from 1982. I played it in the late eighties on my first computer, an 8086. You are a turret in a fixed position, shooting helicopters and paratroopers out of the sky. If four of them land on one side, they climb up and blow you to pieces.

  2. Wave 2 Around 2000

    Flash

    When Flash was the coolest thing on the web, I rebuilt the game for the first time. That was before GitHub. I searched old hard drives and backups, but that code is gone.

  3. Wave 3 May 2020

    TypeScript and canvas

    I needed a small project to learn TypeScript and wanted to do something with canvas. In three weeks I built the game again: plain TypeScript, no frameworks, a home-made dependency injection container, and everything drawn in code. The best part was the helicopter that, when hit, falls apart and tumbles down piece by piece.

    It was playable, and that is where it stopped. No jets, no bombs, no sound. The todo list moved to the README and I wrote a blog post about it. After that, the only activity for years came from dependabot.

    The 2020 version: three helicopters, paratroopers and the pink turret on a black screen, with no planes yet.
    May 2020. Helicopters and paratroopers, and nothing else yet.
  4. Wave 4 May 2025

    The planes, first attempt

    Five years later I tried to add the missing planes with Claude. It worked, sort of:

    well it works, but the bomb is not falling very realistically, without any horizontal speed. Also the plane is very ugly.

    I even pasted in a screenshot of the original little plane, but it never became what it should be. None of it was committed.

  5. Air attack! October 2026

    “Finish the game”

    Yesterday I gave Claude the repository and a single instruction: “finish the game”. That was the entire prompt.

    And it did exactly that. The game now has waves that keep getting harder, jets that drop bombs on your turret, paratroopers who build a human tower to blow you up, and a title screen. It even has sound, which I never asked for: everything is synthesized in the browser, without a single audio file.

    One thing was still off: the planes did not look like the ones in the original. So the same screenshot from 2025 went in once more. This time, what came out is what you see here.

    The jet, redrawn after the sprite of the original.

Game over?

Six years, two attempts and, in the end, three words. The code is still mine and I recognise all of it, down to the DI container from 2020. It is just finished now.

View the code on GitHub →