At the HTW Berlin, the International Media and Informatics master has room for up to two bigger interdisciplinary projects. It probably doesn’t surprise anybody that I chose to work with the game design course on both occasions. I’ll make a blog post about the second project later, but for now our trip down memory lane brings us to: Heart of Decay, a 3D person shooter with a skill system, but sadly we never really got that far. Here is a gameplay video of the slice we were working on:

Credits:

  • Tobias Wehrum: Programming
  • Romano Grasnick: Enemy Concept, 3D Art
  • Jean-Emily Fleck: 3D Art
  • Daria Döpper: Level Design
  • Tim Höregott: Game Design, Team Lead
  • Jennifer Ludwig: Character Modeling, Animation
  • Lisa Krummen: Art Direction, Concept Art

Over two years ago, a theme in university was action recording/replaying, and instead of doing a boring text editing app to demonstrate this, I made a game. Introducing:

Each round your previous actions are replayed,
but your and your enemy’s actions will change the
outcomes of previous moves by placing new tokens.

You can play the game in your browser or download the Android APK.

I think the concept is quite intriguing, but the current execution is flawed. Currently, the tokens of the current starting player start first which leads to fluctuating patterns. Also, no matter how experienced you are in the game, you still cannot beat new players who grasp the concept by a significant score and even you pull of a cool move that should get you in the lead, it often doesn’t really matter much.

What I really like though is being the starting player in a round can both be an advantage and a disadvantage: You will move first and can force the second player to defend a certain position, but in certain situations you might need to defend an important position before the other player moves to attack there – and then the other player obviously will place somewhere else.

Anyway, long story short: I might make another game based on the recording/replaying multi-round concept in the future and I sure hope that one will be a lot more fun. More years of experience have to be good for something, right?

Retcon was made by me, with assets by:

Lost in the Darkness was originally made for the Ludum Dare 27 for the theme “10 seconds”. It was well-received, but had some flaws which I addressed in this post-compo build.

Lost in the Darkness

Find a fairy. Follow the music. Save your friends. Escape safely.

And above all: Don’t touch the darkness.

Play for free in your browser on GameJolt!

A game made by Tobias Wehrum.

With assets by:

Here’s a thing that I did at my last Mini Jam. I originally had this idea for the last Ludum Dare (theme: Entire Game on One Screen) and since I dropped out of that, I did it now.

Connector

Rotate the center and the bubbles coming in to connect same-colored bubbles.

Survive with as many points as possible!

Play in the Webplayer or on Android.

Credits:

At the November Mini Game Jam (for which we had over 100 participants, wow!) I made my first experiments ever with the MaKey MaKey, an Arduino-based kit that measures when a circuit is closed – even through very high resistance like a chain of people holding hands. My game is less about hand-holding though, and more about poking your opponent’s hand with a pen-lance. Enter Electric Finger Jousting!

electric-finger-jousting-title

Take your pen-lance! Get ready, and… fight!
Poke the other player before they poke you!

But beware, don’t touch them before
you hear “fight”, or it’ll be a foul…

It’s not all fun and sunshine though: The game is a rather repetitive. I hoped to get a fencing kind of game, but it is really hard to balance the distance so it’s neither too easy to hit nor unreachable. Moving while touching the copper wire (which ensures that the right distance is being kept) isn’t easy, so you aren’t very flexible. That leads to very short distance jabs that are nearly impossible to react to and each round was pretty short. Despite that, fun was definitely had while developing and playtesting!

PS: When you do something like this, have water nearby to regularly dip everything into which will make circuit contact for a very short time. Water improves the conductivity so much.

Credits:

