Bloodworks

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.

Crypto – NES game

So I haven’t written anything for a long time. I decided to fill my blog more with my personal projects and cool things I learned about programming. I will start writing one of the most satisfactory projects I did.

It is Crypto, it is a NES game me and my other 3 friends developed for NES platform (Yes, that NES platform) in GGJ 2016. I had prior NES programming experience and some tools ready before GGJ but whole programming took 2 days to complete. So here is a gameplay video.

This video is one of the older versions, some of the textures are changed but it is pretty much final other than that. We bringed a CRT TV and a famiclone to GGJ event, which made it even cooler!

Gameplay is coop. There are four magical objects (Potion, scroll, book and hourglass) scattered around a maze and objective of players are carrying them all to center of the maze. Subject of GGJ was “Ritual”, so players carries objects, make a ritual and escape the maze.

There are also enemies though, so gameplay is usually one player carrying the object and other one is defending him. However it is much slower when only single player holds an object. Second play can decide to help in carrying but this time it is much harder to control. To move down, both player must hit down at the same time. This makes it both annoying and fun at the same time! Once all objects are connected, players advance the level which makes the enemies stronger.

The coolest part was after the jam, we posted the game on Reddit and it got kinda popular. We sold some games on itch.io, made a deal with stoneagegamer which bundled our game in the cartridges they sold (for all we know, Crypto is the best selling NES game on 2016) and even made it into a indie game bundle!