Video Games Design
Sunday, 10 July 2016
Wednesday, 11 May 2016
The Last of Us notes
GENRE
- horror
- post-apocalyptic
- action-adventure
- survival
NARRATIVE/STORYLINE
- original IP
- dual protagonist (Joel & Ellie)
- how do humans deal with killer infection?
- what would happen to society?
- journey across America
- life goes on, nature takes over (destructive & beautiful)
- emotional rollercoaster to connect with audience
PRODUCTION PROCESS
- collection of animators, artists & programmers
- started out with only 12 employees
- were going to work on top of existing characters (Jak & Daxter), but didn't want to change it too much & irritate fans
- story grew from relationship between Joel & Ellie, but not father-daughter relationship as too cliche
- experimented without infected, but was deemed too boring and not interactive enough for player
- idea taken from TV show 'Planet Earth' and fungus (ophiocordyceps) which takes over ants' brains
- motion capture to capture both actors' movements & vocals
- facial movements NOT mo-capped
- camera used to pick up wide shot of each scene
- script changed on set due to actors' improve, strengths, weaknesses
- starts with actors in suits then animators clean up sequences
- organising environments to be sure player will fit
- minimalist soundtrack, low tuned guitar to capture both sound and noise
- although tension often comes from lack of sound
- infected noises made by voice actors (wet, textured, natural, no animal sounds)
- naturally lit to be cost efficient
- shadows key to creating believable environment
- flash light important as many dark areas
- NPCs exist for longer & are given set areas in which to inhabit
- AI is key
CHARACTERS
ELLIE
- normal looking
- 14 years old
- non-sexualised, strong female character (not seen often in video games)
- tomboy
- not a damsel in distress
- empowered woman
JOEL
- lost his daughter early on
- scarred, broken
- tough guy, but one we haven't really seen before
- "few moral lines left to cross"
- sense of danger in his tone of voice
INFECTED
- began life as very alien/zombie looking
- fungus is growing out of their face & ripping it apart, something not seen before
- relentless, but beautiful
- 4 stages; human looking, lumps, cloudy eyes - 'clickers' fungus covering face - bloaters, completely covered - death (become part of environment & release spores which infect
OTHERS
- Tess
- David
GAMEPLAY
- third person
- play as Joel first then Ellie
- both melee combat & use of long distance weapons e.g. guns, bow
- can choose to fight or be more stealthy
- some puzzle solving
- crafting came from ideas in book for making homemade weapons
- user interface (minimum amount of button presses)
- "item starve"
- rewards for exploration
- want players to have mindset of "I can survive"
TARGET AUDIENCE
- rated 17+ (Mature) due to blood/gore, strong language, sexual content
- could be steered towards female audience with all the strong female characters
PLATFORMS
- PS3 (2013)
- PS4 (2014 remastered version)
- horror
- post-apocalyptic
- action-adventure
- survival
NARRATIVE/STORYLINE
- original IP
- dual protagonist (Joel & Ellie)
- how do humans deal with killer infection?
- what would happen to society?
- journey across America
- life goes on, nature takes over (destructive & beautiful)
- emotional rollercoaster to connect with audience
PRODUCTION PROCESS
- collection of animators, artists & programmers
- started out with only 12 employees
- were going to work on top of existing characters (Jak & Daxter), but didn't want to change it too much & irritate fans
- story grew from relationship between Joel & Ellie, but not father-daughter relationship as too cliche
- experimented without infected, but was deemed too boring and not interactive enough for player
- idea taken from TV show 'Planet Earth' and fungus (ophiocordyceps) which takes over ants' brains
- motion capture to capture both actors' movements & vocals
- facial movements NOT mo-capped
- camera used to pick up wide shot of each scene
- script changed on set due to actors' improve, strengths, weaknesses
- starts with actors in suits then animators clean up sequences
- organising environments to be sure player will fit
- minimalist soundtrack, low tuned guitar to capture both sound and noise
- although tension often comes from lack of sound
- infected noises made by voice actors (wet, textured, natural, no animal sounds)
- naturally lit to be cost efficient
- shadows key to creating believable environment
- flash light important as many dark areas
- NPCs exist for longer & are given set areas in which to inhabit
- AI is key
CHARACTERS
ELLIE
- normal looking
- 14 years old
- non-sexualised, strong female character (not seen often in video games)
- tomboy
- not a damsel in distress
- empowered woman
JOEL
- lost his daughter early on
- scarred, broken
- tough guy, but one we haven't really seen before
- "few moral lines left to cross"
- sense of danger in his tone of voice
INFECTED
- began life as very alien/zombie looking
- fungus is growing out of their face & ripping it apart, something not seen before
- relentless, but beautiful
- 4 stages; human looking, lumps, cloudy eyes - 'clickers' fungus covering face - bloaters, completely covered - death (become part of environment & release spores which infect
OTHERS
- Tess
- David
GAMEPLAY
- third person
- play as Joel first then Ellie
- both melee combat & use of long distance weapons e.g. guns, bow
- can choose to fight or be more stealthy
- some puzzle solving
- crafting came from ideas in book for making homemade weapons
- user interface (minimum amount of button presses)
- "item starve"
- rewards for exploration
- want players to have mindset of "I can survive"
TARGET AUDIENCE
- rated 17+ (Mature) due to blood/gore, strong language, sexual content
- could be steered towards female audience with all the strong female characters
PLATFORMS
- PS3 (2013)
- PS4 (2014 remastered version)
Monday, 9 May 2016
Thursday, 5 May 2016
Making Pong in Unreal
Start with a blank project & no starter pack
Go to File - New level - Empty level
Create a Box from the BSP category
Make its location 0.0, 0.0, 0.0
Use the image template and drag it into context
Go to File and Save all as P1_Main
Go to Edit - Project settings - Maps and modes
Set the Game default map and Editor startup map to P1_Main
Right click in content, create new material and name it M_Reference
Double click on the material
Hold T and left click
Name the texture, PongTexture
Drag the white pin into Emissive colour
Change the shading to Unlit
Apply
Drag reference onto box
Change the Y to 1290 and X to 900
Go into M_Reference, right click and add a BoundingBoxBased_0_1_UVW
Drag the result out and create a Component Mask
Then drag out from this and create a Custom Rotator
Hold 1 and left click to create a numeric value
Make the value 0.75 and connect this to the Custom Rotator
Return to the P1_Main and create another BSP Box
Make its dimensions 100 by 100 by 100
Right click on this box and Create Static Mesh
Name this SM_Ball
Create another BSP Box and make it 350 by 100 by 100
Create a static mesh from this and name it SM_Paddle
Create another BSP Box and make it 150 by 5100 by 100
From this make a static mesh called SM_Boundary
Create a Text Render, drag it onto the scene and drag it 90 degrees down and 180 degrees around
Change its World Size to 820, its Horizontal Alignment to Centre and Vertical Alignment to Text Centre
Type "0" in Text
Hold Alt and drag it across to duplicate it
Name one P1_Score_Text and the other P2_Score_Text
Right click in Content and create 5 new folders, then move all assets to the corresponding folders
Folders:
Go into Blueprint, right click and create Blueprint Class, then create a Pawn and name it BP_Paddle_Pawn_Right
Enter the Viewport, go to Add Component - Static Mesh, then choose Paddle _Mesh
Enter the Static Mesh tab, click None and change it to SM_Paddle
Double click on the Static Mesh
Click Collision and choose Box Simplified Collision
Look to the right hand side window
Switch on Simulate Physics and switch off Enable Gravity
Set Linear Damping to 10.0
Compile
Go to Edit - Project Settings - Input
Create a new Axis Mappings called P1_MoveUp
Tab down and create Up (1) and Down (-1)
Enter Paddle Pawn
Right click, make P1_MoveUp and drag off it to create MakeVector
Right click, make AddForce(Paddle_Mesh) and connect this to Event Tick
Right click, MakeVector and connect to Force
Right click, type * and enter 30,000
Enter Blueprint, RC, create BP Class - Game Mode and name it BP_PongGameMode
Change default to Paddle_Pawn
Go to Edit - Project Settings - Input - Maps and Modes
Change the Game Default to P1_Main and Default Game Mode to BP_PongGame
CAMERA
Search for Camera, select unlit and drag onto the workspace
Drag it 90 degrees down so it is facing the board
Then pull it up so the entire boards fits in the shot
Click on the camera, click blueprints then open level blueprint
Right click and create Reference to Camera Actor (must have context sensitive on)
Right click and create Set View Target with Blend (must have context sensitive off) and plug this into Event Begin Play
Create Get Player Controller and plug into Target
Plug Camera Actor into New View Target
Change it to an Orthographic camera (camera settings - perspective)
Go into Materials, right click and create a custom material, name it M_UnlitWhite
Go into this material, hold 1 and left click, change the value to 1.0
Plug this node into Emissive Colour
Turn the shading model to unlit
Return to main page and open Static Meshes
Change the World Grid material to UnlitWhite
PADDLE
From Event Tick create an Add Force node
Get P1_MoveUp target (return value) - X (10,000,000) - Make Vector (X) - Add Force (Force)
Go to File - New level - Empty level
Create a Box from the BSP category
Make its location 0.0, 0.0, 0.0
Use the image template and drag it into context
Go to File and Save all as P1_Main
Go to Edit - Project settings - Maps and modes
Set the Game default map and Editor startup map to P1_Main
Right click in content, create new material and name it M_Reference
Double click on the material
Hold T and left click
Name the texture, PongTexture
Drag the white pin into Emissive colour
Change the shading to Unlit
Apply
Drag reference onto box
Change the Y to 1290 and X to 900
Go into M_Reference, right click and add a BoundingBoxBased_0_1_UVW
Drag the result out and create a Component Mask
Then drag out from this and create a Custom Rotator
Hold 1 and left click to create a numeric value
Make the value 0.75 and connect this to the Custom Rotator
Return to the P1_Main and create another BSP Box
Make its dimensions 100 by 100 by 100
Right click on this box and Create Static Mesh
Name this SM_Ball
Create another BSP Box and make it 350 by 100 by 100
Create a static mesh from this and name it SM_Paddle
Create another BSP Box and make it 150 by 5100 by 100
From this make a static mesh called SM_Boundary
Create a Text Render, drag it onto the scene and drag it 90 degrees down and 180 degrees around
Change its World Size to 820, its Horizontal Alignment to Centre and Vertical Alignment to Text Centre
Type "0" in Text
Hold Alt and drag it across to duplicate it
Name one P1_Score_Text and the other P2_Score_Text
Right click in Content and create 5 new folders, then move all assets to the corresponding folders
Folders:
- StaticMeshes
- Levels
- Textures
- Materials
- Blueprints
Go into Blueprint, right click and create Blueprint Class, then create a Pawn and name it BP_Paddle_Pawn_Right
Enter the Viewport, go to Add Component - Static Mesh, then choose Paddle _Mesh
Enter the Static Mesh tab, click None and change it to SM_Paddle
Double click on the Static Mesh
Click Collision and choose Box Simplified Collision
Look to the right hand side window
Switch on Simulate Physics and switch off Enable Gravity
Set Linear Damping to 10.0
Compile
Go to Edit - Project Settings - Input
Create a new Axis Mappings called P1_MoveUp
Tab down and create Up (1) and Down (-1)
Enter Paddle Pawn
Right click, make P1_MoveUp and drag off it to create MakeVector
Right click, make AddForce(Paddle_Mesh) and connect this to Event Tick
Right click, MakeVector and connect to Force
Right click, type * and enter 30,000
Enter Blueprint, RC, create BP Class - Game Mode and name it BP_PongGameMode
Change default to Paddle_Pawn
Go to Edit - Project Settings - Input - Maps and Modes
Change the Game Default to P1_Main and Default Game Mode to BP_PongGame
CAMERA
Search for Camera, select unlit and drag onto the workspace
Drag it 90 degrees down so it is facing the board
Then pull it up so the entire boards fits in the shot
Click on the camera, click blueprints then open level blueprint
Right click and create Reference to Camera Actor (must have context sensitive on)
Right click and create Set View Target with Blend (must have context sensitive off) and plug this into Event Begin Play
Create Get Player Controller and plug into Target
Plug Camera Actor into New View Target
Change it to an Orthographic camera (camera settings - perspective)
Go into Materials, right click and create a custom material, name it M_UnlitWhite
Go into this material, hold 1 and left click, change the value to 1.0
Plug this node into Emissive Colour
Turn the shading model to unlit
Return to main page and open Static Meshes
Change the World Grid material to UnlitWhite
PADDLE
From Event Tick create an Add Force node
Get P1_MoveUp target (return value) - X (10,000,000) - Make Vector (X) - Add Force (Force)
Monday, 25 April 2016
Problems and Progress with my Pong Game
My text has been turned to white boxes because I didn't have permission to save the texture. Also I couldn't get the ball to bounce off either boundaries as it gets stuck at the top and just passes straight through the bottom.
I managed to solve all these problems with the help of a friend, I just deleted my old text and created new ones. For the ball I locked its Z and Y positions which meant it would actually bounce off the boundaries and paddle.
I managed to solve all these problems with the help of a friend, I just deleted my old text and created new ones. For the ball I locked its Z and Y positions which meant it would actually bounce off the boundaries and paddle.
This is the state of my Pong game so far. I have both the player and AI working, however the text does not count up as each player scores.
I now have the scoring system working and the game will now reset.
Thursday, 14 April 2016
Unreal Engine tutorial
This is the workspace within Unreal Engine, it has a variety of views including modes, details and content. In order to test your game you press play and then to exit you press 'esc'.
This is the Unreal Editor in which you can edit all the components for your game. To move around the workspace you can use right click to drag and the mouse wheel to zoom in and out.
Within the editor are tools such as nodes, pins and links. Red nodes represent events and blue nodes represent functions. Links are used to create and join nodes to one another along with pins that let you know whether it is an input or output. To create a new node you right click in a blank space and then search for the function you wish to use, for example here I have used the event of 'T' being pressed. I have then created a link from the 'pressed' pin to a 'print string' node. This will allow text to be displayed on screen when 'T' is pressed. I also added another 'print string' node for when 'T' is released.
Wednesday, 13 April 2016
Video Game Target Audience Primary Research
More males than females said they played games on their browser and of those people, the average time spent playing games on their browser was 3 hours (male) and 2 hours (female).
Subscribe to:
Posts (Atom)