Jump to navigation Jump to search
ENIGMA's C++ IDE in use with native look and feel on Windows 10.

The project is a code name used to refer to the C++/Qt-based ENIGMA IDE that is being developed. The project was started by Goombert to improve ENIGMA's UI experience and the stability of game serialization. The architecture of the project is loosely based on MVC and MVVM and is centered around the ENIGMA compiler's Google Protocol Buffer format used in emake and libEGM to load, save, and compile games. The Google Protocol Buffer format is treated as the single source of truth for resource data and is contained in a Qt QAbstractItemModel that makes it possible to map various views/editors to it.

GitHub Repository: https://github.com/enigma-dev/RadialGM


The project is also licensed under the same License ENIGMA is licensed under, that being a modified GPL v3.


The goal of this project as stated earlier is to improve upon the ENIGMA UI experience, stability, and scalability.

Some advantages the new IDE will provide:

  • Custom theming using Cascading Style Sheets
  • Hardware accelerated rendering
  • Runs natively among other optimizations
  • Improved compile times
  • Ability to handle much larger project files
  • Advanced code editing including break points and code folding
  • Dock interfaces and widgets allowing custom layouts with persistent state between sessions

Installing (Building) RadialGM on Windows

- Step 1: ENIGMA Installation Setup

  • To start, you must first follow the instructions on installing ENIGMA (using the Msys2 method) up to Step3: Downloading ENIGMA. You don't need to download ENIGMA or anything after that as the Radial git clone you're about to to will include ENIGMA (https://enigma-dev.org/docs/Wiki/Install:Windows)

- Step 2: Install RadialGM build tools

  • IMORTANT!!: Switch to the msys2 shell again! Found in your msys folder, probably in your C:/ directory
For 64 bit Windows:
pacboy -S mingw-w64-x86_64-qt-creator
pacboy -S qscintilla:x
pacman -S mingw-w64-x86_64-clang
pacman -S mingw-w64-x86_64-gdb
Or for 32 bit Windows:
pacboy -S mingw-w64-i686-qt-creator
pacboy -S qscintilla:i
pacman -S mingw-w64-i686-clang
pacman -S mingw-w64-i686-gdb

- Step 3: Get RadialGM source code

  • IMPORTANT!!: Switch to the MinGW Shell again! Use mingw64.exe for 64 bit Windows or mingw32.exe for 32 bit Windows
cd put/here/whatever/path/you/want/RadialGM/to/be/installed/to
git clone https://github.com/enigma-dev/RadialGM.git --recursive

- Step 4: Build RadialGM ENIGMA submodule

cd RadialGM/Submodules/enigma-dev

- Step 5: Run Protocol Server

  • Finally run emake.exe and you should be done with the installation. Replace ~ with the full path to your RadialGM directory.
~RadialGM/Submodules/enigma-dev/emake.exe --server --quiet

- Step 6: Open RadialGM project in Qt Creator

You need to run this command inside the MinGW shell whenever you want to open RadialGM up (in QT Creator). Replace ~ with the full path to your RadialGM directory.

cd ~/RadialGM
qtcreator ./RadialGM.pro

Note: To configure Qt Creator

By default, Qt Creator should open up with the "Projects" tab open (from the left hand side). Select it if not.

Click the "Configure Project" button on the right.

From the main menu, Build -> Run

See Also