When comparing Allegro vs HaxePunk, the Slant community recommends Allegro for most people. In the question“What are the best 2D game engines?” Allegro is ranked 12th while HaxePunk is ranked 22nd. 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 Joystick and multi-touch support
Useful for mobile games and soon consoles (OpenFL has a console port in the works).
Pro Crossplatform testing/releasing
HaxePunk uses OpenFL which means you can compile to just about every device. A lot of the rendering code has been optimized so if you use HaxePunk’s graphic classes you are pretty much ready to deploy on any target.
Pro Generic entity system
A generic Entity system that only uses what you “attach” to it. If you need collision masks they are available but if an entity doesn’t need to collide with anything then simply don’t add a mask. Same goes for graphics.
Pro Written in Haxe instead of AS3
This comes with blazing fast compile times, proper static typing, multiple output targets, and a powerful macro system.
Pro Multiple collision masks
HaxePunk has added several collision masks beyond what FlashPunk had including a grid with slope values, circles, and polygons. This is in addition to FlashPunk’s tile grid and hitbox.
Pro Tweens
Tweens are available just like they are in FlashPunk. If you need to interpolate values for sounds, movement, etc… it’s probably already available as a tween. There is also a VarTween that lets you interpolate any value you want.
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 Messy / fragmented documentation
Not a lot of documentation is available.
Con Small comunity
It’s a small but growing community.