Week 9, Tuesday. Last week – Playtests, final art and story!

World Two art finished

As mentioned last week, Calle finished up the art for World Two. The amount of transitions actually came down to the same amount as World One, but with less effort without sacrificing results. In World One bigger parts of the background would had to be redrawn per transition, whereas World Two was more flexible and did not need things to be redrawn, just drawn upon. Below is a screenshot of the three first transitions (the ones during gameplay).

World2Speltest

Applying juice

Apart from finishing up World Two, a lot of time was spent on particle effects. The game was not quite clear with what happened, for example one piece destroying another by touching it. The particle effects clear these things up, by actually showing the piece being destroyed. This also adds to the games “juicyness”, which we value quite highly as mentioned in a past post.

By the weeks end Calle also started work on sound effects, which Michael implemented into the game with a solid system. Once again, sound effects gives the game a better feeling clicking around on the board, having things collide and react. Right now the sound effects hold quite low quality, but are easy to replace. As the time is drawing near to this productions end, art will be hard to implement. Therefore, Calle can use this time to update the sound effects for the game, amping up the juice even more.

 

Testing new story

Quite a few people playtested the game last week, and one problem stuck out. The players had a hard time understanding the story, and missed the connections Michael tried to make with the text. An entirely new version of the text was made, showing the perspective of a young girl writing in her diary about her arguing parents and an understanding teacher.

This new story was tested on new players, but a new problem arose. The story explained what was going on more clearly, and it became too obvious. Even though the players understood what was trying to be said, they did it so well that there was not much left to be discussed. This does not fall in line with what the game tries to achieve; to affect the player. It also does not resonate with the otherwise surreal and abstract gameplay and graphic.

Michael decided to go back to the first version of the story, although this time with slight modifications. Some parts of the story was removed, as it did not contribute enough to its core. With a pretty much finished game, more playtests were had.

 

Playtest session

Three questions:

  1. What morals can you derive from the game?
  2. What was the game about?
  3. Could you see a connection between the games gameplay/graphics/story?

The further you get into a discussion like this, the clearer things will be for the player. Once the player has thought about and answered one question, the next one will be easier. Therefore, asking the questions in this order felt important, as we would get the initial though from the player about the games core (the games moral and what it’s trying to teach). The questions themselves focus on the things we have worked towards accomplishing, like the games gameplay, art and story being in synch. They are also open enough for other discussions to arise.

With this modified version of the text, players found the moral of the game to be clear. Generally, the answers where how one should look at things from different perspectives. One should combine the different sides’ opinions to reach a conclusion, and share this conclusion. It was quite obvious for some, but not bothersome nonetheless.

When asked what the game was about, most looked back at the games story. They talked about the two persons (representing the christian and the secular humanist) whom looked at things in different ways, and how the player was someone neutral in between the two. When not talking about the story, the description of the game was close to the first answer; how it is about looking at things from different perspectives. Some made connections to one side being religious, some made connections to debate vs dialogue in the different worlds.

There were mixed reactions to our third question. Some thought all three parts worked well together, and understood how what they all meant in both worlds. How the first world showed two clashing sides with fire and ice, with pieces destroying one another in gameplay, and how the story describes the two differentiating sides. Same goes for World Two, where they start to combine. Others were too focused on the actual gameplay with solving puzzles to think about the parts around it, about the background and the text and the meaning of the gameplay. Others realized the connection between the art and the story in World One, and the connection between story and gameplay in World Two, but could not see any other.

Some problems arose during the early parts of the game, where the games logic was quite difficult to grasp. When being faced with two different pieces, one destroying the other when touch, misunderstandings where had. One of the pieces is a blue ball with stars, which some described as a black hole. These players either thought this piece “sucked up” the other pieces, carrying them along. Some thought this piece could not be moved, as they only had past experience with the other piece. This problem was however quite minor, as they realized how the game worked in the upcoming level(s).

Another is what the pieces represent. Not one saw them as arguments, they rather saw them as different views of life. Some saw them as the three characters in the game, two showing the two different sides represented in the story, and the other the players neutral view. They had a hard time seeing a connection to this and the rest of the game, but it was the most logical one when they did not see the game as debate vs. dialogue. This is not necessarily a big problem, as it brings up a discussion, and their answer is not downright wrong, but it is worth noting.

Very few also noticed the games HUD, showing what will happen when two pieces collide. Most found it confusing at first, and then ignored it. They instead stuck to memorizing what piece destroys which and which combination does what. When the HUD was used, however, it filled its purpose. We are doubtful of using a help menu, as it would disconnect from the rest of the game and slow down the pace, there is however obviously room for improvement.

 

 

 

 

 

Week 8, Tuesday

This is our first work-day for the week, as we’ve spent the weekend promoting another game at a games festival in the UK. With only two weeks to go, the schedule is tight but manageable.

Work done in the past week – Text, polish and World Two

