Bloodworks is an indie game that I am working on for last few months. It is an open-source (GPL-3.0) game and it will be completely free once it is released. Here is a gameplay video.

It is a top-down shooter/survival game. Main objective of game is achieving a high score, which is only possible by surviving more. Game gets harder and harder as it goes so I assume it will be impossible at some point.

There are various power-ups, weapons and bonuses that help players. It also has a leveling system that gives permanent perks to player.

I programmed the engine in C++ and gameplay in Lua. Engine is highly modified (and simplified version) of my previous work, bifrost, it uses OpenGL to render stuff, SDL to make things cross-platform, soloud for sounds. I also coded some lower level gameplay code in C++ to increase program performance.

Gameplay is programmed in Lua. Weapons, perks, monsters, bonuses etc all programmed in Lua side. Even missions are programmed in Lua. Currently only mission is Survival, which spawns stronger enemies as game progresses but it will be possible to add new modes in future. This makes the development process much faster. I am using sol2 for C++ and Lua interaction. It is an amazing library that handles communication between those two in a very easy way.

My main objective was making it very easy to mod the game. In future I will add a mod system that can upload, search or download various mods that other players develop.

It is (highly) inspired by Crimsonland. I am planning to add more content as the game grows, and hopefully make the gameplay more distinct than Crimsonland.