Pages

Wednesday 24 May 2017

Unit 66 & 67 - Animation Evaluation

Link to Animation: https://www.youtube.com/watch?v=KfhaL0TP-GU

Animation Story/What Happens

My animation takes place in a prison cell, where the main character Mike has woken up. It turns out the prison has been taken over by clowns. 

The animation starts in Mikes cell, and the camera moves towards the exit of the prison throughout the animation. Doors fall over and slam shut on their own, and the lights flicker and turn off.

How Did I Create The Animation?

My animation was created in Maya, and is primarily made up of a long camera track. The camera moves from point A to point B and things happen along the way.
To create the basic camera movements, I set a key frame, moved the camera to where I wanted it and then set another key frame. This is used for animating anything, not just the camera. 

I could change the speed of the camera depending on how far apart I put the key frames. For example, 2 seconds into the video the camera moves quickly as it looks at the broken door. They key frames I used there were very close together (Key frames are marked as red lines.)


And at 4 seconds when the camera moves towards the door, the key frames were further apart. 


The movement of the doors was very simple. I set a key frame for the door when it was in an open or closed position, used the rotate and movement tools to change it's position, then set another key frame. Then when the animation is played it shows the door opening or closing in one smooth motion.

The lights work the same as well. Set a key frame when they are on, then set another when they are off, or vice versa.

To animate the clowns head I had to connect it to a skeleton. A skeleton adds all the bones and joints to the model, and allows me to move different limbs by interacting with joints. Below is a picture of the clown with a skeleton inside it, with one of the neck joints selected.


Evaluation

Things I Would Change?
  • Fix the problems I had with the skeleton/model. When trying to move most limbs, the body stretches and becomes deformed. You'll notice at the end of the animation when the clown moves his head that the shape of his head changes slightly.
  • Animate the clown more, maybe make it walk, run, or grab the camera.
  • Add more detail to the environment (footprints, blood stains etc.) One reason why I didn't add more detail is because that wasn't my main concern. The priority was the animation itself.
  • Add some ambient sound.
Things I Like

  • The environment. I think its quite a creepy setting and looks nice with the lighting.
  • The camera movements, such as peeking round the corner at the start and waking up from the bed.

Unit 4 and 5 - Game Production and Evaluation

As you know, at the start of the year I was tasked with creating a game based around Killer Klowns with Unreal Engine 4. Now that the game is complete I am going to evaluate what I have done and compare the final product with my initial ideas and brief.

My Initial Brief and Ideas

At first, I wasn't sure if I would be working in a group or not, so I came up with these ideas on my own.

Idea 1:

Characters - Mike Tobacco, Debbie Stone (protagonists from the movie)
Nameless character/hunter (game protagonist. Player has the option to call them whatever they want.) 

Setting - Crescent Cove Town, California (Location from the film.)

Plot - 28 years after the killer clown incident from the film (2016,) the killer clowns return to the town of Crescent Cove in an attempt to fully destroy everything and everyone there. The protagonist (player) receives a call from two people who claim to have dealt with the killer clowns before, Mike and Debbie. They talk to you about the possibility of another invasion, and ask you to leave your classified location and travel to Crescent Cove.

Gameplay - In the game, the player starts in the town. While there, the player will have to complete tasks from the townsfolk such as defending them from clowns, or fetching a certain item for them. After completing the quests in the town, the player will be able to travel to different areas. Towards the end, the game could become more linear, and the player will be guided to boss battles etc. The player can enter the police station to refill on ammo, and any of the shops in the town to get health.

The game will be played in third person, and will use the standard PC controls (WASD, space, shift etc.) Or it will be played from a top-down perspective and will control like an ARPG game (mouse to move and target enemies etc.)

Things I Will Need For The Game

Models
  • Townsfolk
  • Clowns
  • Weapons (Crossbow, pistol)
  • Cars
  • Houses
  • Trees
  • Circus tent
  • Other random objects (boxes, bins etc)
Audio
  • Background music
  • Footsteps
  • Shooting sounds (alien ray guns, pistols, bows)
  • Clown laughter/zombie/alien noises
  • Ambient sound
  • Fire
Alternate Game Idea/Idea 2


Characters - Mike Tobacco, Debbie Stone

Setting - Crescent Cove Town, California

Plot - The game will use the same basic plot as the film. Killer clowns have invaded the town of Crescent Cove.

Gameplay - The game will involve the player moving around the town to different locations with the task of defending a house, object or human in that area for a set amount of time. Upon completing an area, the player will be guided to the next area. After completing every area in the town, the player will be tasked with going into a big circus tent, where they will fight a boss. The player gets points for successfully defending areas, and loses points for failing to defend areas. Point's will add up and will be shown to the player at the end of the game. They will be able to put their name and score into a leaderboard. The player can also run out of ammo and of course lose health and die. Ammo and health packs will be placed in set locations around the town, and the player can walk over them to pick them up. 

The game will be a first person shooter and will use standard PC controls.

Things I Will Need For This Game

Models
  • Townsfolk
  • Clowns
  • Weapons (Crossbow, pistol)
  • Cars
  • Houses
  • Trees
  • Circus tent
  • Other random objects (boxes, bins etc)
Audio
  • Background music
  • Footsteps
  • Shooting sounds (alien ray guns, pistols, bows)
  • Clown laughter/zombie/alien noises
  • Ambient sound
  • Fire
Final Game

Video of Final Game: https://www.youtube.com/watch?v=qlhwqj5096U

I ended up working in a group of three for the final game, and the final game turned out to be quite different from my original ideas. 

