ENIGMA, the Extensible Non-Interpreted Game Maker Augmentation, is an open source cross-platform game development environment derived from that of the popular software Game Maker. Its intention is to provide you with a quality game creation tool and a bridge between high- and low-level programming languages. It can be used either through an IDE, namely, its sister project, LateralGM, or through a Command line interface.
Like Game Maker, ENIGMA comprises both an easy to use Drag & Drop system as well as its own programming language. This programming language, known as EDL, is essentially a mix between C++ and Game Maker's GML. Part of ENIGMA's goal is to remain backwards compatible with Game Maker, serving for some intents and purposes as a Game Maker compiler, however, EDL offers many very powerful features which simply aren't present in the alternative. Such features include the ability to compile DLLs and other C/C++ scripts right into the program and access C++ types, templates, and functions.
Although EDL adopts GML's very lax syntax in its scripting, the inputted code is actually parsed and translated into valid C++. This compilation improves size and performance of the language by incredible amounts, while almost magically maintaining its simplicity of use.
- For a comparison of the tool to other programming languages and tools, see Comparison of ENIGMA
- For license information, please see License
Want some proof of ENIGMA's prowess? Try some of our games: http://enigma-dev.org/edc/games.php?action=list
Note that most of these game were made in Game Maker, but ENIGMA can directly compile Game Maker games so they run a lot faster! Most of these games could also be made even faster by taking advantage of ENIGMA's extra features such as type casting and control over the internal mechanisms.
The ENIGMA Team
ENIGMA is developed and maintained by a growing number of individuals.
|Josh Ventura||Started the ENIGMA project. Primary developer; wrote most major systems including the parsers.|
|IsmAvatar||Started the LateralGM project. Also wrote the XLib code that enables ENIGMA to work on Linux, a BBox-based collision system, and a Berkeley sockets-based networking system for ENIGMA. Sponsored a large portion of the funds to getting a dedicated server for the project.|
|Goombert||Works on the core game engine, author of the Box2D and Bullet physics extensions, also a designer of this Wiki and has documented it a lot, also the lead developer of the C++ rewrite of LateralGM. Goombert is a network, graphics, physics and collision, and just a general developer for ENIGMA, and can also do web and interface development.|
|Josh||Creator of JoshEdit the syntax highlighting code editing component used in LateralGM|
|IsmAvatar||LateralGM project founder and lead developer, also maintains its current repository.|
|Goombert||Lead developer for wxENIGMA and the founder of its C++ rewrite.|
|egofree||A number of contributions to LateralGM including various room editor features.|
|TheSpiritXII||NaturalGM project founder and lead developer, a cross-platform alternative IDE with advanced capabilities and an abstract approach.|
|TGMG||Wrote a large number of ports for ENIGMA to different operating systems, including Android and iPhone. Helped kick off some resources, including backgrounds.|
|TheExDeus||Completed the set of sprite functions, the majority of the background functions, path functions, surfaces using fbo and most of the draw_text_* functions.|
|Polygone||Forum administrator and a main wiki administrator. Actively involved in ENIGMA development. Likes to bug test/debug and contribute towards full GM compatibility. Aims to set ENIGMA in stride for world domination.|
|Forthevin||Has fixed various problematic issues in ENIGMA and implemented several major systems including pixel perfect collisions, and the particle system.|
|a2h||Site creator, manager and designer. He claims to be able to dream in code (although it's highly doubted).|
|Gary "MahFreenAmeh" Warman||sysadmin, web dev, music connoisseur, hacker d-luxe; ready for work at any time. Designed several components of the site that "just needed to work".|
|Zane "Obelisk"||The god of the original ENIGMA logo (A PNG version of the current vector).|
|Mitch||Works on the ENIGMA Community (the one with the blogs and games). He also made the original version of the bugtracker.|
|Owen "Zekian" Delahoy||The blogs and games side of the ENIGMA Community is also improved on by Owen, who lovingly(?) squeezes more goodness out of it.|
|Noodle||Redesigned the third iteration of the ENIGMA site design. This design, the fourth one, retains only one thing from his redesign. The text color.|
|Sir Xemic/C-Ator9||Designed the original ENIGMA ambigram|
|Juju||Potential author of the help file.|
|Dazappa||Contributed a Java-written e-YAML parser so IsmAvatar could read ENIGMA's ey files. Also fixed a few LateralGM tasks/bugs.|
|RetroX||Contributed a few movement functions and designed Linux install packages.|
|Datzach||Went through a phrase of adding a load of remaining GM functions, mainly Winapi related functions for Windows.|
|r9k||Author of ENIGMA's soon-to-exist polygon-based collision system.|
|Dave||Contributed the skeleton of the surface system, as well as a dysfunctional font system he wrote without compiling it even once. Quite impressive.|
|Serprex||A brilliant coder, knowing all there is to know about optimization. His sense of motivation is screwy, and he has screwed some functions up (which Josh will remember always), but he's redone several key functions.|
|Rusky||The poor guy who got datastacks pushed onto him. (Pun) Though he did finish stacks, the rest are yet to be done (So they'll probably be redone by someone else). Rusky strives to keep everyone else in line.|
|Sir Xemic/C-Ator9||Drafted several mathy functions in GML, including draw_ellipse, draw_roundrect, and make_color_hsv.|
|"fede-lasse"||Contributed small strings of functions here and there.|
|Cheeseboy||Maintains packages and constructed the Windows Portable ZIP which is maintained by Goombert, also good to ask if you have trouble setting the program up on uncommon platforms, and also for help with compiling things.|
|Everyone else||Thank you for all the help!|
|Language:||English • Español • Italiano|