Devblog: Butterfly effect – Wrap up

Several blog posts later, here we are. The final devblog for now. So, what did I learn?

It was definitely an awesome experience. I’ve worked in a team with some extremely talented people and we managed to match mindsets, both in terms of game ideas and of scope. We worked very agile and built something modular. While, of course, there were discussions and decisions, we all understood each other, and I believe each of us also learned some technical skills. I learned to use the Puppet2D plugin for Unity to make animations, Maria learned a new art style and Dan learned how to quickly create a framework and something very polished in a little amount of time.

I think that one of the big pluses of this experience which allowed us to create something so fast and so well was communication. If we had suggestions or something to discuss, we discussed it between us. If we couldn’t do something, we told each other. That’s very important in a team.

All in all it was good. Another game for the portfolio, another award, another 48 hours of crazy, crazy fun.

Rares.

Devblog: Butterfly effect – We’re popular!

We won the “Public Choice Award” at the location where we were. Out of 18 teams, we were chosen as the popular award 😀

Our team name was Pixelbuds 😀

Butterfly effect - People Choice award

Devblog: Butterfly effect – the Kodak moments

Butterfly effect was creating during the 2015 Global Games Jam. That means 48 hours in one location with little sleep. That, coupled with a smartphone, means quite a few oportunities for candid pictures. Here’s the pics that I took during the jam:

Storyboards!

Storyboards!

From left to right: Maria, the artist, Rares (Chris), the designer, Dan, the programmer

From left to right: Maria, the artist, Rares (Chris), the designer, Dan, the programmer

Storyboards!

Storyboards!

IMG_20150125_181954

Selfie!

Sleepy art goblin

Tagged , , ,

Devblog: Butterfly effect – The cut

Since the Global Games Jam is over, Butterfly effect also had to be finished, and I believe we did pretty well. That said, we did cut a lot of the things that I talked about earlier, BUT none of them were critical for the game. Here’s what we cut and why:

We cut off story levels 5-10 simply due to lack of time. At some point after the 35 hour mark we realized that we would not get the game done to a polished state if we were to have 10 stories, so we decided to focus on stories 1-4 and polish those as best as we could: characters, animations and backgrounds. I took up making animations as soon as Maria was done with a character and that saved a lot of time, while Dan, our programmer, took to adding some very awesome camera zooms and pans which helped a lot in telling the story.

So, maybe you’re thinking why having a story which has about 50% of the initial story intended is still worth telling? Simply because we were working bottom-up. We created an easy-to-add-on framework of the game and a game concept which was functional with 2 stories. Once we had those 2 things done, anything on top would only make the game better. We thought modularly and it paid off, in that if anyone were to play the game right now the game would still feel complete.

The only 2 features that we didn’t get to implement were the text-to-speech engine and the action-inaction bar. We might actually implement those at some point this week, but no promises. The game itself is done, and here’s its official link on the GGJ website: http://globalgamejam.org/2015/games/butterfly-effect

^_^

Devblog: Butterfly effect – Next steps

Now that we have an MVP out the door, it’s important to listen to the feedback that we get and iterate the game accordingly. Of course, we still have stuff to polish, like animations and replacing the placeholder characters and backgrounds, but in the end it’s gameplay and idea that we’re after, not perfect polish. This is, after all, a games jam.

I have updated the Trello task list that we have created (btw, I’ve also seen one of the other teams use an Excel to hold a feature backlog, hooray for proper project management!), but here are the general pointers that we have in order to make the experience better and easier to understand:

  • Add text at the beginning and end of the game to suggest the action/inaction duality and replayability. Something along the lines of “Action or inaction both have consequences” at the beginning and “Is this really what happened?” at the end.
  • Have all actors in all the scenes at the beginning but only zoom on them one at a time. At the moment we keep adding them as the scene progresses. It might help the player understand that each of the characters has a role in the same scene
  • Take out some of the excessive zooming. While we need the zooming to understand which object/action is being performed, the game tends to sometimes go to a Prezzie level of zooming. Less is more
  • Add a tutorial in which to make the player understand that they can also NOT act and have an outcome. We have had some interesting feedback about the need to present the player with 2 interesting decisions to choose from. While I believe that this is the case, of course, the player is always right. We need a way to convey to them that both choices are possible and lead to an interesting outcome. I have suggested a peg on a bar, which starts moving to the left if left alone, or to the right if the player acts. Both ends have text attached to them, explaining the decisions at each end. Come to think of it, would it be interesting to have the player action make the bar go to the left, instead of to the right? It might make them consider the neutrality of their decision/indecision…
  • Animations, which I am working on at the moment.
  • Old lady and cat art
  • Alley and top of apartment block background art
  • Replace “She” with “The blonde” in the text. Every other character has a noun associated with them, and she’s the only one with the pronoun.
  • Add Text-to-Speech capabilities, in order to complete the Eagle Eye diversifier. I found a really cool script which has the Google Translate TTS work for you. While impeded by the need to be always online, since we’re going to release a Web version of the game, that should not provide to be an impediment.

