Skip to main content

Posts

TECH TASK: BLOGGER TEMPLATES

I edited the theme of my blog from white/burgundy to purple.
Recent posts

READING 10: DOING

Illustration by Nick Slater on dribbble . For this week's reading task, I edited my paragraphs according to the feedback given to me. This included providing an example of a game that uses the three act structure storytelling method. I also fixed my introduction because it sounded more like a conclusion. I read through my paragraphs and made small changes such as replacing words. I added three images of graphs to provide a visual reference to what I had written. I also created a title image for my writing and an image for Nonlinear substructures (see below). I wrote a brief author bio and rearranged my bibliography into alphabetical order.  Title image created on illustrator: linear + non-linear stories in games (original photo from unsplash ) Image made with Illustrator.

UNITY TUTORIAL 06

In this weeks tutorials I learned how to add UI to my game to show Ruby's health status using images. I created a canvas in my hierarchy then created an image as a child gameobject. I added the health bar background image into the image gameobject's source image. I clicked the 'set native setting'' button so the image would transform into its original size. The image became very big so I resized it to fit into the top left corner of the game scene. I chose the anchor preset in the rect transform section of the inspector so that the anchor would reposition into the top left corner. This makes sure that the UI stays in that corner at al times.  I created a child object to the health bar image and added a Ruby portrait into the source image, then resized it to fit into the circle. I made another child object of the health bar background and called it mask, resized the white box, and adjusted the anchors to each of its corners. I added the blue health bar image and resi

READING 7: DOING

Illustration from   Interface Illustration: Productive Work on dribbble . There were not many changes that I needed to make when I received feedback from my peers. The feedback was generally positive and I was told that my paragraphs are straightforward and stay relevant to the point. I also reworded the highlighted sentences below as suggested. In the first and second paragraphs, I mentioned that linear narratives have a defined beginning, middle and end. My classmate pointed out that it was unnecessary to repeat myself so I edited one of the sentences. I initially had numbers beside the quotes that correspond to the references list at the bottom but changed it and placed the author's name and year of publication in brackets instead.  Paragraphs with feedback applied: Difference between a linear and nonlinear story structure The most common storytelling structures that are present in games are linear and nonlinear, since there is  no single mode of narrativity in entertainment sof

READING 6: DOING

Illustration by Shane Francisco on dribbble . Difference between a linear and nonlinear story structure The most common storytelling structures that are present in games are linear and nonlinear, since there is  no single mode of narrativity in entertainment software [1].  Linear narratives follow a chronological path with a defined beginning, middle, and end. The player progresses through the game in a straight line by reaching predefined plot points. This is different to games with a nonlinear structure because they provide the player with the freedom to make decisions that can influence the story. The player's choices offers them several possible endings. There are games that have a combination of both structures. Three act structure The three act structure is a method of linear storytelling which divides a plot into a beginning, middle, and end. This model is widely used for designing a high level framing narrative for computer g

UNITY TUTORIAL 05

This week I was introduced to the package manager and installed a package called Cinemachine which would allow the camera to follow Ruby around the game. I created a new game object by adding a 2D camera from Cinemachine. The new camera view made some of the area around the game scene visible so I had to paint more of the tilemap, with water along the borders to make it look like an island. I applied Ruby to the "follow" section of the Cinemachine virtual camera in the inspector which made Ruby the centre of the screen as the camera follows her. I added the Cinemachine confiner to my virtual camera to prevent the camera from showing the area outside of the game scene.  In the second set of tutorials, I learned how to add a smoke effect to the robot. I created a new particle system and activated the texture sheet animation in the inspector then changed the mode to sprites. I added the two smoke effects in the spaces below it. I edited the start frame in the texture sheet anima

UNITY TUTORIAL 03

This week I learned how to give Ruby a health status. I added a maxHealth and currentHealth variable to the RubyController script. I made sure that Ruby would have full health at the beginning of the game by adding "currentHealth = maxHeath" in the start function. I added a ChangeHealth function along with the appropriate code that allows the health status to change. I brought a strawberry into my scene as a collectible object that boosts Ruby's health. I applied a box collider to the strawberry and activated "is trigger". I created a new script for the collectible and applied the code that would allow Ruby to collect the strawberry and give her health.  I added a damage zone to my scene and created a script for it. I applied the code that would cause Ruby's health to decrease if she were to come in contact with it. I changed the sleeping mode of Ruby's prefab to "never sleep" and edited the RubyController script so that she will be invincible