Michael spent most of the time from last week on writing and implementing the text sequences for World Two as well as the Finale. Even though he now has text to go for each sequence, he isn’t fully satisfied with them as some of the texts are too on the nose, not leaving enough space for player interpretation. Michael spent the rest of the week working on polishing up the game, creating for instance a “spawn animation” for the board making the spaces and pieces fall down from the top of the screen. Below is a picture of the fall-animation in motion, just before the spaces come together:

fallingSpaces

Calle spent most of the week working on World Two. He finished the art assets for it and is now ready to continue with the animations for the transitions. Because of the time limit and the limited amount of levels, Calle will not create as many transitions as he did for World One. He will probably settle for no more than three transitions: An introduction, a middle and an end.

Today’s work – Animations, Menus and First Build

Today, Michael began working on the menus for the game preparing for the playtests tomorrow. There is now a pause menu which can exit the game, as well as a Main Menu which the player is sent to if he/she finishes the game. This will streamline the process of the playtests tomorrow. Michael also created the very first build of the game with no issues what so ever, a very strange occurrence in the software industry.

Calle started working on the animation for the stars in the second world. In the transitions, smaller stars will move towards the center of the screen creating a larger one. This should represent the different thoughts coming together as a whole, with the smaller stars coming from differently colored areas of the screen. Calle used a Lerp to make the stars move, going with the programming approach instead of creating an animation sequence. Calle does this since a class with this code can be applied to several different object, enabling him to reuse his animation.

The coming week

In the coming week Michael will work on additional drafts for the texts in World Two and Finale. He will also facilitate playtests in order to gather information on how the players interpret the game’s message. Calle will continue his work on the animations for World Two, hopefully finishing them so that he can create the art for the Finale in the beginning of next week. As soon as Calle is finished with his part of the arts for World Two, Michael will begin implementing it into the build.

Week 7, Tuesday

We missed writing our post for yesterday, so today we will summarize what we did yesterday and today, as well as what we will be doing in the coming week. We now have three weeks left of production and need to spend our final production-time wisely. Today, we have also updated our schedule for the remaining weeks, giving us a better perspective on the work we have left.

Finally finished reading the books!

We finally got to read the books recommended by the examiner. We had been waiting for the library to send them to us and yesterday, they did. The recommended are Credo by Gustaf Wingren and Humanismen som livshållning by Georg Henrik von Wright (the second title roughly translates into Humanism as a view on Life). These books gave us some valuable insights into the thought processes behind the Christian and Humanistic view on life, which we incorporated into our Bachelor’s Thesis. With this new information at hand, Michael is ready to start writing the texts for World 2 and Final Act this week.

Movement Animations for pieces

Michael started and finished work on the movement animations for the pieces today. He began by making the selected piece follow the mouse’s position as it moved across the screen. This looked good initially, but since the piece is never deselected when a move is made, we ended up with the selected piece never touching the board but instead always following the mouse while the player made consecutive moves. This made the game loose the feeling of pushing around game pieces across the board and instead felt like you were moving an empty space (with the pieces highlights around it) while the piece itself was stuck to the mouse.

We opted for a second solution, namely waiting with moving the piece until after the player had issued a move order. Michael made it so that as soon as the player makes a move, the piece is moved using the lerp function making it cross the board in a quick movement. The piece ends its movement once it reaches its destination. This looked and felt very good, but cascaded into several other problems. Since the Input Handler so far has been able to execute all of its methods directly after another, this created problems as the Handler now had to wait until the piece had completed its move across the board. More issues emerged as the player could move the piece while in transit, altering the end location effectively providing a cheat to get through levels. Michael re-routed the method sequence for movement in the Handler to wait for the movement in the Piece class to finish, which solved a majority of the problems. He fixed the in-transit cheat by making it so that if a piece is moving into a space with another piece in it, the player loses the ability to issue move orders until the current move is completed.

Continue button for text sequences

From the playtest we had two weeks ago, we received feedback that the text in World One seemed interesting but that the tester didn’t have enough time to read it. A “Continue” button was requested, which would let the player read the text at his/her own pace and continuing with the game once he or she’s done. Today, Michael spent some time on implementing this feature, making the text appear together with a “Continue” button and then fading out quickly once the player presses it. The art for the button is currently Unity’s default and will be switched out later.

Continue Button for Story Text

 

The coming week

In the coming week, Michael will start implementing the board spaces and HUD icons. Now that we have read the books, Michael can also start writing the story bits for World Two as well as the Finale. With the level design done for both worlds, Michael can spend some extra time on making the message come across with the text in the Story.

Graphics for board done

Calle has continued working on the board, which has since last post been finalized. The idea of a transparent board stuck, and some rapid concepts were done for the special bricks, giving us this final board:

disIshowitIs

What the picture does not show is the subtle animations from particle effects across the board. The highlights have a slight spin, the win brick is shining and the turn too has some spinning going on. Something else not shown is a brick, the“not win” brick, which is basically the win brick desaturated, showing that the player cannot yet step on it to win. When the winning conditions have been met, having one piece left on the board, the brick will turn gold.

HUD and World Two

