Reducing build size of Android game in Unreal Engine 4

Unreal Engine 4 is considered to be a big, bulky engine that generates a lot of data and has huge build sizes. Such feature might be a serious issue when making a mobile game. Here are few steps to do at the beginning of Android development in UE4 to avoid problems with enormous build sizes.

Neon Flaps

Another year, another Huuuge Game Jam! This time the topic was “The Butterfly Effect” and there were a lot of great games (and great food and great fun and great people too!).

Me and my colleague decided to do a little logic game where you have to divide a bullet to make its parts fly to all of the targets. At some point one flutter of the butterfly’s wings generate a bullethell on the screen!


Visual Studio Code C++ Quick Start

I was writing about the best IDEs for C++ development lately and I mentioned the Visual Studio Code – the free, open source, powerfull editor that can be easily transformed into a slick environment for C++ coding. But how to do such transform? This is my approach.

In search of the best C++ IDE on Linux

The time has come when I decided to change my default operating system from Windows to Linux (Ubuntu, to be more precise). There were few reasons I did it, but I’m not going to write about them right now. Right now I want to write about my search for the perfect C++ IDE for Linux.

There is a really old joke: “The best program to write C++ in Linux is the Linux itself”. It is well known that hardcore developers write code in Vim, build it by typing compiler’s commands by hand and use GDB in terminal to debug. But I’ve become lazy because of Windows and I really like to have slick and easy to use IDE such as Visual Studio, which… is not available on Linux, unfortunatelly.

I was looking for something similar to the Visual Studio which I’ve got used to. For me – a good IDE should let the programmer focus on programming not on fighting with building pipeline and tons of configurations. Having this in mind, from many IDEs available, I’ve selected few worth mentioning.

DD2018: Unreal Engine 4 and mobiles – Tips and Tricks

So I was talking at Digital Dragons 2018 about using Unreal Engine 4 to make a mobile game…

Sergeant Transmission: Pigeons of War

Another year – another Global Game Jam! It lasted 48h and this year topic was: “Transmission”.

Me and my colleague wanted to show the old way of message transmission – through the post pigeons, during the World War. We’ve also accepted the challange given to us by the other game jammer – to make a multiplayer game.


Multiplatform Plugins in Unreal Engine 4

Long time ago I wrote an article about adding a multiplatform runtime module to the Unreal Engine 4. This day that article would be complately out of date. UE4 changes and the way the new stuff can be added to it changes too. First of all, I want to to be clear – this article will not cover 100% of the topic, because it’s simply too broad. This is rather a quick start into writing your own plugins, getting know the basics. This article will cover the following topics:

  1. Creating a plugin
  2. Building a plugin
  3. Making a plugin that works differently,  depending on the platform
  4. Using the plugin from C++
  5. Using the plugin from Blueprints
  6. Creating a plugin settings editable from the Editor
  7. Calling asynchronous functions from Blueprints

When writing this article I was using the Unreal Engine 4.18.1.

For the lazy ones – here’s the github source code version.

So, with all of this in mind – let’s start!

Real Boxing 5th anniversary!

It has already been 5 years since the Real Boxing franchise started to rock in the mobile world. Wow!

I personally wasn’t involved in this project from the very beginning, but still – I put some of my work and soul into it in updates of Real Boxing ( did you like tournaments? You’re welcome ;) ), but mostly into the RealBoxing 2 in general.

Both projects were technologically challenging and we’ve learned a lot from them. Using this knowledge we’re brewing some even more tasty stuff right now… But you will see it soon :)

For now – it is time to celebrate. Thanks for playing!


Migrating to IPv6

When writing a multiplayer game the question that arises more and more often is – “Should I bother about an IPv6?”

Short answer – YES! The IPv6 is no longer a tale from the future. The number of people using the newest version of the Internet Protocol increases really fast. Quick look at Google Statiscits and you will see, that numbers of requests to Google via IPv6 grows expotentially and when writing this post it reaches 18%

One of the reason why the IPv6 suddenly became a thing (except the main one – that we’re running out of addresses) is that Apple started rejecting apps that were not working with IPv6-only networks (Source). Shortly after that – Amazon announced support for IPv6 on their EC2 servers (Source). Currently – the biggest market that uses IPv6 is the mobile one, where number of devices might be even greater than the number of stationary computers.

So, how the networking code should be written to support the IPv6?

Tanking Through Unknown – the Slavic Game Jam 2017 game

Yet, the another game jam! This time it was the 3rd edition of the Slavic Game Jam in Warsaw. Lots of Slavs, Nordics and bunch of other awesome people and games. Oh boy, there were a lot of games! About 86 if I remember correctly. You can check all of them here (the winner is Dot. if you wanna just play in the best one). But here… I’m gonna write some about my entry.