A downloadable game for Windows and Linux

See the author's notes for this game here.

See the source code for this game here.

This is a game based on the classic 1979 Atari arcade game Asteroids, in which the player controls a ship and attempts to avoid and destroy asteroids floating around in space. The original arcade game takes place on a torus, with both the player's ship and the asteroids wrapping around from one side of the screen to the other, requiring the player to develop an intuitive understanding of how the game's space connects to itself in order to effectively play.
    
In this variant of the game, the player can choose from six different topological surfaces (the torus, Klein bottle, sphere, real projective plane, cylinder, and Möbius strip) to play on. All of these spaces wrap around in one or two directions, but some of them mirror or rotate objects as they move across edges, meaning that the player (and their controls) can become mirrored. It is possible to interpret each space as either consisting of a single screen whose edges connect to each other, or as an infinite array of tiles that fill the Euclidean plane. In order to better view these two interpretations, the camera can be adjusted to either remain fixed in space or follow the player.

Download

Download
Topological Asteroids (Windows) 2 MB
Download
Topological Asteroids (Linux) 2 MB

Install instructions

Unzip the included files into a common directory. The game can be accessed through the main executable "Topological Asteroids".

The Ubuntu distribution requires the following packages: libcurl4, libopenal1.