On February 2013 I participated in the BeMyApp hackathon organized in Berlin.  I teamed up with Ramin Soleymani, coorganizer of the Creative Coding Jam and Science Hack Day Berlin; Nate Weeks, founder of Ten Foiled Hats and creator of the ios game Darkin; Astrid Bin, who does a lot of things, I guess I’ll call her “multimedia artist”; and Lorenzo Pilia, responsible among other things of localmultiplayer.com and the regular Talk & Play event in Berlin.

We decided to make a local multiplayer game for mobile phones.  Ramin and myself taking the role of developers, we went for Android, since that platform is closer to our field of expertise.  As framework, we used Processing, which is a java-based framework for creative coding, and exports easily  to Android.  Astrid and Nate took the responsibility for the graphic design, and Lorenzo acted as project manager.

If you want to know what the game is about, I think that the game talks by itself.  Give it a try with your friends.

We were fortunate enough to win the competition, but afterwards it was impossible to continue development since each one of us got busy with our own respective lives and it never got finished properly.  It’s sadly the typical outcome of such events, specially when a not-so-small team is involved.  With the permission of my teammates, I’ve taken a couple of days to fix a couple of bugs that were left ( mostly, the behaviour of the “back” and “home” buttons ) and I’m publishing it on itch.io ( where donations are welcome ), and in the Google Play store ( since you probably don’t want to download an apk from a website ).  Take a look!

Dupes googleplay_badge itchio_badge



Posted in Finished Games, JamGames, Other Jams | Leave a comment

Wizards of the Finger

On February 2014 I attended the Nordic Game Jam in Copenhagen.  It’s the biggest game jam I’ve been to, there were around 500 people participating.  The jam started with several presentations about different topics related to games, and the first day evening we started with the proper jam: pitching ideas for games and forming teams.

I teamed up with Thomas and Thorsten, who came from Hamburg to participate.  They were advertising themselves during the pitching phase by projecting a pic of the “forever alone” meme face to the wall of the cafeteria.

The jam was divided in five paths: boardgames, music games, mobile, single player and multiplayer (if I remember correctly).  We decided to make a game for the “mobile” path, focusing on touch controls, and we wanted it to be local multiplayer.  The theme of the jam was “privacy”.  The way we used the theme was to inform the game mechanics: the game tries to make the hands of the two players hit each other by accident, while giving them a better score the more far apart they are.

It’s a collaborative game, the goal is to reach the highest score by protecting your partner.  The game is available on the Google Play market, and was made with Löve2D.  Thorsten made the graphics and composed the music himself, Thomas was in charge of game design and user testing (there were a lot of users available for that ;) ), and myself took up the coding duties.

Wizards of the Fingergoogleplay_badge

Posted in Finished Games, JamGames, Löve2d, Other Jams | Leave a comment

Voice Over

This is the game made for the Berlin Mini Game Jam on November 2013.  I don’t remember the theme of the jam any more.

A few days before I had attended a presentation by Fernando Ramallo about his game “Panoramical“.  One thing he mentioned that picked my attention is that some people, when they play the game in public, they tend to try to play in a way that pleases the audience.  That is, they are not so much playing for their own entertainment, but for kind of “showing off”.  That got me thinking about the idea of this game.

Using Qt, I am able to run an app that displays two windows.  This game is meant to be played in front of an audience, with a projector.  The control window should only be seen by the player, while the other window should be placed at the part of the desktop that is displayed in the projector, for the audience.  There is an animation, that due to the time constraints of a game jam it’s basically a set of coloured rectangles moving around, appearing and disappearing, in a very abstract way.  The control window also shows a (fixed) set of sentences.  The player can click on any of them, at it will be shown in the “game” window.

The idea is to provide a voiceover, through the sentences you choose and at the moment you click on them, to the animation that is playing automatically.  In a sense, you can change the meaning of the images on screen by choosing which tale to tell.