Not all of these will go in the next iteration, of course, but I mentioned them because they are on our list.

alpha

Devblog: Butterfly effect – First playable prototype

35 hours in, we have a minimum viable product 😀 Hooray, The butterfly effect is here 😀 I’ll post the link lower down.

fpp

So, what have we learned till now? To be honest, the game was playable a few hours ago, but we wanted to make sure we had no obvious flaws in the game against which the large public would bump.

We have implemented 4 out of the 10 story levels with a degree of placeholders and now await for feedback. We have had a few points be made out by the people who have played it till now, and will put them in the backlog to be addressed.

I think that till now there have been 2 major qualities to our team: first, each of us knows what to do and are good at it. Maria did the art to a very high quality standard and Dan coded just as well. Other than design, I am also aiding each of them whereever they need it. At the moment I’m focusing on animating the models while Maria fills in the placeholders with actual art.

Here is the link to the GGJ page of the game (playable link there), with 13 hours to go: http://globalgamejam.org/2015/games/butterfly-effect

Devblog: Butterfly effect – More art

We have some more art now, with the 3rd character, the cabbage guy, and the background cityscape for the game done. You can see them below. Additionally, we almost have a playable prototype with the thug and blonde and the rest is mostly text, but it should be enough to see a few reactions to our game. Proto coming soon ^_^

Varza dude

cityscape background3

Devblog: Butterfly effect – Unpredictability

Another concept that creeped up to me while writing the situations in the levels was that it’s quite possible that the player will abandon the game after seeing what 1 of his actions would do, after which they would intuit. For example, if I always know that if, left alone, the cabbage guy will throw the cabbage at the thug, once I see that the cabbage guy is left alone, I will no longer care. In order to do this, I decided to parralelize the game world. In order to illustrate this, here is how the game flow looks like at the beginning, the first 4 levels:

butterfly_effect_flow (1)

If this were left in the same order, whenever I saw which branch my decision would go, I would know the rest of the outcomes and become disinterested in the game. So here’s how the parralelizing would work, with all the 10 levels:

butterfly_effect_flow

Devblog: Butterfly effect – managing flows

Once we chose what the game was and how it was going to play, we decided to create the game flow in order to have everything scalable and so we could grow fast.

The game flow needed to be very simple in order to accept the Stephen Hawking diversifier, so the player would start the game by holding a button and they would choose to act by holding that same button. They would choose not to act by waiting for 5 seconds. Simple as that 🙂

Now we come to the visual feedback. The player needs to know who they are in the scenario and what their action affects. For this, we will use a simple zoom effect. First, the character that the player is controlling is shown. Then, the object is zoomed on, after which the camera zooms back to the entire scene, after which the player is prompted to act. Pretty simple, intuitive and nice, we think. Here is how that flow would look like:

butterfly_effect_flow

And here is how the flow looks like from a programmer’s perspective, including the game loop and the processes that need to take place behind the scenes:

game_loop_flow_-_New_Page

We have also created the Trello board that I was talking about, which can be found here: https://trello.com/b/jhdImx1i

Devblog: Butterfly effect – The story

The story of the game needs to be something very simple at the beginning, which gets more and more complicated as things unfold. As our artist so gracefully put it, you start as a big part in a small picture and end as a small part in a big picture, but your decision is still as important.

Level 1:
You are a thug, about to mug a young woman.
If you act, then you mug her, grab her money, and run away. She cries.
If you do not act, she hits you and runs away.

Level 2:
You are a young immigrant, working at a restaurant for the summer. You are going out to throw some cabbage away when you notice the thug.

>If you act, you throw the cabbage at the thug. The thug gets hit and cannot act.
>>The blonde hits him and runs away.

>If you do not act, you faint.
>>The thug mugs the blonde, grabs her money and runs away. She cries.

Level 3:
You are an old lady, above the alley with the boy and the thug. You are about to water your plants.

>If you act, your hand trembles and the potted plant falls.
>>The boy gets scared by the potted plant. He faints.
>>>The thug mugs the blonde, grabs her money and runs away. She cries.

>If you do not act, you go back inside.
>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>The blonde hits him and runs away.

Level 4:
You are a cat on the roof. You see a bird and are about to jump towards it.

>If you act, you jump after the bird.
>>The old lady goes back inside.
>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>The blonde hits him and runs away.

>If you do not act, you keep walking on the roof and distract the old lady.
>>The old lady’s hand trembles and the potted plant falls.
>>>The boy gets scared by the potted plant. He faints.
>>>>The thug mugs the blonde, grabs her money and runs away. She cries.