Part of the HUD has also been worked on; mainly the one showing what piece will end up when two collide. A “ghost” of the piece to come will float next to the players mouse, letting the player know what will happen without having him/her trial and error his/her way through.

There are still minor HUD left to be done before we can call World One finished in the graphics department, so looking forward World Two is to be started. According to schedule Calle will have the world implemented and done by the end of the week, but as it stands right now that is not possible. The world is only in a conceptual stage, and speaking from experience from World One more time is needed. With some of the crucial HUD done however a day or two has been saved, as it was planned to be made in the future. This means that it is not as bad as it looks, but the schedule is still quite tight for Calle.

 

 

 

Week 5, Friday

The past week

During this week, we have gotten ahold of one of the books our examiner recommended, although we have not started reading it yet. We can’t push this task too much ahead of us, during our next work-week we will need to read the text so we can complete the research for Part 1 of our Bachelor’s Thesis.

Second text draft for World One done

Michael has finished the second draft of the texts for World One, the draft has been implemented and tested on two play testers. The test was made spontaneously and without any preparation, but still gave us some insights on how the text was interpreted. The gameplay worked well for the testers without too many uncertainties, both managed to complete the game within a reasonable timeframe. The tests revealed the need for a “Continue” button when text appears on screen, pausing the game and letting the player choose when to continue.

The Intro for the second draft (world one) can be read below. The complete second draft is split into Intro, Mid and End with each part being equal in length.

Fire. It reminds me of my time in the streets. They said the demonstration was for the good of all, that everyone participating would get an eternity in warmth and peace. All I could see from the tears in my eyes was the fumes and scorched meat.

Ice. My fellow streetwalkers turned on me after I left the group. The place I left for wasn’t any better of course, no one would trust a former believer. “How could you be so gullible!?” they exclaimed in cynical distrust. Seemed pretty convincing at the time, I thought.

With this text, Michael has tried to take the essence of what it could be like to switch from one world view to another, leaving as much as possible up for interpretation by the reader. Michael envisioned a religious demonstration made on the streets of a large city, with the main character breaking free from the religious group as the leader’s promises do not hold up to reality. The main character tries to find a place to belong which shares his mindset of right and wrong, but is not socially accepted in any other place. The story is told using an inner monologue where the main character is contemplating previous events in his life.

Level design done and movement tweaks

Michael finished the level design for both worlds this week. After trying out some different designs, he decided to make it easier to move with the red-green and blue-red pieces, since even we ourselves would get stuck too often in our levels with these pieces. The combined pieces were meant to be “stronger” than the non-combined, which is also why we opted to go for this change. The new movement pattern for the red-green piece can be seen below.

redgreen improved movement

The red-green piece (selected) can now move to its inner spaces as well, which makes a lot more versatile and viable in different puzzle scenarios. As the picture shows, we have started implementing the final art assets for the pieces in-engine.

Camera movement and Board creation

Michael has spent parts of Thursday and Friday on juicing up the game, i.e. making the game feel better to interact with. He started by adding a cinematic for the introduction of the game, making the camera slowly move downwards revealing the fire and ice. He also added the Spawn animation for the board spaces, making them fall down randomly from the top of the screen. These smaller parts of polishing up the game is extremely important for player immersion and experience. If the game looks and feels good to the player, he/she will have a much easier time with engrossing themselves in the experience.

Implementing the background art for World One

Michael began this week by merging Carl’s background assets with the mechanics and levels. This proved to be harder than expected, creating errors in Michael’s classes that tried to access the classes put on Carl’s assets. Michael eventually fixed the issues, the main problem being that there were two child classes on Carl’s assets that inherited from the same base. This is an issue we haven’t run into before, but we will take the lessons learned with us into the creation of world two. Michael created a system where the BackgroundHandler will look in two specific folders for the background’s animation and idle prefabs, as long as Carl names the prefabs properly, they can be placed in these folders and be easily loaded into the BackgroundHandler.

Finalizing art for pieces

Throughout the weekend Calle has been hard at work with the pieces. This Monday one piece was done, the red book, but now all six of them are finalized, the first three being the basic pieces and the other three the combination pieces.

Vecka5fredag-PiecesFinal

Two posts ago we discussed what the pieces could represent, but the time to conclude design had come and functionality had to be taken into consideration. The choice to color-code the pieces, covering them in a general color, came early. They could rely on things such as silhouette and design, such as simply calling a piece ‘the book’, but to make it simpler for the player to remember what is what color-coding is a good choice. With pieces combining things can quickly snowball and become convoluted.

The choice to make the pieces in 3D was decided when Calle looked at his options. Unity provides neat frame-by-frame 2D functionality, but the problem was not the game engine itself but the method. Frame-by-frame often results in choppier animation than tweened (3D-animation), which did not fall in line with the games art. Calle had tried making frame-by-frame work for the background to world one, but concluded that static frames fading in and out gave the smoother result. The chopping attracts attention and distracts from the otherwise subtle movement in the games art, which is not something Calle wanted. There are programs which tween 2D sprites, but Calle is familiar with 3D-animation and time is of essence.

