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)


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:

  • 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)