Level 5:
You are a postman delivering mail. You hear a sound coming from inside an alley. You are about to go investigate.

>If you act, you go into the alley.
>>The cat keeps walking on the roof and distracts the old lady.
>>>The old lady’s hand trembles and the potted plant falls.
>>>>The boy gets scared by the potted plant. He faints.
>>>>>You notice the fainted boy and rush to his aid. You wake him up.
>>>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>>>The blonde hits him and runs away.

>If you do not act, you walk past the alley.
>>The cat keeps walking on the roof and distracts the old lady.
>>>The old lady’s hand trembles and the potted plant falls.
>>>>The boy gets scared by the potted plant. He faints.
>>>>>The thug mugs the blonde, grabs her money and runs away. She cries.

Level 6:
You are road worker. You are about to fence off a street.

>If you act, you block the way.
>>The postman sees the blocked street and goes into the alley.
>>>The cat keeps walking on the roof and distracts the old lady.
>>>>The old lady’s hand trembles and the potted plant falls.
>>>>>The boy gets scared by the potted plant. He faints.
>>>>>>You notice the fainted boy and rush to his aid. You wake him up.
>>>>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>>>>The blonde hits him and runs away.

>If you do not act, you do not block the way.
>>The cat no longer has a ledge to support itself and jumps after the bird.
>>>The old lady goes back inside.
>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>The blonde hits him and runs away.

Level 7:
You are a kid on a bike. You see the road worker and are about to show him the finger.

>If you act, he will get angry.
>>The construction worker will not block the way.
>>>The cat no longer has a ledge to support itself and jumps after the bird.
>>>>The old lady goes back inside.
>>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>>The blonde hits him and runs away.

>If you do not act, the construction worker will decide to spite you.
>>The construction worker blocks the way.
>>>The postman sees the blocked street and goes into the alley.
>>>>The cat keeps walking on the roof and distracts the old lady.
>>>>>The old lady’s hand trembles and the potted plant falls.
>>>>>>The boy gets scared by the potted plant. He faints.
>>>>>>>The postman notice the fainted boy and rush to his aid. You wake him up.
>>>>>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>>>>>The blonde hits him and runs away.

Level 8:
You are an old man. You hate birds and you see a bird on the opposing roof. You are about to throw a rock at the bird.

>If you act, you throw a rock and hit the bird, which flies away.
>>The cat keeps walking on the roof and distracts the old lady.
>>>The old lady’s hand trembles and the potted plant falls.
>>>>The boy gets scared by the potted plant. He faints.
>>>>>The postman notices the fainted boy and rushes to his aid. He wakes him up.
>>>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>>>The blonde hits him and runs away.

>If you do not act, you look down and see the postman.
>>You whistle at the postman, who looks up and does not notice the fainted boy.
>>>The thug mugs the blonde, grabs her money and runs away. She cries.

Level 9:
You play as the old man’s dog. You are about to go and be petted by the old man.

>If you do act, the old man pets you.
>>The old man no longer throws the rock.
>>>The old man looks down and sees the postman.
>>>>The old man whistles at the postman, who looks up and does not notice the fainted boy.
>>>>>The thug mugs the blonde, grabs her money and runs away. She cries.

>If you do not act, the old man does not pet you.
>>The old man throws a rock and hits the bird, which flies away.
>>>The cat keeps walking on the roof and distracts the old lady.
>>>>The old lady’s hand trembles and the potted plant falls.
>>>>>The boy gets scared by the potted plant. He faints.
>>>>>>The postman notices the fainted boy and rushes to his aid. He wakes him up.
>>>>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>>>>The blonde hits him and runs away.

Level 10:
You play as a flea on the old man’s dog. You are about to bite the dog.

>If you do act, the dog does not go to the old man to be pet.
>>The old man does not pet the dog.
>>>The old man throws a rock and hits the bird, which flies away.
>>>>The cat keeps walking on the roof and distracts the old lady.
>>>>>The old lady’s hand trembles and the potted plant falls.
>>>>>>The boy gets scared by the potted plant. He faints.
>>>>>>>The postman notices the fainted boy and rushes to his aid. He wakes him up.
>>>>>>>>The boy throws the cabbage at the thug. The thug gets hit and cannot act.
>>>>>>>>>The blonde hits him and runs away.

>If you do not act, the dog goes to the old man to be pet.
>>The old man pets you.
>>>The old man no longer throws the rock.
>>>>The old man looks down and sees the postman.
>>>>>The old man whistles at the postman, who looks up and does not notice the fainted boy.
>>>>>>The thug mugs the blonde, grabs her money and runs away. She cries.

That’s it. 10 levels, each of them exploring a small bit of a creature’s life in a small part of a small suburb of a small town of a small country. The butterfly effect ^_^

Time to implement levels 1 and 2 into the game and see how a couple of people take to the game ^_^