One backside to making the pieces in 3D is the contrast between the pieces and the background, which is in 2D. Calle worked on a solution, as a consistent art style is important for the games immersion. The 3D pieces are simply treated as 2D sprites, meaning that they are painted on from a specific angle, the one the game has locked throughout the game. As the camera will not change angle anytime throughout the game, this was possible. The red piece is seen below, first from the correct angle and then in other, faulty ones.

Vecka5fredag-bookPiece

More dynamic objects within the pieces, such as pages turning in the book, had to be treated as regular 3D-objects. This did however not ruin the overall 2D-look of the pieces, which now all animate smoothly and “juicy”.

Work begun on the board

The board which the pieces are to be placed upon has also started taking shape. The problem Calle was facing was its colors and how they were to be treated. With a background consisting of red and blue on each side, and pieces ranging from red, purple and green, it was hard finding a suitable color for the board. A white board would help the pieces pop, but looked uninteresting next to the flames and ice in the background. A dark board had a hard time defining some of the pieces and hid their shadows. The solution was a transparent board:

Vecka5fredag-board

This board is not final, but it conveys the idea pretty well. Each “brick” in the board is easy to read, it doesn’t steal attention from the pieces or the background and it actually shows the background. This was a problem Calle had to face sometime; the board hiding the oh so pretty background. With a transparent board the player may see it better, and it helps bring its animations onto the board where the player will spend most of his/her time looking.

Special board bricks such as the win brick and the blocking brick are still to be done. There is also crucial HUD to be made, and some more pretty effects for the pieces would be nice, however there are more pressing matters at hand. Following this Calle will finalize the board, with all the bricks ready to be used. This means that world one will have, more than last times almost, all graphical assets ready.

 

Week 5, Monday

Today’s work

This day was spent with working on additional game mechanics for the game as well as the art asset for the first of the six game pieces. More game mechanics and technical work got done than expected today, but at the same time the art for the game piece took longer than expected due to technical problems with importing animations into Unity.

Art for the Red piece (The Book)

Today Calle started off with the work on the pieces. First up was the book, or the red piece as Michael would call it.

The piece is being made in 3D (we will be discussing why in a later post), and with that came some unexpected problems. The program the piece was animated in, Maya, played the animation one way while the game engine we use, Unity, played it another. Calle was given two different versions of the same animation, were the correct one was not the one present in the game. This has to do with how Unity handles animation, and how it “tweens” its animations while Maya does not. This problem took longer to solve than estimated, and the entire day was spent solving the issue.

Game mechanics and how they relate to Socratic dialogue

The first task of the day for Michael was to create the final three pieces, which the player can create by combining the three pieces that we already have (green, blue and red). These new pieces will have movement-sets that are a combination of the two colors that was used to create it. To see an example, look at the picture below.

red and redgreen movement example

The red-green piece gets the length of the red piece, letting it move further than the green piece and even over obstacles. The mechanic of combining pieces is inspired by Socratic dialogue techniques, while looking at the pieces as arguments in a dialogue. In a Socratic dialogue, every argument is carefully valued and tested. As the green and red argument collide, instead of simply removing one of the arguments (as would be done during a debate), we take the knowledge gained from valuing the arguments against each other and use that to create a new argument (piece). None of the combined pieces are entirely removed, they are merely merged into something new. As our aim with this project is to impart the understanding of the benefits in seeing a problem from different viewpoints, we feel it important to let this influence and form every aspect of the game.

Large amount of technical work finished

Michael managed to create the three “advanced” pieces today, henceforth called the combination-pieces. He created the highlights for the pieces as well as a function used to center the game-board in the middle of the screen. In addition to this, he started working on the HUD icons that will show what will happen if two pieces collide. These icons will show when the player has a piece selected and hovers with his mouse over another piece. The HUD and highlights are very important aspects of the game, since without them the game would be nearly unplayable by anyone except us developers. In order for us to influence our player, we need to easily explain to him how to play the game, at the same time as he’s actually playing the game.

The coming week

As there has been a lot of progression going on in the technical areas, time has been freed to implement additional features to the game that will help the player enjoy and understand how to play it. Before this week is over, we hope to have merged the mechanics and art for world one. We also hope to finish work on the icons that will help the player know what happens when two pieces collide. Michael will also do level design for world two, since the pieces for it are already done. He will also implement some of the texts in world one, mainly those that will show between the levels. In the coming week, we also aims to start reading the two texts that was recommended by the examiner.

The problem with the art for the first piece took longer to solve than estimated. Calle will still stick to the plan to have the pieces and the board done by the week, although with more pressure and perhaps less polish. Having them all done and in the game, ready for pretty effects when there is time, seems better than not having them at all.

Week 4, Friday

What happened this week?

Text-related coding

