Category Archives: Uncategorized

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.

Game

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.

Presentation

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

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

Δεκέμβρης 2012 – Ένας ενδιαφέρον μήνας

Λοιπόν, πάμε πάλι για μια προσωπική ανάρτηση.

Την κυριαρχία αυτού του μήνα στην προσωπική μου ζωή την πήραν οι γυναίκες με την αξία τους. Και όχι επειδή τις αγαπάω κτλ. κτλ. αλλά επειδή αυτή η ποικιλομορφία που έχετε πάντα καταφέρνει να με ξαφνιάζει. 2.5 γυναίκες κυριάρχησαν στην ζωή μου αυτό τον μήνα. Read the rest of this entry

Should as3 constructor be lightweight?

When I work in flashdevelop I usually use the code quality tool (PMD) provided by Adobe, to check on the welfare of my code. It can be found under Tools>Flash Tools>Analyze Project Source Code. Generally I try to stick on its warnings and keep my code as clean as I can by its proposals, although sometimes I ignore it on purpose. But there is a warning that always caught my sight.

Constructor must be as lightweight as possible. No control statement allowed, whereas a cyclomatic complexe of 2 has been detected. The Just-In-Time compiler does not compile constructors. Make them as lightweight as possible, or move the complexity of the code to a method called by the constructor. Then the complexity will be compiled by the JIT

I always wondered how much difference can that make and if I should follow it or not. So today I put that on a test. Read the rest of this entry

How to try to make money from flash games

I said “try” haven’t I? Well there is a reason for that. Flash games earn money. The interesting part is what you earn from these… but let’s start from the start. There are two ways to earn money from flash games. Advertisements (ads) and licensing ( or sponsoring ). I’ve so far tried out only the first one, but I’m into trying licensing when I get the chance.

To sum up licensing, it is the part where you sell your flash game to a sponsor. For that they pay you an interesting amount of money, and if they have it exclusively your earnings are more. What you are supposed to do is add their logo and their link into your game, and give the swf to them. They also may accept your ads. The fact is that licensing is a one time pay job, but it has the potential of big earnings. It also needs a lot of waiting time, about 2 months, to get a fair offer. If you happen to get interested check out Flash Game License. That’s it for licensing.

Read the rest of this entry