UNITY TUTORIAL 02

Illustration from Pinterest . This week I completed two more sets of tutorials for building Ruby's 2D Adventure. I added items such as trees, drains, metal cubes, flowers and more to my scene. To make it look like Ruby is standing in front or behind the items I changed the transparency mode in the camera settings to custom axis. I changed the sprite sort point to pivot and edited Ruby's custom pivot in the sprite editor so that the pivot is now placed at the bottom. Now it does not look as though Ruby moves in front or behind the items too early. I created a prefabs folder and added the items to it. This allowed me to easily add duplicates of the items to my scene.  I added a RigidBody component to Ruby and changed the gravity scale to 0 to prevent her from falling out of the screen. I added a box collider to Ruby and the items, and adjusted the sizes. To stop Ruby from glitching and rotating when coming in contact with an item, I activated the freeze rotation in the RigidBody

LR: PLANNING

Study and research illustration from gettyimages . This week, I chose my topic for the literature review. I initially picked " Why put stories in games" but had accidentally chosen the exact same topic as one of my classmates so I ended up going with "Linear and non-linear stories" instead. A large majority of games follow a storyline. These stories may be a small insight of the characters' background or entire plots that steer the entire gameplay. Story-driven games follow a linear or non-linear structure. I made a mind map of keywords and other notes that I will use to help me search for material to write my literature review. Screenshot of my keyword mind map from Miro . During this week's lecture, a campus librarian visited the session and brought us through the steps to sign into the college's virtual library. She also showed us how to search for books and other resources in the databases and introduced us to google scholar.  Interactive Storytellin

UNITY TUTORIAL 01

This week I completed the first few sets of tutorials to create a 2D game. I had to update Unity then downloaded and imported the assets I needed for Ruby's 2D Adventure. I learned how to import an image of the character, Ruby, and turn it into a sprite. I created a script called RubyController. I applied the code that would allow Ruby to move horizontally and vertically using the arrow keys. I also adjusted the speed so Ruby would move faster.  I learned that a tilemap is a grid and that it can be extremely helpful in drawing my game world. I created my own tilemap and first tile. I assigned a sprite to this first tile which I imported from my downloads. I learned how to use the tile palette and painted my first tile onto my tilemap. I adjusted the pixels per unit of the tile so it would fit to the grid square.  I accessed the environment folder which contained a few tilesets that I would use to paint my game world. I started by changing the pixels per unit of each tileset and cha

BETA

I previously planned to have the player running statically while the scenery moves but I decided to have the player actually running through the scene while the camera follows. I did this by using the GetComponent method in void Start in a script which I attached to the main camera, then copy and pasted this code into the PlayerController script in the void Update section. I will have tiles spawning ahead as the player runs.  Screenshot of my game in Unity3D. I laid out the obstacles which will spawn along with the tiles. The layout will be the same but as the game's speed begins to increase so will the difficulty. I added seeds which will equal to one point and sugar cubes which will equal to 5 points. I was reminded of the sugar cube in The Secret World Of Arrietty from a comment on a previous project post so I decided to add it as a reward.  Screenshot of my game in Unity3D. I'm having an issue where the player falls over when collecting a reward. I'm also only able to j

UNITY TUTORIAL 08

"It Is Time To Do The Design" by Tenney Tang on Dribbble . This week I finished the final set of tutorials for the arcade-style sumo battle game and completed a challenge. I learned how to spawn up to 3 enemies by adding a new void to the SpawnManager and using for-loop. I also learned how to make the number of enemies increase with waves using the (++) operator as well as getting the power-up to respawn in a random spot at the start of each wave.  Screenshot of my work in Unity3D. In challenge 4, I had to correct the scripts of a soccer themed game by applying what I learned from the sumo battle tutorials. I fixed the issue of the enemy flying towards the player instead of away when they collide by subtracting  "transform.position" from " other.gameObject.transform.position" instead of the other way around. I replaced the "Powerup" tag under the enemyCount variable with "Enemy" so that a new wave begins when all the enemy balls are ta

FIRST PLAYABLE

