gobreakout
GoBreakout is a modern browser-based recreation of a game very similar to
the classic Atari 2600 Breakout game.
It is written in Go using Ebitengine and compiled to WebAssembly.
Play Online
Play the latest GoBreakout in your browser:
https://leenipper.gitlab.io/gobreakout/
No installation is required.
Introduction
GoBreakout is a game inspired by the 1976 Atari VCS (aka 2600) Breakout game.
The source code of this game, programmed in Go,
is based on a Go 2D game framework
named ebitengine.
The build of this game
targets WebAssembly
so the game can be played in a web browser.
An initial, extremely simple version (v0.1) was coded
by ChatGPT.
Subsequent revisions progressively refined the game
based usually on new ideas given as requests to ChatGPT.
Journal of Development
I have created a development journal
for this project which may serve as a small case study
in AI-assisted software development.
The journal documents not only the game's evolution,
but also the iterative collaboration between the developer
and ChatGPT that produced it.
Game Play
This game is playable on a desktop using the Chrome browser,
and also on an Android mobile device using Chrome.
Simply reference this GoBreakout URL.
The game differs from the original Breakout in a few ways.
- The ball speeds up very gradually with brick knock outs.
- The paddle has a rounded top surface such that hitting
the ball with it can control the ball direction geometrically.
- The ball speed (SPD) is shown at the top to give player
an idea of how fast the ball is moving.
Two ball credits are provided such that one has 3 balls
to completely knock out a wall.
If all 3 balls are lost before clearing the brick wall, the game is over.
If a wall is cleared with credits remaining,
a score bonus is given equal to Wall-number x Credits x 100.
So when 2 Credits remain for first wall, i.e. Wall 1,
gives 1 x 2 x 100, or 200 bonus points.
The game continues as long as walls are knocked out,
but with the faster ball movement it does become difficult,
particularly past Wall 3.
Public accessible GoBreakout Game
You don't have to build this game.
Simply point your web browser to this game loading URL.
Note: I've found that the Chrome (or Chromium) browser works very well to run
the game, although any modern browser will likely work.
Linux Command Line Build steps
Start a File Server for the game's files (for testing locally)
Stop the local File Server
Access the locally built game on the Linux system