This week, Michael had planned to be done with the text-related technical backbone of the game, enabling him to add additional story segments in the coming weeks. He had also planned to write the texts relating to the first of the two “worlds” in the game, which was supposed to be based on debate. All of the above was finished on time, and the system Michael created for showing text and story bits is able to fade two text segments in and out, as well as fading the screen to a semi-transparent black. This was made to give the text more focus during the story parts.

Wrote first draft for story in world one

We did not start reading about Christianity and Secularism this week. We went to the library and ordered the texts we were recommended by the examiner, so hopefully we will get (and start reading) them next week. Because of this, it was harder than expected for Michael to write the story parts for the first world. He still managed to put together a first draft which we can update later, since it is easier to write about the differences of the two life philosophies than it is to write about their common aspects. Since the differences is what will be debated during world one, it fitted us to start writing about that first as the gameplay of the first world is nearly complete. Michael wrote 5 different story bits for world one, we will most likely only use three in the final product but it’s good to have several different bits to choose from.

Created highlights and scaling

Since he could not spend his time with reading, Michael decided to make the game more accessible to new players by adding highlights on spaces a selected piece is able to move to. This was initially meant to be done during the polish phase in about 2-3 weeks, but we realized that the highlights are necessary for us to playtest the game, thusly we had to create and implement them sooner. Below is an image of the highlights showing the movement of a selected piece. Michael ended the week with spending some time on making functionality for scaling the playfield, so that several different sizes can be made to fit well on different screens.

highlightsInGame

Background transitions in world one done

This week Calle has, just as planned, worked on the levels and their transitions for the first world in the game. The entire world is done, perhaps except for its introduction which we still feel is unclear. The technology behind the transitions and the visuals is however robust, meaning that making some sort of introduction will be a breeze. This also means that when the time comes to merge Calles and Michaels projects it will be without too many hiccups, since it is basically only dropping their scripts into the same folder.

Started creating concept art for the pieces

Concept art for the pieces has also been made, although only this last day of the week. During pre-production a lot of quicker concepts for the pieces were made, mostly to get ideas of what they actually were out there. The problem Calle faced was what the pieces should represent, since there are many different approaches. As it stands right now, the pieces show different types of arguments, or different meaning of the arguments. One piece is a tree, which could mean life or the natural. Another is a star which could indicate the scientific or astronomy. Even though there is an original interpretation of the piece, it should still be subjective. Calle feels it is important that it is still kept quite abstract, so that the player may be a co-creator and reflect his/her own views on the pieces, but that we as the artist start them off with a hint. The picture below shows the thumbnails of the book, tree and star (from top to bottom).

Pieces_Week4

Research question and the work so far

Our research question is: How can game developers create entertaining experiences that have the potential to affect the player outside of the game?

In order to make the game affect the player outside of the game, we need to plant a seed of thought about the theme we’re trying to discuss within the game. The though planted can be different for every player, and doesn’t need to be mature enough to grant any conclusions. What’s important is that the game sets a thought in motion within the player that can then grow out from his subconscious during the weeks after he has finished playing. In order to achieve this we have chosen gameplay that will keep the player’s mind focused while at the same time giving the emotional part of his brain the chance to process what he has read during the story bits.

We envision the game to alternate between story (which will be shown with text and art) and gameplay.  The gameplay will use the game board and pieces that we have spent our first weeks of production creating. So far, it has taken us a while longer to create the gameplay than it has to create the underlying story, which might feel odd as it is the story that will leave the seed within the player’s subconscious. However, if the gameplay didn’t exist, the message we’re trying to convey through the story might feel too pretentious and alienating to the player. By wrapping it in an entertaining game, we can lure the player to read our dialogue pertaining life philosophies and even question assumptions that he might not even know that he had.

Our plan going forward is to begin testing the gameplay and story to see if we’re close to affecting the user in the way we want. We haven’t settled for a method of testing yet, we do believe that it is more important for us to find a way to test the story bits than the gameplay as we have already tested the gameplay in analogue form.

Week 4, Wednesday

Continuing from last Monday, our 2 man team is still struggling with technical issues, however not without prevail! Below we will walk through the barriers we have faced, how we got around them and what is left to be done. For this week, at least.

Graphical optimization and smoothing out transitions

Up until today the graphical assets for World One had only been tested in the Unity Editor, with no changes to the standard settings. This means that the graphics has so far been made to look smooth and nice on machines exactly like Calles, and with the exact same settings. This is of course not viable, as we want as many people as possible to have the possibility of playing the game. More so if we want to release the game on mobile devices, which are often weaker than the average PC.

As it turns out, the otherwise so smooth transitions between levels were not so smooth when the graphic settings were bumped up. However with help from Michael we were able to find a bug in the script for the transition, keeping it consistent between graphic settings and machines.

The transitions at hand is what most of the work has been done for. How they are made were however covered in our last post, so this slideshow to show our progress will suffice:

Something Calle did

What is obviously missing is the transition from the last stage (W1L3) to this worlds ending sequence (W1L4), were the player will dive into the vast ocean (W1L4.5). That too is left to be done.

Organization and fading text

