This is a guest post by Andreas Guetz and Christian Bartsch, the two developers behind the fun & challenging game Blockoban:
They developed this game within one month without any previous knowledge about Felgo and besides other workload at uni. The post below describes how they achieved that accomplishment. You can download the game for free on the Android Market, and soon on iOS.
Finding an innovative game concept
We are two students in the bachelor’s degree programme Mobile Computing of the University of Applied Sciences Hagenberg. In the third semester we had a C++/Qt-Course, with the task to develop a mobile application. The choice of technology and platform was left by us. Christian Feldbacher (Co-Founder of Felgo) did an invited lecture and presented us the game engine. We were impressed by it, because you could deploy an application on various different mobile platforms with little effort, and we immediately wanted to make a game with the engine.
After some serious brainstorming, we decided to make a puzzle game, because you can implement the basic game idea very quickly and it is easy to extend it with more content. Furthermore puzzle games are often top-rated, when they are easy to learn and hard to master. We looked at the top puzzle games in the Play Store like Elements and Flow and it became quickly evident, that we cannot copy these game ideas one by one. Because behind these games there are often big game studios which can provide the game with much more content and do more marketing.
So we tried to use the mechanics of the top games and turned it into something new. We thought about the game Elements in the Play Store, where you have to move blocks with swipe-gestures to their counterpiece. The game element of moving blocks was very interesting and we wanted to use it in our game too. We also had the old Pokemon games in mind where you often needed to move blocks to solve various puzzles. So our idea was born: You have to move blocks like in Elements, but instead of moving them to their counterpieces, you need to move them to build a way for your hero. As the basic concept was there, we were bubbling over ideas for gameplay elements. We wanted switches, blocks you can move but not walk over them, holes and many more.
From idea to realization
So the idea was there and our motivation was high, because we believed in our idea and we wanted to succeed with our game. So we started coding during boring lectures and through the night. And within short time we had the first prototype.
Everything looked awful and we needed a better design. But how should we design nice graphics with absolutely no design skills? Luckily we found a great site for free sprites: lostgarden.com. The cool thing on this site is that you can use all sprites without any restrictions. You can use them even in commercial games. The PlanetCute design suited our needs perfectly. Blocks, stones, gems, a protagonist: Everything was there. After some editing, which would be easy for a designer but was hard for us, we had a nice spritesheet we could use in our game. With this sprites we could make the game pseudo-3D / 2.5D. After some code changes, we were pretty satisfied with the results:
But not everything worked as planned. Changing the z-order of QML items during runtime was not supported by Felgo. Blocks disappeared and graphical bugs were the consequence. But the support of Felgo is awesome! After explaining our problems, they made two hotfixes which solved them. And we needn’t to wait weeks or months. No, we got the hotfix within one day! But not only this, also questions about the build server, performance and so on were answered within hours. We are really thankful, without this support we could never finish the game.
Content, Content, Content
The game mechanics worked and it contained various different gameplay elements. But without content nobody would download the game. At first we thought we make a level generator. But while this is reasonable in games like Flow, it does not work quite well with our game because we have too many different block types, which makes it impossible to create algorithms that work.
Coding levels is very exhausting and really annoying, so we developed our own, customized level editor. Thanks to QML and the property system and already existing Felgo components this is no rocket science either:
When we started creating the levels, we didn’t envision how many different possibilities there are to create a level. For example, at first we thought the player is just walking on blocks. But after the first few levels we thought allowing the player to move on the ground would make the game more interesting. We also gave the first versions to our friends. And one guy -Eibi- was very fond of the game and he did not only beat our records, he also created some of the coolest levels in the game.
We had many different game play elements and we thought about a tutorial which explained every element in detail. But we decided against that. Instead we made a quite easy level for every block type as a kind of introduction level, to give the player a chance to find out how the different blocks behave. This is much more satisfying for the player and less annoying compared to a 10-page tutorial text.
As the update 1.2 of Felgo was released, which significantly improved the performance of our game, we published it on the Google Play Store. And the feedback was throughout positive with an average rating of 4.9. Our next goal is to get an iOS-developer-account and publish it on the iOS-Market as the game runs on iOS without any modifications as well. Additionally, we are working on a new update with new levels and more game play elements. The next big thing are portals 🙂
Thanks a lot to Christian & Andreas for taking their time writing this inspring guide, it was a pleasure to support you guys and see the game grow and evolve so quickly! The whole Felgo team wishes you all the best with your game!