When comparing Allegro vs Angel2D, the Slant community recommends Allegro for most people. In the question“What are the best 2D game engines?” Allegro is ranked 12th while Angel2D is ranked 90th. 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).
Specs
Ranked in these QuestionsQuestion Ranking
Pros
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 Great for prototyping
The framework is focused on prototyping. It has plenty of features to speed up development. It has a console with a lua interpreter, tuning variables and function calls. GWEN is well supported. Provides a simple interface for Box2D. A simple messaging system with which entities can subscribe to to receive messsages among other things.
Pro Permissive licence and easy to extend
Angel2D is built with the idea that you the game developer should have control over the framework and be able to add features if you like. So the code is BSD-licenced and very easy to extend for anyone that has completed a basic C++ course or equivalent.
Pro Great performance
While Angel2D isn't the best performing framework out there it's certainly no slog when compared to competition. Simply by the virtue of being native it puts itself ahead of engines like Gamemaker and frameworks like Love2D.
Pro Simple interface to lua scripting
If you're not comfortable with a basic subset of C++ it is not recommended to use this framework. But the Lua scripting platform is very nice for generating actors.
Pro Very helpful and simple project set up for newcomers
Often with game engines they throw you into unfamiliar territory and let you explore for yourself. While this wouldn't be a big issue with Angel2D due to it being a very simple framework it kickstarts your game prototyping.
Pro Focused on providing convenient features
Angel was created with game jams in mind, so it's focused on providing as many convenient features as possible, but in a quickly understandable way.
Pro Cross platform
Angel can create games for Windows, the Mac, most flavors of Linux, and iOS. It uses the native build systems on each platform (Visual Studio, Xcode, Make), so you can be up and running as soon as possible.
Pro Low-level code is easily accessible
Low-level code that Angel wraps is always just an easy click away, ready to be overridden or improved.
Pro Very light wrapping on all of the libraries
A very important point that's often underestimated. This framework is designed to be removed. It's not there to provide a complete engine for you which you will have trouble moving away from. The basic interface to Box2D is very spartan. You're given the simplest of Box2D shapes, not even polygonal fixtures. This limitation (seems to be) there so that the integration with the engine is very low. You never create a physics actor with anything more complicated than an enum describing if it's supposed to be a sphere shape or box shape.
Cons
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 No asset pipeline
Unlike XNA/Monogame, Gamemaker or many other similar platforms, Angel2D doesn't have an asset pipeline. The extents of the asset importing is manually loading individual files in code or naming them according to a convention to load a set of them.
Con No longer supported
Hasn't been updated in 2 years.
Con Incomplete documentation
The entire framework is technically documented at http://docs.angel2d.com/ but certain functionality isn't described in there but rather it's just a list of functions. They all have descriptive names and it should be common to run into a feature which isn't given example to in the "Introgame"-project example.
Con Abandoned by developers
Sadly this project has been abandoned by the developer. The main github doesn't see any pull requests fulfilled anymore. There's a debugline draw fix on the github that's rather simple to fix. It is recommended you pull that fork rather than the master branch. Though the simplicity of the framework still makes it a good choice for prototyping.