As Michael started to finish up the programming for the gameplay mechanics last post, and was hence ahead of schedule, he could start working on the mechanics for the text. The text in the game is the story bits of it, and is planned to be shown in between levels. It is crucial that the player reads this text and might need some motivation; however this is something we can cover when we get there.

There was perhaps more work than planned needed for the text, which needed functionality to fade in and out. The same functions were initially meant to be used for the texts background, but needed other methods as GameObjects does not act the same as GUIStyles (both are classes in Unity). An option was to have the text be a texture, basically making it behave the same as the background, but its quality would be lower and the iteration clumsy as a change in the text would warrant the import of an entirely new texture.

Timers or cool downs were needed to make the text behave properly, gradually fading while the timer ticks to zero, but did not work as intended. The fading would act weird, but was later solved by using a solution similar to the one Calle uses for transitions between levels.

Michael later created a base class which held all the basic functionality needed by every child class (the sequence classes), the children could now be made smaller and easier to manage. These smaller classes retrieve basic functionality, such as the creation and fading of text and backgrounds, from the base class which means that Michael will be able to create new in-game text sequences faster.

Michael initially worked with Coroutines (Link below) to try and find a way for the fading to work on the text. A Coroutine is a function that can use the yield keyword to wait for the next frame to continue performing its logic. Michael had problems getting the Coroutine to work with several different texts at the same time, as the increment variable for the fade wasn’t reset once a new text called the same Coroutine. This made for buggy fades where some texts would pop up without even fading, or even fade multiple times.

In the end, Michael decided to skip the Coroutines for the fades, but still managed to use their functionality to solve another bug. The GameHandler class is used to initialize every other Handler-class, such as the TextHandler Michael has worked with this week. A bug arose where a function call made to the TextHandler class ran before the Constructor of said class. This created an error as the function used a variable initialized in the Constructor. The problem was solved by creating a delayed Constructor in the GameHandler class, which could run the function call to TextHandler with a delay of two seconds, giving the Constructor of TextHandler enough time to run first. The delayed Constructor was made using Coroutines, since a Coroutine can be made to wait for a set amount of time before continuing with its statements, the function call could be made at the end of the delayed Coroutine thus eliminating the bug.

Coroutines in Unity: http://docs.unity3d.com/Documentation/Manual/Coroutines.html

Future plans

As the text mechanics are shaping up Michael can start implementing the text, or the story rather, to the game. The texts relating to life philosophies have been ordered and we are awaiting their arrival. To get the most use out of these texts we plan to wait with the story until we have actually read them.

As said above, some of graphical assets are still missing for World One, but the plan is to get them done by the end of the week. Calle will also begin making proper concepts for the pieces, continuing from silhouettes and other quicker concepts made before. With this we will almost have World One complete, however with some graphical assets missing, no sound and no story. This will of course come at a later stage in development.

 

Week 4, Monday

We have spent the day mainly with solving different technical issues, which I will describe more in detail below. I will also go through some of the game’s mechanics, how they relate to the theme of understanding through conversation, and what we hope to have finished by the end of the week.

Using prefabs to fade the background of World One (Fire and Ice)

Calle has spent the day working on the fading between levels. In the first world, there will be clashing ice and fire. These two sides will recede and create a pool of water in the middle. Calle worked on finding a solution for how to make the ice and fire recede while also fading in the water in the middle. He decided to create prefabs, which are similar to predefined blueprints of objects that can be placed in the scene. He created three prefabs for each side, since the sides will recede three times. Each time the sides recede, the current prefab (existing on the scene) will fade out, at the same time the next prefab will fade in making the transition seamless.

Creating the Red Piece

Michael spent the day with creating the Red Piece. This piece is supposed to move similar to the Rook in chess, with the exception that it has to move as possible along its movement path. This movement system created some problems for Michael, as it was quite different from the other piece’s movements but still had to be implemented in some of the same classes. Michael managed to implement the feature by placing the majority of the code in the class specific to the Red Piece, while doing some checks in the Input Handler class to make sure that the functions specifically needed for the Red Piece are run if a Red Piece is moved.

Mechanics of the first World

The following mechanics have been implemented and will be used in the first world:

  •          Blue piece, one-step diagonal movement
  •          Red piece, Rook-like movement
  •          Green piece, one-step 90 degrees movement
  •          Wall, blocks pieces
  •          Win space, have the last piece on this space to win
  •          Collision rules:

o   Red beats Blue

o   Blue beats Green

o   Green beats Red

  •          Turn space, turns any piece that lands on it to the next one in the collision order (Red becomes Blue etc.)

With these mechanics, we have tried to illustrate how a debate typically works. Our idea was to show the player a debate in the first world, then changing the story, mechanics and art into a dialogue in the second world.

