GlobalGameJam 2015: We won at our local jam!

This past weekend I assembled some friends again to participate in the Global GameJam 2015. I’ve participated since 2011 with more or less luck.

At the end we made a party-game up to 5 players in local, totally based in the theme of the Jam: “What do we do now”.

 

If you want to play it click here, but you will need to have a gamepad and several other players.

If you want to read the Post-mortem keep reading.

Post-mortem

This year I didn’t expect to do anything special, I came for the sake of participating but the stakes were very low.

I told two close friends, Miguel (programmer) and Esteban (artist), to participate with me (both had experience in Game Jams) but I wasn’t sure if Miguel was going to join our team or participate on his own.

When the theme was unveiled I was a little bit disappointed of it, but as soon as Miguel showed interest in joining the team I thought we had a chance, then we all started doing brainstorming.

Brainstorming

Miguel suggested to start by doing a brainstorm session by ourselves. I came up with some vague ideas, but during that session I had the impression that every team was going to end up doing the exact same game, because the theme seemed so constrained, but to my surprise the other team-members had totally different ideas. After sharing our ideas we started making suggestions and end up with three different potential games, but only one of them seemed feasible in time and complexity, so we choose that one.

Our idea for the game was that a narrator tells a story, and in every sentence he foretells something dramatic, but some words are missing. Players have to guess which are the words missing to anticipate what is going to happen and avert the consequences. Every eight seconds the sentence on the screen is completed and players face the consequences.

ggj15_screen

The degrees of freedom of the players were limited, they only could run around the screen and pickup objects, so we make some situations were having or not an item could save your life.

This idea was ideal for a Gamejam. Besides having little replay-ability, its simple concept and the fact that many people can play together against the game narrator had a high laughs-factor, which would work very well in front of an audience.

Also I knew Miguel is good writing rare jokes, so I wanted to have a game where his jokes could be part of the gameplay itself.

Planning

I usually prefer to code alone during the Jams, it is hard to coordinate with another developer in such a short time, but Miguel is also a developer, and he has a totally different way or programming (he and I do not agree in any coding language). So that was going to be a problem. Esteban on the other hand would focus in doing backgrounds and sprites for the game.

My suggestion was that Miguel would design the game levels in a document and coordinate with Esteban to create the items we need for the different levels. Meanwhile I would develop the engine in Javascript and as soon as possible have a character moving around the screen. Miguel agreed with me, but instead of just creating a document he would create a parseable file with all the info so I can read it and put it straight inside the game.

Because he had a better mental image of how the game was going to be, I told him to feel free to put as much info as he wanted.

Development

Friday was almost gone and I didn’t have anything running, I was using an old Javascript library I created to code 2D games but it wasn’t working at all so I decided to call it for the day, an start again on Saturday from scratch.

Every Saturday I go to a drawing course and I couldn’t skip the class, but because everyone had his own goals, it wasn’t a problem for the rest of the team. When I came back to the Jam around mid-day, they already had envision different levels, so I started putting everything together using another library I created for 3D games, the performance wouldn’t be so good but because we didn’t have too many sprites in the screen I thought It wouldn’t be a problem.

Miguel told me that instead of creating a parsable file with our own format he could write a valid JSON file so it would be much easier for me to integrate it with the code, and thanks to that I didn’t have to waste time parsing a text file, it was as easy as using the built in features of the browser.

Around midnight we already had one character running around the screen, picking up objects and making funny faces.

Screen Shot 2015-01-24 at 18.50.53

At 3 o’clock I coded the bears attack, and we were very happy with the result, that gave us a moral boost, so I polished more effects and situations while Esteban was creating more items and characters.

At 4 o’clock I was still fresh and could keep coding but Esteban was falling sleep on top of his computer so I decided that it was time to go home. We had enough already to do something funny.

On Sunday morning we had to start chopping the game content, I didn’t have enough time to code several levels (although Miguel had already planned all of them and Esteban had made most of the art).

I was afraid that having more levels could meant not having the game mechanics working well so I focused on having one single level with everything very tested.

I still had to code the multiplayer aspect of the game, I needed to code a lobby where players could jump in the game, and also some basic features like visual feedback of what was going on in the game.

Meanwhile Miguel was improving the level file, adding audios, more puzzles, etc. It was very funny for me to test the game without knowing the solution to every puzzle, so I could experience what other players would face.

Around one o’clock I had the multiplayer already working so I decided to do the first test. We assembled some players and started a match, and while playing that match I realize the game had some chances of winning. While we were playing we were laughing and cursing and enjoying the match.

20 minutes prior to the deadline I was still coding some important features (like the time bar, the title, more endings, fixing bugs, etc) but I was happy because everything was working better than expected.

It was very good to have Miguel on the other side doing all the boring stuff about the game (taking screenshots, uploading our info in the official website) so I could scratch the latest minutes of the game.

Presentation

We were one of the teams to present the game first. I decided to ask the audience for some player testers, and three guys decided to jump to the game. I had some introductory text thought but because there were some technical difficulties to plug the gamepads and the computer to the screen, I totally forgot about them. I didn’t say the names of the group members either! I was afraid for a second that I wasnt going to be able to show the game in its full potential. I could show the game played by one player at the keyboard but that defeated the complete purpose of the game.

Luckily everything got fixed by restarting the computer so we could show the game, and while playing the audience started laughing and enjoying all the silly situations that Miguel had coded, they were fun and allow the audience to participate by trying to guess what was going to happen next.

Results

We end up winning the best game of the competition, just 0.02 points above another game that was amazing in all aspects.

My point of view is that we created a game totally focused in the Jam itself, instead of trying to do that game that we have been thinking for a long time. We didn’t risk much in the technological or artistic aspects but we went straight to make a game fun to play with your friends, and we succeeded.

Thanks again to my two great team-members, it was a pleasure working with you.

 

 

 

 

 

5 Responses to “GlobalGameJam 2015: We won at our local jam!”

  1. miguel Says:

    I felt pretty weird to be in a game compo and not type a single proper line of code (there were some boolean conditions inside the .json file, but that was about it). Of course it was also much less mentally taxing than coding everything and it also allowed me the pleasure of sleeping eight straight hours every night.

    I’m also surprised about how little interdependence there was between our tasks. I mean, I didn’t even have a computer able to run the game, so I couldn’t see it. And you were swimming so deep in your code that you didn’t have the time to look at my joke/script files until the very end. And yet, everything ended up fitting together pretty nicely!

    I feel like I have reached the ceiling of my game jam career. Now I’ll devote the rest of my life to gibing talks here and there, basically paraphrasing your postmortem (I’m to lazy to write my own; in fact, I think I’ll just link to yours from my blog).

  2. jgg Says:

    The first place for your game was totally well-deserved. Also my favorite game of the BCN jam. Really great work, guys! Specially with the theme fitting and making players and audience have a good time. Hope to see you again next year!

  3. tamat Says:

    Thanks Javi for your comment, your game was also great, your team always make the most polished games of the Jam.
    We will see next year again. Btw, I hope you present your incoming game in the QIDV, its a nice place to showcase!

  4. jgg Says:

    Sure. It’s time to join these meetings everyone is talking about… xD.

  5. tamapolis : Javi Agenjo's personal blog » Blog Archive » QIDV: Talk abour our game for the GGJ2015 Says:

    […] Some weeks ago I was invited to give a talk at the QIDV (a local informal event for game developers) with my friend Miguel about the game we did for the Global Gamejam 2015. The talk is in spanish and the audio is not very good (and my diction doesnt help). It gives more insights about our working process besides the info I alwady wrote in this post. […]

Leave a Reply


one + = 2