In the game, you play as Mike. Since the clown invasion he has been trying to warn others about them, but nobody believes him. He becomes depressed and starts drinking a lot, which leads to him being locked up overnight due to public intoxication. The levels in the game take place in Mikes drunken dreams while he is locked up. This is why the game takes place in several random locations. 

We all wanted to be creative and make levels that weren't strictly based around clowns an the film, so we made whatever we wanted, this is how we came up with the idea for the story, since if we used a story similar to the film it wouldn't have made much sense.

Ideas/Game Content

Before we got further into development of the game, we had a few ideas that we ended up not using, since we didn't have much time and the tasks were quite hard.
We originally wanted to include NPC's in the levels, but instead I went with the easier option by using trigger boxes and a small blueprint to display text on screen since I wasn't confident with character modelling or animation. I was also having trouble finding a good dialogue system online that I could use, so this was my solution.

I made several weapon models in Maya that we ended up not using. We decided when making the weapons that we didn't want the player to use any guns, so we made it melee only. I created a baseball bat for the player that we didn't use. This was because the combat system that Josh implemented came with it's own animations and weapons etc, and putting my model in would've been hard.

I also made a rifle and pistol for the clowns to use against the player, however we didn't use these in the end and went with contact damage instead. 




I think the best features in our game are the inventory and combat system, because they are very important features and are fairly impressive due to their advanced blueprints. Having the inventory system allows us to add more variation to the game since the player can pick up new weapons and items. I also really like our environments and think they look nice and are interesting to explore.

Evaluation - What Do I Like and What Would I Change?

I'm overall quite happy with our game. I like how the core mechanics turned out and I think we did a good job with designing our environments. However, if we had more time there are some things I would try to change.


  • Try and implement more of our own assets (such as weapons and objects like barrels and crates)
  • Get different types of weapons working, such as guns and bows.
  • Add a lot more sounds to the game. Since we were so focused on mechanics and environments we forgot about sounds for the most part. All we have pretty much is a small sound that plays when you hit an enemy.
  • Do some more character modelling and animation to add some variation to the enemies, and to also get a proper player character.

Tuesday 9 May 2017

Object Oriented Design - Assignment 2

Object Oriented Design Overview

O.O. Design refers to the technical aspects of a game, and primarily the code, which is what I will be talking about in this assignment. I will be showing blueprint code in Unreal Engine 4 that I am using for my Killer Klowns game, and the written code I used for my Space Invaders game in Gamemaker.

Health Bar Blueprint - UE4

Since the main focus of our Killer Klowns game is the combat, the player needs to have health that changes depending on his interactions with the in game enemies, and the player also needs a visual tell so they are aware of the state of their character. To accomplish this we have used a health bar blueprint. 

The blueprint is split into two sections which have been labeled to make it easier to understand. 

Part 1
The first part of the blueprint controls the health bar and how it behaves. On the left you can see different health values. Current health, max health and health regeneration. When the player takes damage from an enemy, their health will drop, the blueprint recognizes that the players health has dropped, and updates the percentage of the health bar on screen. If the players health has dropped it then begins regenerating at a rate of 5hp per second.

Part 2
The second part of the blueprint displays the health and updates it visually so that the player can see it. 
There is also a widget called "HealthBarWidget" which is responsible for displaying the actual bar shape on the screen. In the widget you can customise the size, colour etc.
The health bar widget. You can see the bar at the bottom.
The health bar in game.
  
Health/Lives - Gamemaker - Space Invaders

In Space Invaders, when the player dies they go invisible for a short period of time and then respawn. This next code in obj_alienbullet is in a collision event with obj_player, and it checks whether the player can take damage or not. If the player is visible, then they can be hit by the bullet and they will lose 1 life, however if they are invisible (respawing) then they cannot be hit. Like the player bullet, the enemy bullet is also destroyed upon impact.




When the player dies, the game also freezes for a short period of time. During this period all bullets in the room are destroyed. To do this, I simply added this code in a step event for the player bullet and alien bullet which destroys all bullets while the enemy is invisible (respawning.)



We also want to enemies to stop moving while the player is respawning, and to do this I simply added a line at the top of the movement code in the alarm event for obj_alien. This line only lets the aliens move if the player is visible.


Now we move on to adding the lives to the player, first a variable needs to be created in the create event called live=3, and then in the step event we use code that restarts the game when the lives are lower than 0.




Health - Which Engine Do I Prefer?

For this task I prefer Unreal Engine. The blueprint is fairly simple, and I like how you can use the widget to easily see and choose whereabouts on the screen the health bar will be. Blueprints also feel a lot more organised than Gamemakers code.

Dialogue - Unreal Engine - Killer Klowns Game

For my Killer Klowns level I wanted text/dialogue to pop up on the screen when the player approaches certain houses. To accomplish this I used trigger boxes, widgets and small level blueprints. 

I placed a trigger box in front of the house that I wanted to use.


Then I created a widget blueprint called House_Dialogue1. This includes the text itself, and allows me to change the font, colour and the position of the text on the screen/HUD.


I then created a blueprint in the level blueprint that connects the trigger box with the text widget. When the player walks inside the trigger box, text pops up at the bottom of the screen and stays there until the player leaves the box.




The text shown in game.


Dialogue - Gamemaker - Brainbox Game

For dialogue in Gamemaker I used basic drag and drop events. In the player object I added a collision event with my computer terminal, and in the actions tab I added "display a message."



When the player collides with the computer terminal, a small window appears over the game displaying the message. This automatically pauses the game in the background.


The text shown in game. 
Dialogue - Which Engine Do I Prefer?

For this task I prefer game maker. The drag and drop code is really easy to understand and to use. You go into your character object, drag in a collision event, add the object you want to collide with to the event, then add an action (what you want the game to do when the objects collide.)