Each piece is supposed to represent an argument. While the individual movement patterns are not inspired directly by debate, the usage of the collision rules are. In a debate, participants are focused on crushing the opposition’s arguments in favor of trying to understand them. We want to illustrate this by letting the arguments the player controls (pieces) have strengths and weaknesses against each other, for instance, a “red” argument will always destroy a “blue” argument. The Turn Piece was meant to showcase the way an argument can be turned and twisted by rhetoric to represent something entirely different, depending on how the person explains it.

Plans for the week

We are currently ahead of schedule, and all of the mechanics that were meant to be implemented this week are already done (with the Red piece and Turn space being the final parts). Michael’s plans for this week are to begin work on the story-related texts that are to be shown in between level- and world changes. He will work with writing the text itself but also with creating the technical backbone that will handle the transitions. We have received two texts from our Examiner that relate to the theme of life philosophies, which explain the core values of Christianity and Secular Humanism respectively. We will begin reading these texts and take notes on what to incorporate in the debate/dialogue Michael is about to write. Calle aims to finish his work on the transitions for the first world this week. He is also going to start doing concept art for the three pieces that will be in the first world.

Vecka 2, Produktion – Sammanfattning

Tankar efter redovisning av Del 1

I början på denna vecka hade vi redovisning för Del 1, dvs. den skriftliga delen. Vi gjorde vår presentation på tisdagen.  Den huvudsakliga feedbacken vi fick var att texten saknade en tydlig brygga in i produktionen. Detta var något som vi glömde skriva in, vi skrev inte ens en summering till texten. Vi har ganska klart för oss hur vi ska ta med oss våra efterforskningar in i produktionen, vilket vi nu har börjat med, så får vi komplettering för detta så blir det inte svårt att skriva ner våra tankar till en summering i slutet av den skriftliga delen.

Valde bort tutorials

Vi hade under denna vecka avsatt all tid till att titta på tutorials för vår valda spelmotor. Efter att ha spenderat ca 20 minuter på att se serien http://www.youtube.com/watch?v=yQXdREL4GGg så kände vi att vi hade en tillräcklig grund för att kunna hoppa in i motorn och börja testa våra idéer. Anledningen till att vi hade så många dagar avsatta till tutorials var för att vi inte visste hur avancerade spelmotorns system för 2D skulle vara, och därmed inte hur lång tid det skulle ta oss att lära oss dem. Efter att ha sett grunderna så bestämde vi oss för att gå rakt in i produktion och att istället lära oss de djupare sidorna av motorn när vi stötte på problem. Detta sparade oss mycket tid och vi har nu hunnit komma ca 3 dagar före i vår planering. Om vi inte hade haft erfarenhet av spelmotorn sen tidigare så hade den tiden vi avsatt för tutorials varit betydligt viktigare och troligtvis inte utbytningsbar.

Val av motor och tekniska problem

