Using Unreal Engine 4 Marketplace on Linux

One of the biggest problem when developing on Linux with Unreal Engine 4 is the absence of Epic Games Launcher and Marketplace. The Engine itself can be built from source, but there is no source code for the Launcher. Luckily, there is a solution for that and it’s name is Lutris.

Lutris is a platform which installs and runs games and applications using emulators and compatibility layers using the best possible configurations. In other words – it makes installing games using Wine much, much easier.

Here’s my approach in using Lutris to download content from the UE4 Marketplace.

Succubus Gameplay Reveal

I can finally announce a game we are currently working on in Madmind Studio. Succubus!


Unreal Engine 4 Automation Tests New API

While digging in the UE4.22 source code I found some strange files with *.spec.cpp extension. You can find them in Plugins/Online/OnlineSubsystem/Source/Test directory. It appears they are files used for Automation Tests, but their API looks odd, complately different than the documented one. I was trying to find any information about it, but without success, so… I researched this new way of writing tests and I must say it is much more convenient and professional than the old one.

In this article I will show some simple tests written in the old Automation Tests and their equivalents written using the new API.

Edit 25.07.2019 – Epic gave us an official documentation for Automation Spec here. But I still recommend this article to compare side by side an old system with a new one.

Moving onto the next challenges!

The time has come to step out from my comfort zone and after over 5 years of a great adventure with Vivid Games move to other company to make other projects.

Working in Vivid Games was a fantastic experience and great fun. I learned a lot about mobile games development and coding in general. People there are kind and friendly, atmosphere is amazing.

I’ve got s**t to do!

At the end of January an another Global Game Jam had place. This time I decided to participate alone, as a one man army. This time, the jam was pretty different than the previous ones.


Starting an adventure with Unreal Engine 4

Ok, “what am I doing”? you’ll probably ask. This has already been on this blog! Do I have no any new topics to cover so I dig out an almost 3 years old topic? Well, I decided to rewrite this entry exactly because it is almost 3 years old and Unreal Engine 4 changed a lot. What’s more, my experience grew up and my opinions and approaches to many things changed too.

This article is aimed to people who want to start working in Unreal Engine 4 but is overwhelmed by the sheer amount of online tutorials and simply don’t know where to start. I just want to share you the collection of articles and tutorials that helped me the most with learning UE4.

Running Unreal Engine 4 Plugin’s code in didFinishLaunchingWithOptions on iOS

Now, that’s a long title! Some time ago I faced a very specific problem when implementing a third party iOS SDK into Unreal Engine 4. The SDK required to run its initializing function inside the didFinishLaunchingWithOptions method.

Usually when handling application lifecycle events Unreal Engine 4 uses delegates from FCoreDelegates class like ApplicationWillEnterBackgroundDelegate or ApplicationWillTerminateDelegate. But didFinishLaunchingWithOptions is one of the first methods that runs after the app is launched and at this point Unreal Engine 4 is not initialized yet. Delegates and plugins will not work!

We could modify the engine’s source code and paste the SDK’s code into the ApplicationCore module but this would be a terrible solution as all third party SDKs should be handled by plugins. Here I’d like to show a solution to this problem.

Quick start to CMake

CMake is a family of tools which mainly serves to build cross-platform applications and libraries written in any of C family languages (C, C++, C#, Objective-C, CUDA).

It is not a compiler, or a construction tool though. Its goal is to generate a solution which will be used to build it. It’s a template consisting information about source files, dependencies and compilation settings that should be used to build a project no matter a platform it is built for or IDE it is used.

The best way to use CMake is via terminal, but many IDEs like CLion or Visual Studio Code integrates CMake into their pipeline.

Does it sound like magic? Only at the beginning. After setting it up for the first time everything becomes extra clear! Let’s check the basics.

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!