A few months ago, I made my first puzzle game ever for Ludum Dare 29. It was well received (#16 in Innovation!) and players called it “clever” and “challenging”, but the difficulty curve was too steep. Now, I finally found the time to make a post-compo edition with more and easier tutorial levels to ease the beginning and a really hard one where you can test your mettle! I humbly present:

Banner

Snake meets platformer physics!

A short puzzle game combining two
well-known concepts to form a unique hybrid.

Play right here in your browser!
(And maybe rate it! Or share it with friends who might like it.)

Download for Windows, OS/X or Linux!

“But,” you might say, “only 9 levels?” Yeah, for now. I think it’s enough to demonstrate the concept well and especially the later levels might take some time to solve. I’m pondering releasing it on Android soon, and maybe, just maybe, I’ll search for a level designer and get more levels made. If you like it and want more of it, please leave a comment!

Credits:

Screenshots:

  

A month ago at the last Berlin Mini Game Jam, I set out to experiment and get acquainted with the Tobii EyeX which can track where your eyes are – and more importantly, where exactly you look on the screen. The obvious thing would be to use that gaze tracking, but out of ideas and inspired by Amazon Fire Dynamic Perspective, I tried to use the actual eye tracking to make the monitor behave like a window into a real-life scene.

An EyeTracker Perspective Experiment

Download for Windows!

My goal was to create the illusion of actual 3D, but maybe due to my scene not being very exciting that turned out rather boring. It looked a bit more interesting once I dropped the “real-life window” idea and made it more a “choose your perspective with head movement” control by exaggerating the movement. By then, I had only half an hour left and no gameplay, so I did the obvious: I added polka and bouncing balls that shoot where you look! Maybe it could have been an interesting horror game with good assets and actual gameplay – although for an immersive perspective horror game, I would probably rather use an Oculus Rift.

And man, it’s hard to come up with good ideas for this device. While eye tracking is widely established for user testing, it’s rather new when it comes to being used in games themselves. I certainly don’t make it easier for myself with my rules for experiments with new technology:

  1. The new technology must be used for a part of the core gameplay.
  2. The benefits (e.g. immersion, precision, ease of use, unique aspects) of using the new technology over traditional technology must outweigh the disadvantages for the intended purpose.

Eye trackers seems to be more suited for passive or highly situative supporting roles – targeting, for example, seems to be easier and more precisely done with a joystick or a mouse for most purposes. But by now, I have a really cool idea that I want to experiment with next time. Can’t wait until I get a new laptop with USB3 so I can try my hand at eye tracking again!

Credits:

A few weeks ago, I participated in the Ludum Dare 30. The theme was “Connected Worlds”, and I thought “Hey, nevermind that I never made an online multiplayer game before, I should totally try to make one in 48 hours!” Unexpectedly, it actually turned out pretty great – you can read more about that in my postmortem if you’d like to. And below you can find the ~52 hour post-compo version with a few bugfixes and sound effects!

You are flame bearers, braving the darkness,
carrying letters and escorting travellers
through the eternal darkness between
the mountains to the south and
the sea kingdom to the north.

Overcome obstacles. Carry the torch on. Work together.

Go north. Ignore sounds in the dark.

And most importantly: Don’t let the flame die.

Send the link to a friend, and play it in your browser with the Unity plugin!

Download it for Windows, Linux or Mac!

Here is a video with clips of lots of people playing it on dvcolgan’s stream:

Used Assets:

…but first invite a friend or two. It’s dangerous to go alone!

The rating period is slowly but surely nearing its end, and I thought it cannot hurt to write a postmortem for the game I made three weeks ago. I wish I would’ve promoted the game more (it’s my first online multiplayer game after all!) and I wish I could’ve played more games, but my master’s thesis was jealous and demanded I spent more time with it. That being said, I have a free minute now, so here goes nothing!

Design

Three weeks ago, when I was still young and inexperienced, I thought that “Connected Worlds” lends itself perfectly well to making an online multiplayer game. (Nevermind that I never did one before, haha.) That being said, there are some obvious design problems that I needed to solve – and that ultimately led to the current design:

  • LD rating is 3 weeks, and people likely won’t play all at once. To tackle that, the game should a) be able to be finished single-player too.
  • Even if people are online at the same time, they probably won’t arrive at the same time – and likely don’t want to wait either. For that reason, I made the game drop-in/drop-out: The first player to join starts a new session that ends when the last player leaves or the game is won/lost. Any player that arrives in the meantime just spawns next to the torch. (I briefly entertained the idea of one permanent session, but I wouldn’t want to do the level design for THAT, phew. Also I highly doubted that players would come back often enough for that to be interesting.)
  • Synchronisation is hard. So, uh, nothing twitchy. More slowly. With tiles to walk on.
  • Synchronisation might not work correctly. I have no idea what I’m doing after all. So, better do a co-op game and nobody gets pissed that the enemy had an advantage.

Okay, so a scalable drop-in/drop-out co-op online multiplayer game. This is basically what I spent my complete first day on, and I had no idea what I actually wanted to do gameplay-wise yet. I implemented a chat though: Just text that appears on top of player’s heads.

After a good night’s sleep, I arrived at the idea spawning from the Olympic torch relay: A flame had to be transported from A to B – in this case between two kingdoms. Slowly everything clicked together: It was dark, hence the flame is important. If you drop it, it’s not protected anymore and slowly dies down, and you have to drop it sometimes because it’s heavy as hell. And there are multiple obstacles that you have to dig through or build across. You can do it alone if you react fast, but it’s stressful always to drop the flame, dig/build a little, pick it up again, transport it, drop it etc. – it’s much better with friends helping you! So yeah, here we go – a game that you can play alone or with “any” number of friends.

