BreakGOLD Editing

Background information

KJell Andersson's PC BreakGOLD engine is a very powerful and complex breakout engine. With the level editor included with the full, paid version, users can create new levels using custom brick images, and can add custom sound effects. Best of all, users can script custom events in the game using a small subset of standard syntax of what appears to be an x86 or Motorola 68k assembly-like scripting language. (Hereby referred to as "Break assembly") Using the game's unique Syscall commands, users can move bricks, play sounds, disable/enable bricks, detect brick-to-brick and brick-to-paddle collision, and more.

BreakGOLD Title Screen

Level Editor

Snippet of Break assembly coding

Although the game is quite customizable, the game does have some limitations and bottlenecks. Some of these limitations include the inability to edit the internal RAW images used for internal bricks and for menus, the inability to create custom high score BGH file listings (similar to old NES games, where the game comes preloaded with a high score table with developers' and other character names), lack of custom sound slots (only 100 slots), and short sound playback (up to 14.20 seconds with 22050kHz 8-bit Mono sfx .wav files)

BreakGOLD Editor

BreakGOLD Editor was designed in order to remove these limitations, and in order to allow greater customization of the BreakGOLD engine. It allows the user to:

  • Load/Save BGH high score files

  • Handle RAW images

    • View

    • Rip

    • Replace

    • Handle audio files

      • Split WAV audio files into smaller segments

      • Convert and re-encode audio files between WAV and OGG files with a specified

        • Frequency

        • Bitrate

        • Amount of channels

          • Mono

          • Stereo

    • Handle binary patches for the game executable

      • To make/apply a PPF 3.0 patch file for game modifications

      • To view/edit tweaks for the application

Using a BMP2RAW converter, existing BMP image files of the correct pixels dimensions can be converted into RAW files to replace partial or whole RAW files. Some of the RAW images are actually sprite sheets, with each sub-image appended one after another.

The utility uses 3 data files in order to populate the internal RAW picture data, in order to properly read each file. These 3 data files can be edited to work with different games which store image data as RGB565 binary files, and is flexible for other purposes.


Image Editor

High Score BGH Editor

Audio Editor

ROM Editor



BreakGOLD editor (v1.1, 01/21/2015)

Modification notes:

Most of the modifications and features that BreakGOLD Editor can perform was achievable due to original, partial reverse engineering of the original BreakGOLD engine and file formats. Below are some documents detailing:

  • ROM patch info

    • EXE file offsets of the executable of the v2.1 demo of BreakGOLD

  • BGH file format information

  • RAW image information

    • Spreadsheet listing the usage and dimensions of most of the internal .raw files

  • Information on BreakGold Editor's 3 parallel data files

    • Allows BreakGOLD Editor to operate with the hard-coded dimensions of the internal RAW art