University project · Web & Digital Products
Trapped Among the Hordes
A browser game in plain JavaScript, built in ten days: Paxton is trapped in a dead-end alley and has to hold back a horde of zombies that keeps getting faster.
The game, its programming, drawings and sprites were made in 2022 without generative AI. For its republication in 2026 I worked with AI assistance: the new start-screen background (it replaces a collage with third-party images; the soldier illustration is the original), bug fixes, 30-point milestones, pause, touch controls for phones and new music and sound effects generated in code.
- Context
- Course project, Creative Code Lab 1, FH St. Pölten
- Role
- Concept, drawings, pixel sprites and programming
- Year
- 2022
- Tools
- JavaScript, HTML Canvas, CSS, Photoshop
Context
The story takes place in the early 1990s, in the city of Marmot. A common cold epidemic, the C virus, mutates: people who die of it wake up again with no consciousness, only hunger. Police officer Paxton Piskel is trapped in a dead-end alley with a machine gun. The goal is to survive as long as possible: every zombie gives points, and the zombies speed up when they cannot reach him. The game is inspired by “Contra”, one of the first games I played as a child.
Goal
It was the first game I designed, after about four months of programming classes. My first idea was a Space Invaders-style game built on an existing program. After a review with the lecturer I changed course and rebuilt the game on what we had learned in the 2D browser game course, so I would really understand JavaScript instead of adapting someone else's game.
Design decisions
The character went from a detailed pencil drawing to a simple, blocky figure that could work as a small pixel sprite. My sketchbook pages are literally titled “Simplify the model”. The zombies got two designs, so the horde would not look like copies of one sprite.

Process
Ten working days, following my log:
- Presenting the concept and the first sketches.
- Rethinking the Space Invaders idea after feedback, and going back over the recorded 2D game classes.
- Movement and limits for the character, and the first zombies on the canvas.
- Shooting: bullets that hit a zombie remove it and add points.
- Sprite animations, and the two zombie designs appearing at random.
- Difficulty: every 50 points the zombies move faster. Game over when they reach the player or the bottom.
- Sound, music and a final pass on the graphics.
Result
The hardest parts were the bullets hitting the zombies and making two animated zombie designs appear at random. Sound, which I expected to be difficult, turned out to be simple. The first playable version ran on the university server, which is no longer online; since 2026 the game can be played again on this site, with a keyboard or with touch buttons on a phone. For this republication I fixed two bugs from 2022 without changing how it plays: zombies could appear on top of each other, and a defeated zombie could still end the game.
Gallery


