U-110, A World War II story (jam game)

So, last week I had the experience of a game jam in a physical place. Considering I only participated in Ludum Dare’s and when I went to a Global Game Jam it was only for helping in the event, this was actually my first one in a physical place. My team of 4 people created a first person, story driven, puzzle adventure, and as all of my games it was complete with an ending ( noting that down I don’t like at all games without ending ).

Set up

Considering my previous experiences about game jams this one was quite different. I couldn’t deal with my sleep deprivation to begin with. I’ve found that sleeping in chairs was quite uncomfortable (imagine that!), and I took a cab to enjoy a 3hour sleep in the warmth of my bed. After that excursion I took with me a blanket to cover myself in order to block the light when I tried that again, and had another 1 hour sleep. Being with people who worked day and night on their games I had the motivation to continue with mine too, despite the fatigue. I used to take small breaks after each hour and walk to other tables to check them out. Being winter I took some time to get myself cold and fight sleepiness. I also made a bunch of teas (others tried Red Bull’s. I liked its sweet flavour but I didn’t try it more than two sips). In the end everything worked great.

I used my laptop and an extra monitor. That helped a lot! No full desktop towers to connect and deal with possible hardware faults from movement.  I had also done my setup with the tools I would use from the previous day. Most recent Unity was installed, Open 3D Model Viewer to check on the models, Visual Studio 2013 Community Edition, because I am too afraid to try 2015 yet. Asset sharing was done by Dropbox. I wanted to use the local network but I couldn’t set it up correctly. We had a 20Mbps internet connection and didn’t have any problems with that. I also used git to bitbucket to back up my project files, and in case I wanted to go to a previous state of code which thankfully I didn’t need to.

Now to the bad stuff… My Windows 10 laptop decided to make an update of 4 hours. That happened at the start of the game jam so I let it slide. No point in trying to stop it and achieve nothing but slow down more. However when the update finished, Unity kept crashing continuously after some minutes, and a Windows pop up saying that Intel display driver crashed and recovered. Unity didn’t recover and I had to restart it, thankfully giving me a prompt to save the project. I don’t get how the Intel graphics driver managed that since my laptop has a nVidia graphics card but it did, and it wasn’t just me. Other’s with laptops had the same problem as well. Having worked with that laptop lots of time I blame Microsoft and the update. I should have deactivated the updates.


The theme was ‘enigma’ and I liked it a lot. When we learned the theme we sat down and did a brain storming sessions for about an hour. We got about 3 designs and picked one. Then we created our moodboards from images from the internet. Made a list of assets that would be needed and finally started developing.

We decided to not only pick the Nazi enigma encryption device but to also add puzzles and riddles to the game. Thus our controls were First Person, with a story and lot’s of mini games. Later I was told that our controls were like the Penumbra games which it seems they look a bit alike.

Having a designer in our team the rest of the members knew exactly what to do and didn’t fiddle much with design details. Our designer created a design document which at first seemed like an overkill but having all our work compressed in a doc with every detail proved helpful. She also picked the audio files to add in the game, messed a bit with Audacity to cut them and for minor changes. In the end when it seemed that I wouldn’t have time to implement the opening and closing cinematic (text falling down), she helped by creating it in a video making tool and saving me much precious time, where I would have to preview it and synchronize it with the sound.

Being bombarded with assets I was a lot of times confused as to what was ready and what not by the art department. It took me some time to realize it but I wrote down a list of what was ready and pending to implement in code, thus saving their sanity.

As for my code I generally try to make it “well-written”. I always comment it and use design patterns. As always in game jams I don’t follow that route ( I blame my lack of experience), but this time I went totally to the dark side overusing the Singleton pattern.


Our game was finished in time and we prepared a video trailer too for the presentation (the designer made it). You can check everything in a page we made for it here. Some people may find the trailer an overkill but it helped to avoid problems that we hadn’t anticipated like the UI in different resolutions and of course unexpected bugs. We provided of course an executable version of our game for the judges and everyone else, to play and check its robustness. I do am proud of my work, having made so much in so little time, and without any bugs around, for something that beautiful.

As always it was a learning experience. I won’t repeat it any time soon though :P

Vision by sound? Creating a custom shader

So how do you do something like this? Read the rest of this entry

Create a multiplayer Unity3D game with SmartFoxServer

Seems that my previous article about how to Create a multiplayer flash game with SmartFoxServer made a hit. So, since I’m working with Unity3D this time I decided to make a tutorial about SmartFoxServer and Unity3D too. Before we start I want to point out that there are other networking solutions with unity too, with first and foremost Unity’s own solution which is updated in Unity 5.1 (Pro users with access to beta can already use it). However I feel more comfortable with SmartFox. Its API is full of features, easy to use and battle proven. Understanding however may need some hands on. Also, Java may be a bit spooky at the start for those who are coming from other languages but in the end the power of the Java programming language makes all the disadvantages that someone may attribute to this language, minor.

So, without further ado let’s dive. My software at the time of writing this article is Unity3D 5.0.1, Java 1.7, Eclipse, and SmartFoxServer’s own Community Edition v2.9, and Client API C# API for Unity 5(which is in beta atm) in a Windows 8.1 machine. I picked the x64 versions that were provided. Read the rest of this entry

Hey, I’m alive! Unity and more part 2

So, continuing from my last post. Let’s see. It’s been some crazy year. I took part to Ludum Dare #31 Jam, with another developer. We decided to take part at almost last minute. With only 24 hours left. So we worked the Saturday, and then the day after that after our normal job, aaaall night long. We started again Monday 20.00 o’clock and finished around Tuesday 03.00. Time zones worked in favor for us! But, ach, these last minutes. We were racing against time to complete the game. I was at the edge of saying “alright. we can’t do it. Let’s not waste any more sleep hours”. But the persistent side of mine prevailed. At the final hour we completed the game and started packaging it for upload. Read the rest of this entry

Hey, I’m alive! Unity and more

Darn it, I’ve really have some time to write something to this blog. My apologies. Real life has caught me up again. Let me sum up the past few days.

First of all work. Well, I leveled up (a bit). We started working on a 3D game with Unity3D this time. No more flash. Don’t get me wrong, I like flash. I really think it’s what newest programmers getting in the world of games should start working with. Flash gives you the advantage to get straight into designed graphics without the hassle needed from other engines to load the texture into the memory, create a quad (or a mesh), create a UV for that mesh (or quad), and finally place it somewhere on scene. Well, in flash you just load the texture and voilla! It’s visible. There also a bunch of nifty engines out there, like Starling (totally kickass!) and flashpunk(kickass totally!), and a new developer is going to learn a lot. There also easy monetization options. You can pick a publisher for free and upload your game to Kongregate, or sell it to FGL, or build it for desktop, you can put ads, or IAPs. Just imagine it and puff, here you have it.

Read the rest of this entry