Recent post about my game with a video
The theme
As many others, I was sure. 100% sure “End of the world” would make it as the theme.
LD started at 3AM local time here, and I was honestly tired, shocked and disappointed when I read that its “You are the villain”.

The idea
I started from scratch thinking about a game I could make. All I knew was that I wanted to make use of box2dlights which I had discovered a few days before and which I adapted to some extend by playing around with the shaders. I came up with an idea after an hour or so. I thought about being evil and remembered my last neighbour who was a huge douche-bag. I remembered how I got really mad after a few months of fights with him and what thoughts where roaming my head during that time – they weren’t nice and definitely not rated as E-for everyone but more E as in evil. So I thought my game could be something like this:
You are a nice guy actually, getting into a fight with your new neighbour. As you become more angry, you start to do acts of evil to him.
The game-play
The actual game-play would be that you sneak around his house and garden and manipulate things to play evil tricks on him (plug his toilet, trample his plants, poison his bird, …). While you do that he would be roaming the area and have a cone of light indicating his field of view. You would have to avoid being caught by him. For each evil act you would unlock new things to do,eventually even new rooms in his house, in which you could free the villain in you. While the neighbour roams around, he would start yelling and play funny animations while he rages. All this was planned to happen from a top-down (birds-eye) view. The game would end by you killing him. In the final act.
So much for the plan.
The creation – day 1
I decided to use a tiled map for the layout as I have some kind of work-flow that should help me speeding up things. What I had not done is integrating physics with it. I used tiled-map editor and drew the physical borders over the map and had to make my game (java, libgdx) create physical bodies at the right position perfectly aligned with the tiles drawn. This took a while as I made some really mind blocking mistakes at that time. But well … I had barely slept, had a Christmas party the night before (did leave at 4AM, so not much sleep) and this was the result. So after two or three hours I had the work-flow reestablished and started to implement all the other stuff.
I used placeholder gfx for everything until ~15hours after theme announcement. I started adding some rotating cone-lights which was easily done, and wrote some code to make a playable character and some “are you in the light”-detection stuff. I started creating some ugly graphics and put everything together.

After adding the neighbour with some simple path-following, I realised what a massive amount of content I would have to create within the next 24 hours to make my concept enjoyable and got really frustrated. But I had to sleep by that time anyway. So I thought I might have an idea the next morning.
The creation – day 2
The next morning I warned myself, not to do the same mistake as last LD. Last time I had my game mechanics not settled until an hour before the deadline, which made me finish a lot of other things in a hurry (thus resulting in bad quality, like a wall-of-text-tutorial). I wanted it to be done earlier this time so I could actually polish things and have nice graphics and music. I decided that I had to change directions a bit to get that done. I threw away the neighbour concept. That was a hard step because I really liked this take on the theme. I felt like it would be nice to have the villain being just an ordinary guy like you and me, turning into a “monster” (very breaking bad style).
Instead I focused on what I already had, and that was the sneaking around and not being detected and line-of-sight part. I changed the setting from “house and neighbour” to “Villain in jail on a run”. I had not created many graphics yet, so content wise, it wasn’t that bad. I had used tiled only to place all my meta-data in the “neighbours house” so it was relatively easy to generate a completely new map with more than one enemy. I added some security-cameras that would rotate between to specified angles with a specified cone-angle. By being able to place and define all these things (including the paths for the AI jail-guards) I was able to get some concept done quickly. Here’s a screen of what the map looked like in tiled-map editor with all the meta-data at a later point in time (click to enlarge):

I added mouse-over items that would explain game mechanics and some basic storyline about you waking up in jail after an intense dream of a goat that betrayed you. (You should play the game to see what this leads to). I added the ability to kill guards while not being detected and some kind of jump/dash that would make you move forward quickly to escape the view of cameras and guards. I think at that point I felt like the main game mechanics had been done. I created three difficulties that unlock once you have completed the preceding map. I had some nice to have features on my trello-board but thought I might postpone them and work on assets and music first.
The audio
I spent around 2 hours to compose a main theme for the game. If you like you can listen to it in my dropbox folder: PLAY. I used Reaper for the first time together with some free virtual orchestral instruments and my Korg SP-250. This worked very well although I didn’t know the software well. I added some percussion sounds that are played when you get caught but other than that I couldn’t find a way to produce nice foot-stepping and attack sounds. As this is a stealth-game I found it not so bad to have the main character not producing noise. I still am not really missing the sounds much. But I might add some in a post-compo version.
Well that’s basically it. I produced all animations with pro motion which I had bought and learned a few weeks ago, and I start feeling comfortable with it. Oh and as with my last LD I used Artemis Entity System Framework instead of a classical component-based approach and this is still my preferred way to do things in games. I haven’t come along the game that I wouldn’t want to implement with this pattern. If you haven’t heard of Entity Systems as a design pattern – give it a try and wrap your head around it 😉
So instead of a time-lapse here is a short animation showing screenshots of different stages in the development (click to enlarge, but ignore the compression artefacts please ;):

One last paragraph about controls
A lot of people in the comments on my LD page, say that they have problems with the control scheme that I defined. When you press W, you walk in the direction of your mouse-cursors position. If you press space, you jump into your mouse cursors direction. I did a mistake that I didn’t realize until release in that pressing A and D doesn’t make you strafe orthogonal to your orientation, but in a circle around the mouse cursor (this part actually is really weird). I suggested in my games description not to use A+D at all. In fact I haven’t used them at all, which is why I didn’t recognize the wrong movements.
Yesterday I started porting the whole thing to android. It’s running smooth on Tegra2 devices, but even without android specific performance tuning I had it running at 30FPS on my desire hd. Given this input scheme it actually fits very well to touch input. Maybe I was influenced by that when I made it the way it is now.
What I would like to ask you, in case you play the game and plan to leave a comment: Could you please suggest a way of control that would suit you better? I can hardly think of one, so I need some input. Thanks in advance and please rate my game, i’ll definitly rate yours.
Oh, and it has a goat. 
And English is not my first language 
Makarun: http://www.ludumdare.com/compo/ludum-dare-25/?action=preview&uid=15341
TL;DR
What went well:
- Using the right tools that I was familiar with
- Concentrating on the mechanics before spending much time on assets
- Using Trello to stay focused
- Isolating myself for two days to concentrate
- Using Artemis Entity System Framework
- Not drinking as much energy drinks as I did last time – I switched to tea.
What went wrong:
- I was very tired the first day because I had partied to long on a Christmas party on Thursday.
- I defined my scope wrong initially but was able to adjust on the second day without much trouble
- I really should have added at least a second control scheme, but I wasn’t aware of it during development
- I made myself too much pressure because I was really overwhelmed by my placement in the last LD
- No breaks. I should have stopped every now and then, if even only for a short break.
- Adding static lights for the map in tiled was a bad idea because I had no preview implemented and had to restart the game on each change.