Today I created a repository on Gihub to keep track of my code base and I named it SionCore. This wasn't made overnight, it's the result of several small game projects, such as game jam gigs and Math Maze.
Slowly, it became obvious that some components were highly reusable and game agnostic. That is why I thought it would be good to make it public.
Who knows, maybe someday someone might even contribute!
This small game engine is built on top of Libgdx and Ashley among others and it's compatible with desktop, Android and iOS platforms.
Disclaimer
SionCore is currently under heavy development, so expect constant API changes and a good deal of instability. Hopefully this one will last longer than my poorly executed previous attempts and will stabilise in a while. If that's what floats your boat, you're more than welcome on board.
Regardless of whether you use the whole thing or grab specific ideas, feedback is more than welcome.
Features
Currently implemented and working.
- Data driven entities
- Entity components and system collection: rendering, animation, physics.
- Localisation with automatic generation of template CSV files.
- Easy screen management
- Config files
- Data driven sprites
- Data driven physics
- Grouped asset management
- Basic state machine implementation
- Populate your Box2D world from map data
- Spine integration
- Multiple aspect ratio support
Dependencies
As of now, all the .jar
files SionCore needs are included in the repository. However, switching to Gradle or Maven is something I want to get out of the way sooner rather than later.
Contributing
If you find a bug or would like a particular feature, please open an issue. On the other hand, if you want to get more involved, clone the repository and open a pull request!