Continuing with the creation of my game, I resized the player character to make them even smaller based on a comment that was left on my last project blog. I also repositioned the trees to make the space slightly narrower and added some flowers to bring some colour into the scene. With reference from the animal feeding game tutorial, I was able to get the player moving left and right by clicking the arrow keys. I brought in rocks and a branch for obstacles but I need to apply a SpawnManager script and get them to spawn randomly during gameplay. I also have to figure out how to get some branches falling from the trees and bringing in power-ups and points too. Screenshot from Unity3D of my game production.

UNITY TUTORIAL 07

Illustration by Saikat Kumar on Dribbble . This week I completed the first three tutorials for building an arcade-style sumo battle game. In the first set of tutorials, I imported the necessary assets and brought a sphere into the scene then applied a texture to the sphere. I learned how to give the main camera a focal point so that it can smoothly rotate around the play area. Following this, I learned how to make the ball roll towards the camera no matter what direction it is facing.  I brought another sphere into the scene to act as an enemy in the second set of tutorials. I was introduced to physics materials where I was able to give the enemy the ability to bounce the player away. I made a new script and added code that allowed the enemy to follow the player. I also created a SpawnManager script for the enemy and applied the code which would cause the enemy to spawn in a random area at the start of the game. In the third set of tutorials, I brought in a star power-up and used the

GAME FUN

Games can be described by the 3 components Mechanics, Dynamics, and Aesthetics (MDA) or otherwise stated as rules – system – “fun” . The three reading selections this week and the synopsis below all address the term “fun” in relation to game design. There are eight types of Fun outlined by the MDA. These eight are both a source of reference and player experience that blend together in many ways, and essentially what makes a game engaging and enjoyable. Figure 1: Eight kinds of Fun Both Oxford and Merrian dictionaries define Fun as an enjoyment and delight but within the context of a game, it refers to a form of pleasurable entertainment. MDA papers define the '8 kinds of fun';  sensation, fantasy, narrative, challenge, fellowship, discovery, expression, and submission. These remain a source of reference and possibly the most popular list of player interactions combining in various forms to attract each player to a particular game. Nicole Lazzaro presents four types of fun that

PROTOTYPE

I browsed through the Unity asset store to find a package with nature objects that I could use to set up the scene for my infinite runner game. I downloaded the Nature Starter Kit 2  and started building my scene in Unity. This was a little time consuming but I'm satisfied with the way it turned out. I upscaled the trees and bushes, keeping in my mind my initial idea of gaining inspiration from the movie "The Secret World of Arrietty." I got the character from a tutorial I have completed for this module before and positioned the camera behind it. Screenshot of my work in Unity3D. With reference to the lesson 3 Unity tutorial, I started coding by creating the PlayerController script. I used the AddForce method and allowed the player to jump by clicking the spacebar. I declared two public variables to be able to adjust the gravity and player's jump force. Looking into the player's animator controller, I applied a static running animation. I then added a jumping ani

TECH TASK: CHEEZBURGER

 Meme created using the Cheezburger website. Image from Cheezburger site.

UNITY TUTORIAL 06

Computer gamer illustration from Freepik . I went through the final set of tutorials for making a horizontal endless runner game this week. I was introduced to effects and applied an explosion effect for when the player dies. I also added dirt splatter particles to the player's feet to make it appear as though they are kicking up dirt as they run. I added an audio source component to the main camera object and applied a music clip which plays during the game. I also applied a jump sound for when the player jumps and a crash sound for when the player hits an obstacle.  After completing these tutorials, I did another challenge. The game in the challenge was a horizontal endless game where the player has control of a balloon and the obstacles are bombs. I had to apply what I learned in the previous tutorials to complete this challenge. The player was unable to control the balloon using the spacebar because the GetComponent method was not used so I corrected this. I edited the script a

GAME DECISIONS

Video “In order for the player to be optimally engaged, challenges should be presented at a level equivalent or slightly higher than their current skill. Not too easy, not too hard”( Gigity McD ) The word 'flow state' was coined by Csikszentmihalyi (1975) also known as being “in the zone” This is when the player is fully engaged in the game experience. Csikszentmihalyi put a lot of work into observing and analysing various groups of people. This theory is focused on the idea of how people should balance their skills and the demands of particular tasks. An example of Flow would be a challenge in a game that interests the player such as a puzzle or a boss battle meant to keep the player interested and not get bored. Csikszentmihalyi also states that flow is related to an ideal psychological condition when a person engages in a challenge-skill activity, often resulting in concentration and a focused emphasis on a task. A practical technique for improving Flow is to look at what p