A downloadable game

Set the angle and velocity, compensate for terrain and wind. Simple.

A fun little physics toy for a single player, best enjoyed against a human opponent

I tried unsuccessfully to make this game in the early 1990s. A lack of physics knowledge and the challenge of drawing the trajectories at a reasonable speed defeated me. Over two decades later, and inspired by the ZX Spectrum nostalgia of the recent Black Mirror special Bandersnatch, I decided to have another crack at it. I used Wikipedia to model the physics, and with some design choices I got the trajectory traces and collision detection fast enough to make the game viable.

This work is free to download, but it remains protected by copyright, and I offer no licence to the user.


I started this Sinclair BASIC game around 25 years ago using a Spectrum +2 and a C15 cassette tape. I wrote the bulk of it during a couple of weeks of late nights in February 2019, using Fuse for macOS in 48K mode with a Recreated ZX Spectrum bluetooth keyboard for the authentic keyword typing experience. The tool listbasic from fuse-utils was invaluable for allowing code review on a decent resolution screen.

Artillery by Kirk Crawford on a Macintosh Classic for the original inspiration

BMP2SCR 2.11a by Leszek Daniel Chmielewski was used to create the loading screen

Updated 2 days ago
Tagsbasic, Turn-Based Combat, ZX Spectrum
Average sessionA few minutes
MultiplayerLocal multiplayer
Player count1 - 2

Install instructions

TAP virtual tape file for Sinclair ZX Spectrum 48K/128K, works on emulators or on real hardware via DivMMC or similar

BASIC program listing and variables table provided for reference


Artillery 1.4.2.tap 25 kB
Artillery 1.4.2.bas.txt (BASIC program listing) 18 kB
Variables.csv (to accompany listing) 2 kB

Development log