GORILLAS.BAS was my first hack. This is a native Android remake, built with Claude.
No build required. Download the app and tap to install:
On Android you may need to allow "install from unknown sources" the first time. Two-player hotseat or single player against the CPU, landscape, no ads, no network, no tracking.
My first lines of code ran on an Amiga 500. Not long after, on a beige PC, I found a hidden QBasic game called GORILLAS.BAS: two gorillas on a city skyline lobbing exploding bananas at each other. An angle, a velocity, and the wind. It shipped as plain BASIC source, so my first real hack followed within days. Wilder wind, bigger explosions, a faster banana. That was the moment I understood that when the wind itself is the problem, you can open the source and change it. It is the reason I have been building things ever since.
Three and a half decades later I wanted it back on a phone. The idea and the direction were mine, the Kotlin was written by Claude. Not really a coding project any more, that part is easy now. It is a love letter to the program that started everything, rebuilt so it boots on a phone instead of a beige tower.
A native Android app in Kotlin, a faithful port rather than a reinterpretation:
- the original EGA look, drawn procedurally the way the 1991 code drew it
- PC-speaker melodies synthesised as square waves
- real craters you can shoot bananas through, original throw physics with wind
- a touch numeric pad for angle and velocity, so no system keyboard covers the field
- a new single-player mode against a CPU that feels its way to your position (and stays beatable), alongside the classic two-player hotseat
None of the original code was copied. The original served only as a behaviour reference.
The QBasic game everyone calls Gorillas (the DOS file was GORILLA.BAS) shipped with MS-DOS QBasic in 1991. Background: en.wikipedia.org/wiki/Gorillas_(video_game)
Needs a JDK 17 and the Android SDK.
./gradlew assembleDebug # build the APK
./gradlew testDebugUnitTest # JVM tests: physics, skyline, PLAY parser, graphics
A prebuilt debug APK (gorillas.apk) is included at the repo root, see "Play it now" above.
Bitmap font: the freely redistributable IBM EGA 8x14 ROM font from github.com/viler-int10h/vga-text-mode-fonts.
Idea and direction by Tobias Zander (tobiaszander.de). Built with Claude (Anthropic).
MIT. See LICENSE.


