Pangolin is a modular game framework for BlitzMax. It takes care of the common elements of building a game, such as screen management and resource loading, and it adds support for some nice things like animations, tile maps and extendable game entities.
Pangolin is designed in a modular way, so you only need to include the bits and pieces you want. Want some flexible game entities, scripting and tile maps? No problem. Just want to use the kernel and event listeners for a server app? That's fine too!
The main game runs a kernel loop that can have services added at runtime. These services handle small parts of functionality, with many common services already built into pangolin, leaving you free to add more custom services.
Games often contain different screens, such as title screens, gameplay screens and high score screens. Pangolin has built in screen management that makes adding and changing screens easy.
Resource paths no longer need to be hard-coded, and pangolin can load files from an external resource file. These can either be in a directory or a zip file. These resources can be loaded on demand, and can also be reloaded at any time, which is great during development (you can edit a sprite, save it and pangolin can automatically reload it).
No more DrawImage commands! Pangolin's rendering system makes it easy to draw sprites, text and rectangles. Even better, you can add animation, such as fading and rotating. This becomes even more powerful when combined with the entity system.
Pangolin contains a very powerful game entity system that makes creating new objects easy. The component system means you can build enemies, players and interactive objects from the same building blocks.
The core Kernel and Service model for Pangolin.