SuprSeed is a light weight 2D Android game development framework. SuprSeed offers flexibility and modularity, allowing it to become the foundation for mobile games, custom game engines, as well as UI driven applications.
The frameworks architecture is built following SOLID principles and Design Patterns. As a result, any component of the Core
package can be swapped out to a custom implementation using the EngineConfigurator
(which handles the engines dependency injection). The framework also comes with a library Lib
package that offers default classes to help provide a starting point for creating games. This allows the framework to be used 'as is' or to be customized as needed.
For creating games, the engine uses scenes which can contain sub-scenes or sprites. Each sprite can then be configured using components and shared data. This creates a separation of concerns which reduces code complexity, and increases code reusability.
Some of the engines Core
features are:
- Hardware accelerated drawing of bitmaps
- Bitmap resolution scaling across different screen sizes
- Coordinate scaling
- Logic tick rate / Screen refresh rate scaling
- Touch screen input handling
- Scene management
The engines Lib
features are:
- Sound effects player
- Image loading utilities
- Collision handling
- Font wrapper
Current Status:
- v1.0.0 has been completed with various major and minor changes
- See the release notes here
Expected changes to come in next version
- Features / improvements
- Effects emitter utility
- Engine Fps counter
- Asset streaming for lazy loading sprite images
- Loading screens that animate in and out on scene changes
- Animation playback estimation rather than hard coded playback speeds
- Allow in frontof / behind api to LayerHandler
- Seperation of scene management from engine core package
- Github management
- Build automation (ci/cd pipeline, unit tests, automated releases)
- Docs (api docs, getting started docs)
Future wish list for project
- Multi-platform support and optimization improvements
- Interpolated rendering
- Multi-threaded job queue
- Realtime automated rendering configuration
- Physics engine
- Possible language migration
- Texture streaming and shader support
- Dynamic internal resolution scaling
- Possibly use SDL3 as an engine backend
- Scripting support for pre-fabs
Please follow the guide on the SuprSeed_Starter Github Repo
- You can download the starter to start using the SuprSeed engine
- Alternatively, you can follow the guide to manually setup a project with the SuprSeed dependency
All assets used in the game demo came from Itch.io
Background
- Name: Grassy Mountains Parrallax Background
- Author: Vnitti
- Usage: Grassy Mountains (preview-fullcolor)
Hero
- Name: Pixel Adventure
- Author: Pixel Frog
- Usage: Ninja frog
Enemies
- Name: Pixel Adventure 2
- Author: Pixel Frog
- Usage: Bat, bee, bird, duck, ghost
Font
- Name: Peaberry Pixel Font
- Author: Emily Huo
- Usage: peaberry_base.tff
Sounds
- Name: 300+ Futuristic SFX
- Author: GameSupplyGuy
- Usage: Get Extra Energy Level, Mini Hit
Music
- Name: Royalty Free Sounds
- Author: Tim Beek
- Usage: 8Bit DNA Loop
Assets are stored under the default project folders:
- Images:
app/src/main/assets/Images
- Font:
app/src/main/res/font
- Sound:
app/src/main/res/raw