Vi har valt att arbeta i Unity 4.2. Vi har erfarenhet av att arbeta med Unity 3D och läste om uppdateringarna i Unity 4 som gör det lättare att arbeta med 2D (http://blogs.unity3d.com/2013/08/28/unity-native-2d-tools/ ). När vi nu har arbetat i motorn ett par dagar så är vi väldigt nöjda med valet, då det innehåller lättillgängliga 2D verktyg vilket underlättar vår produktion.

Michael stötte tidigt på problem med hur Unity hanterar klasser och objekt. I Unity så måste varje klass sitta som en komponent på ett GameObject, vilket är det objekt som existerar på scenen. Michael är van vid att kunna instansiera klasser och att det är klassen själv som innehåller logik om kollision och sprite. Detta skapade problem innan Michael hade hunnit vänja sig vid Unity:s system, men löstes efter att han hade förstått hur Unity:s GameObjects relaterar till klasser och kod.

Calle hade från början en idé om att använda normal-maps för att skapa ett extra djup i vår 2D. Då Unity både fungerar som en 2D och 3D motor samtidigt så hade detta gett oss intressanta möjligheter att arbeta med förflyttningen av ljus i 3D framför våra 2D objekt. Han upptäckte dock att normal-maps inte kan sättas på partiklar, och valde därför att inte applicera normal-maps på resten av våra sprites heller. Han tänker att det hade brutit vår grafiska stil om våra 2D sprites hade haft normal-maps men inte partiklarna, då vi använder partikelsystem för att skapa rörelse över våra 2D sprites.

Detta har implementerats

Vi har nu börjat vår produktion och har arbetat långa dagar både på onsdagen och torsdagen. Michael har börjat med att programmera de grundläggande strukturerna och spelmekanikerna för spelet. Hittills har vi följande:

  • Ett Grid system som används för att rita ut spelbrädet. Kan användas för att göra olika storlekar (i Y och X led).
  • Två pjäser (grön och blå) som har olika rörelsesystem; En kan flytta till intilliggande rutor och den andra ett steg till diagonalt intilliggande rutor.
  • En vinst-platta. Spelaren vinner om han har en pjäs kvar på brädet som står på vinst-plattan.
  • Kollision mellan grön och blå. Om de kolliderar så förstörs den gröna pjäsen.

Nedan syns en bild på spelets första bana. All grafik är temporär. De röda pilarna syns inte i spelet:

värld1bana1

Grön pjäs (till vänster) och blå pjäs (till höger) rörelsesystem visas på bilden med röda pilar. Spelet kommer att vara uppdelat i två olika världar, där varje värld låter pjäserna interagera med varandra på olika sätt. I den första världen så kommer de tre pjäserna (vi kommer att lägga till en röd pjäs i nästa vecka) att fungera enligt ett sten-sax-påse system där de olika färgerna tar ut varandra. Denna första värld ska simulera en debatt mellan två sidor som kämpar mot varandra i sinnet hos en person, där pjäserna är sidornas argument. Spelaren kommer både få observera debatten i textform samt styra pjäserna. Sten-sax-påse systemet ska simulera hur debatten förstör olika argument, när en argumentation är över (en bana) så finns där endast ett argument kvar som kan vara vinnaren.

Grafik till den första världen (debatt)

Calle har börjat arbeta med bakgrunden till den första världen. Han har tagit inspiration från de två motsatserna is och eld, som visas på bilden nedan.

WorldClashProgress

Denna bakgrund kommer vara animerad och förändras allt eftersom spelaren klarar av banorna i den första världen. Vi beräknar att ha tre banor i varje värld (alltså 6 banor totalt). I den första världen så kommer elden och isen att, i takt med att spelaren klarar banor, flytta sig bakåt mot skärmens kanter. Ett hav kommer att formas i mitten, och när spelaren har klarat de tre första banorna så kommer han att dyka in i havet där den andra världen tar plats. Med detta vill vi visa att debattens två sidor tappar kraft mot varandra, och mellan dem finns nu en stor blandning med argument från båda sidor. I nästa värld, dvs. när spelaren befinner sig mitt ibland argumenten (i havet) och de två sidorna inte längre är närvarande, så kommer spelaren att få kombinera argument med varandra för att kunna undersöka spelets tema ifrån olika perspektiv.

Ljud outsource:at till Ola Bäckström

Då ingen av oss är kunniga inom ljudskapande så tog vi kontakt med ljudstudent vid namn Ola Bäckström. Vi har arbetat tillsammans i tidigare projekt och han visade stort intresse för vår frågeställning, story och spelmekanik. Han har gått med på att försöka hitta tid till att hjälpa oss med musiken till spelet, ett första utkast på musiken till spelets första värld (eld och is) som Ola har gjort kan laddas ner här: https://www.dropbox.com/s/u05l8nytj43tqzp/Fire%20and%20Nice_1.wav

Vecka 1/Del 2 – Presentation och Planering

Presentation

Med en uppkommande opponering och examinerande presentation satte vi veckans schema på förberedelser inför de två.  Våra förhoppningar var att få sätta igång produktionen på en gång, men valde istället att fokusera på att få en presentation som håller hög kvalité, likaså med opponeringen.

Det finns alltså inte så mycket att skriva om själva arbetet, då det har fått vänta. Vi har däremot skrivit ett preliminärt schema över arbetet, inte bara för att veta vad vi ska jobba med varje dag utan även för att få en känsla för scope. Vi har diskuterat idéer för spelet under hela del 1, så många av dem har hamnat i en stor hög. Denna hög har nu organiserats och staplats till ett fint torn, som vi ska ta tag i en bit åt gången.

Planering

Något vi märkte rätt snabbt var hur ont om tid det egentligen var. Vi vill hellre se en kvalité över kvantitet, då detta känns viktigt för att intressera spelaren från allra första början. Om spelet ger ett dåligt första intryck och vi inte lyckas få honom/henne att spela igenom den första minuten, kommer vi självklart inte heller lyckas få honom/henne att påverkas av spelet. Däremot, om spelet är så kompakt att det blir ett spel på 10 minuter, kan den då ge ett starkt nog intryck på spelaren? Även om vi inte siktar på att spelet ska vara just 10 minuter, hoppas vi att denna nerskalade version ändå kan framföra kärnan i projektet.

Vi har nu en klar vecka framför oss; vi vet att vi ska jobba i Unity, vi vet vilka spelmekaniker där ska vara och vi har en aning om hur det ska framställas estetiskt. Detta kommer från de dagar vi klämt in prototyp-arbete från del 1, vilket har hjälpt oss få denna chans för en rivstart. Med erfarenhet i Unity från förra projekt kommer programmeringsdelen inte bli en nylärandeprocess, samma med den tekniska biten av estetiken. Samma med spelmekanikerna, då vi vet vad spelaren ska göra, och den grafiska med övergripande koncept på spelvärldarna.

WorldClashWorld Clash rough concept (Egen bild)

Så, även om vi denna vecka inte börjat komma igång med den producerande biten av projektet så har vi ändå en bra idé över hur det kommer gå till. Vi har lagt grunden för projektets produktion, och kan med den börja bygga upp själva spelet. Delar av spelet har fått skäras av, men detta var förväntat och vi känner oss inte oroliga över det. Hur själva spelet kommer bli återstår däremot att se.