Implementation

The game is made in Unity and with the SDK from (and hosted by) Yahoo Game Networks. Free hosting for up to 5000 daily users? Yes please.

There is a server, but it doesn’t do much – it mainly keeps track of the users, items on the floor and already dug-out rocks so that it can inform new players. It also distributes events. The only thing that it is really authoritative about is when an item is spawned, picked up or dropped to avoid item duplication.

On the client side, you are the only player that moves directly – and you send messages to the server how you move. Because movement is between tiles, those messages are few, and they will arrive in roughly the same interval in which they are send, so on the other screens you move the same way, just with a delay. Each player object has an event queue – move, dig, build bridge etc – that will be executed in that order with the appropriate delays, so it’s no problem if messages arrive to quickly either.

Making the server mostly non-authoritative and using that message queue system is what helped me be able to finish the game in such a short time, I think.

What didn’t go so well?

  • No sound effects. I wish I had some, but I finished the level itself in last second, and well – that was a bit more important, I guess.
  • Nobody invites their friends to play. I wish I knew why. It’s super easy – just share a link – but many people commented that they had to play alone. I suppose they do have friends, right? Maybe even game developer friends?

Apart from that, I’m actually largely content! Sure, there’s not that much gameplay, but it’s fun – and sure, the graphics could be better, but hey! 48 hours and first time online multiplayer! I’m certainly not complaining. Which leads me to…

What went well?

  • Online Multiplayer in 48 hours, that’s what!
  • The whole thing is surprisingly stable, if sometimes a little laggy. I would’ve expected to have more problems with an online multiplayer game.
  • Development wasn’t as hard as expected. I was always a bit wary of networked multiplayer in any form, but it turns out that it wasn’t that bad to always have a server and often two windows running. Might be because it was only 48 hours and a small-scoped project with no necessary security though.
  • The Drop-in/Drop-out is cool. And it also has the side effect of allowing people to spectate games. Apropos drop-in/drop-out…
  • The game is a lot of fun with streamers! Allowing for a variable number of players that can join anytime, and streamers having an audience already made for great fun a lot of time.
  • The chat is refreshingly different. Having text appear on top of the heads is cool, but seeing it being typed live is surprisingly even more fun!

Tips

  • Trust in the process. Seriously, don’t worry if your design is not complete yet. I didn’t have any core gameplay ideas until 12 hours before the end and I still finished with something. Just work towards that goal until then.
  • Keep a ToDo list. Workflowy is superb for that. Helps me stay on course and motivated.
  • Keep your design simple and modular. Especially if you do something big technology-wise that you haven’t attempted before. If you finish early, you can still add more features! I would’ve loved to have enemies and defending each other, or wind zones where you have to keep the flame safe, and… but time ran out, and the current state is very playable.
  • Test early. I started testing long before I had actual gameplay. I guess networked games are special in that regard though.

In Conclusion…

…I’m quite happy with the result, and I’m seriously considering doing a game with online components for next LD too. So much inspiring online stuff this LD, damn! And maybe I’ll even get a chance to gather more networked multiplayer experience by then, but knowing me, I won’t and I’ll just dive right in. Wouldn’t have it any other way, really.

Do you have any questions? Feel free to ask them in the comments or on Twitter!

And maybe you have a free minute or two and want to try my game? (And maybe ask a friend to join you! Friends are pretty cool.)

Thanks for reading! I'm done here, goodbye.

Thanks for reading! I’m done here, goodbye.

For the July Berlin Mini Jam, I experimented with the input interface. Turns out a cardboard contraption with fiducial markers and Unity3D + NyARToolkit on the software side makes for a fun crocodile maw control system! I didn’t finish the game (you can’t win or lose, you can’t even score), so I declared it a story-focused artgame. That’s how it works, right?

Hungry Crocodile

The crocodile is hungry and wants to eat,
but despite all the food, it can’t!

Because of explosions.

Moral of the story:
Explosions make everything better.

Play in your browser!

Download for Windows!

You’ll need these two markers: Hiro and WD (taken from here).
You’ll also need cardboard to build the maw.

(If you’re wondering why I didn’t use the standard Hiro & Kanji markers –
I just took what was lying around from earlier experiments.)

Despite being unfinished, it was a lot of fun to present:

Here’s a more detailed look at the cardboard maw:

Fiducial markers to find the positions of the upper/lower jars.

Nom nom!

Credits: