When comparing Allegro vs ENIGMA Development Environment, the Slant community recommends Allegro for most people. In the question“What are the best 2D game engines?” Allegro is ranked 19th while ENIGMA Development Environment is ranked 53rd. The most important reason people chose Allegro is:
The Allegro community has produced a lot of great tutorials and resources. Allegro [Wiki](https://wiki.allegro.cc/index.php?title=Main_Page), Mike Geig's Allegro [Tutorials](http://fixbyproximity.com/2d-game-development-course/), Rachel Morris' [Tutorials](https://www.youtube.com/watch?v=E4RqHtEAAds), CodingMadeEasy's [Tutorials](https://www.youtube.com/playlist?list=PL6B459AAE1642C8B4&feature=plcp).
Ranked in these QuestionsQuestion Ranking
Pro Supports desktop and mobile
Support for Windows, Mac OS X, Linux, iPhone, and Android
Pro Good engine architecture
Allegro is well designed, easy to use and has many useful features.
Pro Good documentation and lots of tutorials
Since it has been in development since mid-90s with hundreds of people contributing to both the engine and documentation, it has all of its bases covered when it comes to standard support.
Pro Per-platform library optimization
Allegro uses DirectX for Windows, and OpenGL for other targets.
Pro Freedom to implement your own game engine
You are not bound to the limits of existing game engines, and you can actually implement your own engine.
Pro Raw C++ power and GML accessibility
Almost full support for GML,
The ability to create and access C++ types, templates, and functions, compile DLLs and other C/C++ scripts
Pro Cross platform
Support for Windows, Mac and Linux.
Pro Compatible with GameMaker
Enigma can support over 90% of gamemaker's GML language
Pro Friendly user interface
besides the powerful combination between GML and C++, beginners can also use drag and dropping.
Pro Free and Open Source
Pro Faster than GameMaker
Written in C++, many features have been demonstrated running much faster than interpreted equivalents in GameMaker (up to 10-20 times faster than GM 8.1).
Pro Under active development
Changes are made daily to add new functions/fixing bugs.
Pro Helpful error messages
A full stack trace with available cores and memory information as well as operating system and Java version including file names and number is generated whenever an exception is encountered, with a handy link to submit the issue to GitHub.
Con Learning curve for hobbyist developers
Hobbyist developers coding alone may experience a learning curve with Allegro of about 200 hours (if you are rusty on C++). To learn quickly, see Mike Geig's tutorials at Fix By Proximity. This learning curve may be fine if you are considering going professional, but are still unsure.
For hobbyist developers not planning on going professional, you may want to look into a complete 2D game engine, rather than a coding library. For example, there are "non-coding" engines that provide support for coded plugins or scripting. But, if you are a dedicated hobbyist planning to use Allegro as your coding library of choice, you can still develop great games as a hobbyist.
Con Isn't great for C++
If you are a fan of object oriented programming, and want to use this library, then the chances are that you are going to be creating a lot of wrappers for functions in this library.
In short, if you're a C++ person, it could be recommended to check out SFML instead.
Con A few bugs & glitches
Because Enigma is under very rapid development, with new functions added almost daily, some bugs and unexaplainable glitches can happen, though they also gets patched quickly.
Con No code refactoring
Like any C++ based programs, the ability to refactor is limited. However, the new Ide for engima will support a few refactoring cababilities