The game itself is a failure.  I was concentrated on the technical side of the implementation, and never gave much thought to the actual content on it.  Combined with the time limitations, this resulted in a rather disappointing result.  A part of me wanted to do a parody of pretentious “artistic” narrations by going over the top with the pretentiousness and vacuity, but I never was inspired enough to write anything funny at all, and the animation itself is way too crude and ambiguous.  The main problem, when it comes to the content, was however the branching.  That is, the animation itself is fixed, but the set of sentences is branching, like in a twine game, at it was very hard to keep the tree of options within a reasonable breadth while providing interesting choices.  Currently no choice is actually interesting at all.

I guess I would need to rethink or revisit the concept in the future, taking a different approach to the content side of it.  Still, I think that the idea of a game that is meant to be played in front of an audience, for the purpose of entertaining them instead of entertaining the player, can be interesting.

Because I call this a failed game, shelved under the “abandoned projects” category of this blog, I didn’t even bother to make builds for the different platforms.  I’m providing linux binaries, if you want to run it on a different OS you will need to compile the source code itself.  It’s written in Qt, so it’s multiplatform, that shouldn’t be a problem.

The music is “The Open Goldberg Variations“.  It’s an interpretation of J.S.Bach’s Goldberg Variations by Kimiko Ishizaka, released under a Creative Commons Zero license.

Voice Over

Posted in Abandoned projects, Berlin Mini Jam, JamGames, Qt | Leave a comment


This is the game I made at the Berlin Mini Jam on April 2014.  One of the themes was “The elephant in the room”.  I had been talking about Qix with a couple of friends the day before, so I decided to write a Qix / Xonix clone where the image that you uncover is that of an elephant.

The photo is licensed under Creative Commons – ShareAlike – Attribution, by the flickr user “onthegotours”.  I found it through a quick search through google images.

The original game was single player.  It was very popular at the time, and there were countless clones made for arcade machines.  As I was talking about it during the jam I was very surprised to see that most people didn’t know about the game, given its importance in the history of video games, being the canonical example of the game mechanic of “uncovering an image by capturing areas”.

I wanted to do a local multiplayer 2-player version for tablets, and I even came up with a control scheme that would work, in theory, on a touchpad.  Aside from some bugs in the code that controls the movement of the enemies, the main problem at the jam was the realization that this game doesn’t quite work on tablets.  The reason is that the game progresses from the borders of the playing field towards the center.  Since the controls I devised relied on being able to tap on the position of a player avatar in the game, this meant frequently pressing the tablet’s function buttons by accident, closing the game.  I couldn’t come up with a simple fix for that, and was left with the feeling that the problem is with the way the game is designed.

After the jam I removed the tablet-specific code and left it as a game for desktop computers. It’s still a race against the other player to cover most of the screen, it’s now controlled from the keyboard (wasd for player 1, cursors for player 2).  I didn’t feel like spending any time polishing the game visually, the rough placeholder art is still there.

Made with Löve2D 0.9.1.


Posted in Berlin Mini Jam, Finished Games, JamGames, Löve2d | Leave a comment

Reload, reload!

At the Berlin Mini Game Jam of May 2014 we formed a team with Fabian Gerhardt and Iwan Gabovitch and built this game with Löve2D.

It’s a caries survival rail shooter.  You are trapped in Candyland.  The game is played in mouth perspective (that is, first person from inside your mouth), and there’s hordes of sweets coming to get your teeth.  You can shoot dentists at them with your dentist shotgun, which has to be reloaded after every shot.

The controls are a bit unusual.  Shooting is done with the left mouse button.  To reload you have to move the mouse back and forth.  To aim, we’ve mapped the keyboard layout to the direction.  That is, if you press, for example, the keys in the leftmost column (“q”, “a”, “1”, “f1″), you will be aiming at the left edge of the screen.  If you press the ones in the right column (“p”,”0″,”f12″, “.”), you will be aiming at the right edge of the screen.  Everything in between are intermediate positions between these two extremes.  We’re not sure how well does this map with different international layouts, and we apologize if this is causing problems to our international audience (but we couldn’t test it reliably, all we can do is to cross our fingers).

The song is called “blop”, made by Maf, and licensed as Creative Commons – Atribution.

Fabian and myself wrote the code, Iwan created the graphics and located the sound on CC / Opensource-friendly online collections.

I’m providing the love file in the downloads section, if you have any problem running the game, install the Löve2D engine on your computer ( versions 0.8.0 to 0.9.1 are supported ) and you should be able to run the binaries, or the love file in the worst case.


Reload, Reload!


Posted in Berlin Mini Jam, Finished Games, JamGames, Löve2d | Leave a comment

Because this is literally the best we could come up with: retribution

This game was started at the Berlin Mini Game Jam January 2014. My friend Michael Hussigner was visiting, we teamed up, and we brainstormed about the theme “Strange powerups”. We decided to go for a straight forward shoot-em-up game and introduce some humor in the form of annoying powerups that would get in the way instead of helping the player.  Other anti-features for humorous purposes are: fixed score (“a billion”), so that destroying enemies is kind of pointless, and a huge logo occupying a significant part of the screen space, lots of misspellings, ridiculous “things” as bullets of some of the powerups (like cheese, cats, sushi, or bottles).

At the end of the jam, even though I had not had enough time to implement the powerups themselves, we had a basic shoot-em-up game that was already quite fun to play. I spent some days later that week implementing powerups and more enemies as I was coming up with them. Somehow part of the humor was lost, the “normal” gameplay was engaging enough that I toned down the nastyness of the powerups, them becoming a mix of “good” and “bad” ones. Part of the challenge in the game is to be able to avoid the ones that get in the way.

The game is available at itch.io under a pay-what-you-want basis.  If you like it, feel free to set your own price and support the developers (Michael and myself).

There is the possibility of a sequel to this game. It would be a longer game with similar game mechanics, but more content in terms of new types of enemies, new types of powerups, and possibly introducing boss fights. It would be published under a shareware model: the first level would be completely free and fans would have the chance to purchase the full game at a fixed price. It depends on the reception of this one, if there is no interest then there’s no point in starting work on a sequel.

Update 28 April 2014:

I uploaded version 1.1.  It includes more music, some fixes in gamepad support and menu, better explosions and 14 achievements to unlock.



Posted in Berlin Mini Jam, Finished Games, JamGames, Löve2d | Leave a comment


O—> is the game I made together with Michael Hussinger at the Global Game Jam Berlin 2014.  I used Löve2D, which has recently been ported to Android, which let me port the game to that platform too.

The theme of the Global Game Jam was “We don’t see things as they are, we see them as we are”.  Our game simulates a battle between two factions: the yellow army and the green army.  The player controls an orb that floats around the battlefield.  Wherever the sight of the orb is directed, the battle is affected by growing or shrinking the watched soldier so that it has the same size as the orb, which can affect the outcome positively or negatively depending on the relative size of the other soldier engaged in battle.

The goal of the game is to tip the balance in favour of the yellow team.

On the desktop version, the orb is controlled with the cursor keys and the sight with the mouse.  You can exit the game by pressing ESC, and switch between fullscreen and windowed with ALT+RETURN.  On the mobile version, the orb can be dragged with the finger, and tapping on the battlefield directs the sight, using multi-touch.

The Global Game Jam 2014 was a great experience.  60 jammers participated, 17 games were made, all in the Wooga office in Berlin.  I’m definitely looking forward to organizing the next edition again in 2015.

The song is a rendition of John Philip Sousa’s “The Thunderer” march, by Free Tim, licensed under a Public Domain license.  The name of the game (which is an ascii-art representation of the player’s orb and the “sight laser”) is pronounced “o dash dash dash greater than”.


In case you’re interested, here’s the video of the presentation I gave at the jam:

Update 28 March 2014:

I uploaded the game to Google Play, so that you can download it directly to your phone.


Note:  If you look at the download size, it’s quite big for an Android game (24Mb).  It’s not Löve2D’s fault.  It’s the images, we put a lot of high-resolution images in there, so that it looks good even in the highest-resolution tablets (Nexus 10 and such).  The assets (images + music) weight 19Mb on their own.  I know it’s a lot, but this is just a jam-game after all, you play it a bit and that’s it, that’s why we didn’t put any effort in reducing the download size.  Sorry if this is an inconvenience.

Also, a trailer:

Posted in Finished Games, JamGames, Löve2d, Other Jams | Leave a comment