Yearly Archives: 2016

Heart of The Swarm, Impressions

Recently I’ve been playing Starcraft 2 Heart of The Swarm, a military science fiction real-time strategy video game developed and published by Blizzard Entertainment. The following are my notes:

There be spoilers ahead, read at your own peril!

Like

  • The Hyperion mission! Having to manage one unit with a continuous stream of battling non playable characters takes away the added task of micro management and lets me enjoy a feeling of ‘distinctiveness’

  • How ‘cutscenes’ meld into gameplay e.g when saving Raynor, Kerrigan’s Leviathan arms smash into the prison ship which then transitions into the game level

This slideshow requires JavaScript.

  • Evolution missions really helps players understand how an evolution works and how to use it

Dislike

  • After Kerrigan’s battle with Narud, I felt she recovered too quickly. It drew from the gravity of the fight. She should have been in an injured state for the Leviathan section where characters could comment on her fight. Then by the next mission having recovered, there would be a contextual piece of dialog about it

Continue reading Heart of The Swarm, Impressions

For Rent, 48 Hour Assignment

Introduction: As part of Visual Story at Carnegie Mellon’s Entertainment Technology Center we created a 3-4 minute video with a given main character and conflict. We created For Rent, choosing a mysterious stranger and don’t touch anything.

Time: 48 hours |  Roles: Director – Writer Producer Team Size: 5

My Contributions:

  • Wrote the original script
  • On scene helping with lighting
  • Arranging equipment and props
  • Conducting group meetings, and arranged props
  • Directed shots

Dyscourse, Impressions

Recently I’ve been playing Dyscourse, a survival adventure video game developed and published by Owlchemy. The following are my notes:

There be spoilers ahead, read at your own peril!

Like

  • Effective non playable character ‘humanization’
    • Text – One character makes a reference to the main players clothes
    • Actions – Passing around of water bottles scene

This slideshow requires JavaScript.

  • Warm colorful storybook art style
  • Characters reflect ‘character’ through facial expressions, walking style, and speech which conveys the characters emotion
  • ‘Torchlight Talk’ mechanic, it makes sense that the fire goes out over time making talking limited

  • Time based events with clearly conveyed state e.g combo sequence required to defeat boar

  • Color coding for character dialog messages

  • Slight shine on wooden planks to attract players attention

  • Choice confirmation points that give a player a chance to again consider

  • Rewind feature, which allows player to go through the story again and try get the outcome they actually desire

Continue reading Dyscourse, Impressions

The Chain, Visual Story Music Video Assignment

Introduction: The Chain was our final music video coursework assignment for Visual Story at Carnegie Mellon’s Entertainment Technology Center.  Our film won a Bronze Telly Award in the student category.

Award: Bronze Telly Award for Student Category

Development

Our final video was a highly streamlined effort. We first conceptualized an idea based on Ingrid Michaelson’s song The Chain. Our artist then created storyboards, and using those boards we created a rough ‘film storyboard’ with music.

Next we faced location scouting, in this regard the issue we encountered was not having a pure white background as per our storyboard. We adapted to this by finding a suitable ‘black out room’ to provide an all black background. Meanwhile we made a shot list from the rough storyboard that we had created.

the_chain_shotlistWith a shotlist, and locations to shoot we purchased necessary props, and went about filming on thanks giving.

As usual on set we changed the storyboard in various ways such as:

  • Thematic use of red
  • Inclusion of shots such as limited space, panning techniques
  • Use of props such as the teddy bear
  • Lighting e.g. using a sparkly dress to attract attention

After fifteen hours of filming, several hours of editing, the film was complete. It was well received by our peers and professors.

Finally we submitted The Chain to the student category of the Telly Awards.

the_chain_poster
The Chain Poster by Yong Jie Wong

Missed Connection, Visual Story VR Assignment

Introduction: Missed Connection is our virtual reality team coursework assignment for Visual Story at Carnegie Mellon’s Entertainment Technology Center.

A special thanks to the folks over at Carnegie Library for letting us film there + being awesome!

Time: 1 Week | Team Size: 5 | Role: Producer – Director

My Contributions: I was involved in various aspects of the project, primarily:

  • Location scouting.
  • Arranging equipment, props, and conducting team meetings.
  • Building our second Lego storyboard.
  • Directing our final film.

Development

Learning from our last assignment we went into this project prepared to plan properly. We began with an idea of a love story in the library. Following this we created a Lego storyboard, and script.

We then scouted libraries around Pittsburgh, ultimately finding The Carnegie Library of Pittsburgh.

Continue reading Missed Connection, Visual Story VR Assignment

Pocket Legends Ability System

Pocket legends is a multi-platform mobile massively multiplayer online game where players play with a variety of classes which have unique abilities. For this exercise I will be analyzing the ability system in Pocket Legends with a focus on the player vs environment (PvE) tank system for the warrior class.

Classes

In Pocket Legends each class has a role they perform, one such class is the warrior which suits the role of ‘protector’. During gameplay the warrior attracts the attention of enemies, and takes the majority of incoming damage. This role is referred to as being a ‘tank’.

To enact the role of tank, the warrior has an ability system. A tank that is unable to hold the attention of enemies will most likely result in the death of the party. This causes dissatisfaction with the game, which leads to lower player retention. It is therefore important that this system functions well.

Abilities

The fundamental building blocks of the ability system are the abilities. Warriors have unique abilities they can perform such as Vengeful Slash which has usage requirements, and effects when used. These usage requirements are mana, cooldown, and player level which are the primary variables that control this system.

When an ability is enabled it can be cast, and when cast goes into a ‘cooling’ time period. When cooling the ability cannot be used until the cooling period is over. Once the ability has cooled down, the player is able to cast it again. This process repeats as long as the player is able to cast the ability. Disabled abilities cannot be used at all due not meeting usage requirements such as lack of mana, character being dead etc.

Enabled, Cooling, Disabled

We can represent this loop with the following diagram.

Continue reading Pocket Legends Ability System

DinoRancher – Build Virtual Worlds, Round 5

Introduction: Developed on the Oculus Rift with PS Move, DinoRancher had guests play atop a Triceratops armed with an electric lasso. The goal of the guest was to shepherd a herd of Stegosaurus to safety, protecting them from danger.

Platform: Oculus & PS Move | Time: 2 weeks | Role: Programmer – Designer – Producer | Team Size: 5

Story:  You are a DinoRancher armed with your electro lasso and trusty trike. Travel across the desolate wasteland, and protect your herd from those nasty predators!

Design Challenges:

  • Herd behavior
  • Enemy types
  • Environment design
  • Integration of the PS move into Virtual Reality
  • Trike movement system

Design Goal: To create an experience that made the guest feel like a cowboy travelling through the desert protecting a herd of dinosaur from predators.

My Contributions: As producer I arranged meetings, delegated pending tasks, and contributed creatively. In addition as a programmer I was responsible for setting up the games environment which included, asset preparation, level design and developing agent behavior.

DinoRancher was featured at The Forbidden Forest in The Entertainment Technology Centers end of semester festival!

Festival Footage

NoseDive – Building Virtual Worlds, Round 4

Introduction: Developed on the CAVE with Makey Makey, NoseDive had guests play in the CAVE environment using airplane controls we constructed using Makey Makey.

Platform: CAVE, and Makey Makey in Unity 3D | Time: 2 weeks | Roles: Programmer – Game Designer – Producer | Team Size: 5

Story: Our game had our guests take the role of make shift pilots thrust into having to fly a plane to safety through a terrible storm when the captain has become incapacitated.

Design Challenges:

  • Adapting to the CAVE environment.
  • Creating an authentic flight simulator experience with an easily understand story.

Design Goal: To create an authentic story of saving the day through the game we created.

My Contributions: For NoseDive I was producer, designer and programmer. Being producer involved scheduling and coordination of our teams artist, programmer and sound designer. In addition I assisted my fellow programmer with environment and Unity prop setup.

Continue reading NoseDive – Building Virtual Worlds, Round 4

A Playroom – Building Virtual Worlds, Round 2

Introduction: A Playroom was a developed on the HTC Vive. A virtual reality device that allows a guest to walk around a calibrated virtual reality space with hand held controls.

Platform: HTC Vive in Unity 3D | Time: 2 weeks | Roles: Designer – Producer | Team Size: 5

Story: The setting of the game is in a play room where the guest encounters a ghost boy who needs help in-order to ‘move on’.

Design Challenge: To design a game for naive guests, conduct play tests, and make three predictions of what the guest will do all whilst having the guest ‘feel free’.

Design Goal: Round 2 of Building Virtual Worlds was indirect control round. This required we build an experience that felt free, and was intuitive enough for a guest to play from start to finish without any instruction or guidelines.

My Contributions: I analyzed, and designed the guests interactions as well as wrote our main non playable characters dialogue. In addition I conducted play tests which gave us invaluable feedback which we used to further develop the experience.

Development

Interaction Design

I focused on interaction development by first analyzing what we currently had. From that I wrote a draft story design which was a rough version of what we would aim for. Our current gameplay was clearly a linear story experience, and I believed we could achieve a greater sense of freedom by allowing a player a choice of what game to play.

From this notion I created two different interaction models.

a-playroom-interaction-general
Interaction Analysis – Development Diagram

I then met with the team, presented my two plans. We choose plan 2 which I further developed into a more detailed version.

a-playroom-interaction-map-detailed
Interaction Analysis – Component Breakdown

Audio would play a vital aspect in driving this interaction model therefore I worked with our sound designer on a script for the game which we iterated over based on feedback (script documents).

Playtesting

Once the various audio cues, and interaction model was implemented we went about play testing the game. I conducted play tests with over fifteen naive guests which included an audience of fellow students, professors and non-students. This feedback was then used to polish elements of our experience.

a-playroom-playtesting-form
Sample Play Test Feedback Form

In conclusion we correctly predicted each of the three interactions, and the guest understood our story, all with no guidelines or instruction from us.

Full Story

We began our project with brain storming, and research into the platform on which we were developing. We came up with several ideas including:

  1. Darkness Use light to guide the guest through a street.
  2. Space Exploration Explore the universe, and pick a planet to colonize.
  3. Dreaming – Flying a plane, flying elephants, flowers turn to buildings (freedom from constraints).
  4. Empty Room – Furniture place (guide them to a correct place).

Having difficulty grappling with the concept of ‘freedom’ we spoke to a member of The Entertainment Technology Faculty Jesse Schell. After meeting with Jesse Schell we honed in on an idea of a ghost boy which we would help in some manner through objects around him.

Next we thought about location, which was first a storage room due to it making sense to have many object, we then changed to a play room as it offer the potential for a ‘warmer’ environment for guests to feel comfortable.

After creating a basic room with a simple number of interactions which included:

  • Playing catch.
  • Place a train on the train track.
  • Hide & Seek.
  • Give a hug.

We had a prototype ready for interim.

Interim

After interim our two main points of feedback were

  1. Make the boy and game generally less ‘creepy’.
  2. To develop our interactions.

Less ‘Creepy’

Point 1 was a significant design challenge which we tackled by investing time into solving by:

  • Making our main game character look more human like.
  • Soothing music.
  • A warm game atmosphere.
  • A friendly, light and clear character voice.

Interaction Design

I decided to tackle point 2 by first analyzing what we currently had, then writing a draft story design which was a rough version of what we would aim for. Our current game play was clearly a linear story experience, and I believed we could greater the sense of freedom by allowing a player a choice of what game to play.

From this notion I created two different interaction models.

Interaction Analysis – Development Diagram

After meeting with the team, presenting the two plans and convincing them of the need to carefully design the experience, we choose plan 2 which I then further developed into a more detailed version.

Interaction Analysis – Component Breakdown

Implementation

Audio played a vital aspect in our experience so I worked with our sound designer on a script for the game which we iterated over three times based on feedback (script documents). In addition to audio we used a number of other techniques including:

  • Lighting – To direct the players focus.
Meeting the Boy
  • Color – Brightly contrasting objects such as with the yellow train on a blue chair, and a red book on a beige floor caught the players attention.
Train & Puzzle
  • Uniformity – A suggestive picture fragment was placed in the frame, and other similar looking puzzle pieces were placed around the level.
Puzzle Placed

After implementing these features with a new interaction model we went about play testing the game. We conducted play tests with over fifteen naive guests which included an audience of fellow students, professors and non-students.

Based on the feedback we received we continued to polish elements of the game. The end result of our work was that not only did we accurately predict each of the three interactions, but the guest completely understood the story behind our world all with no guidelines or instruction from us.

This slideshow requires JavaScript.

Multi

Introduction: Multi is a game built on Game Maker for Windows using Game Makers scripting language. Players control a character who traverses a series of levels in a platformer style game play.

Platform: Windows | Time: 3 weeks |  RolesProgrammerGame Designer – Artist – Sound DesignerTeam Size: 1

Design Goal: The primary ‘design goal’ with this project was to further my design skills whilst practicing level and mechanic design.

Design Challenges:

  • Creating levels that were interesting to play with the mechanics I created.
  • Difficulty design.
  • Teaching players how to play.
  • Audio which included, character, and environment sound design.

My Contributions:

  • Programmed the code of the game (adapting some freely available physics code). I completely designed the game.
  • Made the majority of art assets (character art and animation taken from a game maker tutorial)
  • Collected audio that suited the game play from free sources (credits bundled with Multi).
  • Conducted play testing with younger audiences which I believed would be interested in the game.

Download:

Follow the link below to download a .zip file containing the game. When the download is complete, unzip the file then have a look the read-me and, then run the .exe file to play the game.

 Download Multi!

Continue reading Multi

Jam-O-Draw – Building Virtual Worlds, Round 3

Introduction: Jam-O-Draw is a game we created in the lightning round (single week round) of Building Virtual Worlds.

Platform: Jam-O-Drum | Time: 1 week | Roles: Producer – Game Designer – Programmer

Story: Jam-O-Draw was inspired by the classic etch-a-sketch game.

Design Goal: We wanted to create a multiplayer artistic experience with a fascinating reveal.

Design Challenges:

  • Adapting to an unfamiliar platform.
  • Creating an aesthetically pleasing experience using visuals and audio
  • Having the user interface during the experience be responsive and informative.

My contributions: My primary role on this project was as producer which involved making creative contributions, arranging meetings, coordinating our artists, programmers and sound designer to create the game in a timely manner. My programming responsibilities included assisting my fellow programmer with development, and preparing the game environment and assets.

Jam-O-Draw was featured at The Forbidden Forest in The Entertainment Technology Centers end of semester festival!

Festival Footage

Champion Designs – League of Legends

Whilst playing League of Legends I hosted a review center on EU West, and with that experience created a number of champions.

I did not create the following art, they were used as reference images during the design process.

Development

Design Goals

Each champion had distinct design goals which drove its creation.

Euler

Euler
Euler

  • Tank that absorbs his allies pain (relevant when considering his lore).
  • A sand Golem, so integrating sand into his design was vital.

Hungarfen

Hungarfen
Hungarfen

  • Biological experiment. A mutated monster that creates and’s spreads spores.

Chowder

Chowder
Chowder

  • A tank that utilized stealth.

Continue reading Champion Designs – League of Legends

Seize the Sky – Building Virtual Worlds, Round 1

Introduction: Seize the Sky was built during Building Virtual Worlds at Carnegie Mellons Entertainment Technology Center. The world was constructed using Oculus Rift, and Leap Motion. Using these technologies we put our guest into a virtual reality space with an ability to use a natural interface in our world.

Story: A mighty giant heads towards a town with murderous intent. A country side boy notices, and cries to Zeus for help to defeat the giant to save the city. You are Zeus, save them all!

Platform: Oculus Rift + Leap Motion in Unity 3D | Time: 2 weeks |  RolesProgrammer – Game Designer

Design Goal: Our design goal with Seize The Sky was help character A (the boy) who is afraid of character B (the giant).

Design Challenges:

  • Incorporating a satisfactory use of Leap motion.
  • Achieving our a sense of character A is afraid of character B.
  • Level design.
  • Game-play design.

My Contributions: As the lead programmer on Seize The Sky I made large contributions to the code base for this project. I also took an active part in the design process with working with the team to develop various aspects including game play, and level design.

Development

Iteration 1


The development process started with being assigned teams. In our first team meeting we made clear our skills, started brainstorming ideas, and kept good development processes in mind.

This slideshow requires JavaScript.

During brainstorming we tried using several appropriate methods, such as gesture centered brainstorming (due to our use of Leap Motion). Finally we had five initial ideas:

  1. Help mend relationship between characters.
  2. Play piano to make baby sleep.
  3. Use light to guide a character home.
  4. Keep animal safe growing to adulthood.
  5. Hold characters hand to guide them.

This slideshow requires JavaScript.

With our initial ideas we further boiled them down to three concepts with the following reasoning:

  • Concept one was hard to conceptualize compared to our other ideas which seemed simpler and more clear.
  • Concept five could be incorporated into concept three.

Creating sketches of each concept we then sought out the advice of our professor Jesse Schell.

bvw_round_1_initial_three_concepts

With Jesse Schells feedback we went with concept C, because we wanted to explore squeezing in Leap Motion.

bvw_round_1_post_meeting_notes

We then began further conceptualizing the idea with sketches, and research into the capabilities of Leap motion and Oculus.

This slideshow requires JavaScript.

With this in mind we began assigning tasks to complete, considering game play, and used a scrum board to assist us in tracking tasks.

This slideshow requires JavaScript.

On the technical side we used a NavMesh, and simple A.I. to run the behavior of the Hunter and Deer. The behaviors of the two agents were essentially:

  • The deer always moved to nearest tree that has an apple.
  • The Hunter patrolled around fixed points, and if it came close enough to the deer it began chasing it.

The result of our hard work was the following.

We then received feedback at interim, which sadly wasn’t good…

Iteration 2

Continue reading Seize the Sky – Building Virtual Worlds, Round 1

solo-editing-image

Solo Editing – Visual Story Assignment

As part of our Visual Story course at Carnegie Mellon’s Entertainment Technology Center we were given a solo editing assignment which required us create a video given professionally shot editing software. The following is my video. The music used is Denial Revisited by The Offspring.

Task

Our task entailed selecting footage from a number of videos, namely:

  • TN Parkour: First experience with editing & storytelling.
  • Stranger at the Door: Easy but more storytelling elements.
  • Anesthesia: More story(scary) with effects.
  • Unleashed: More challenging with Green Screen, VFX.

I chose to edit TN Parkour. With this video I attempted to create a music video of with cuts at beats, and attempted to tell a story of friends meeting up to do Parkour and ultimately feeling some sense of accomplishment at the end.

Improvisational Acting – Improvised Portraits

During our first session of Improvisational Acting at Carnegie Mellon’s Entertainment Technology Center one of our tasks was to work together with a partner. The task was to create improvised portraits, and name them.

The rules to create these portraits was simple. Each person was given a different colored pen, and was allowed to make single strokes one after another. Any hesitation resulted in having to stop drawing, and choose a name. The name was created by taking turns writing a single letter.

The following is what Charlie and I created.

Improvised Portraits

This slideshow requires JavaScript.

We very much enjoyed making these memorable characters! Try out this exercise yourself sometime, its loads of fun!

Building Virtual Worlds – Round 0

Building Virtual Worlds at Carnegie Mellon University starts with each student being assigned a role in Round 0. Since I have a Computer Science background, my role was that of programmer; this entailed I build a world that employed a number of basic features in Unity, such as:

  • Loads models and textures.
  • Play animations.
  • Use intervals, lighting, collisions, and multiple scenes.

The world can be downloaded here.

Concept

When considering the world, what I noticed was the amazing talent of the artists and musicians around me. It occurred to me what a shame it would be for their work not to be seen. I decided then that my virtual world would be a gallery of other peoples work. My first task was then to coordinate of assets with artists, and sound designers.

Creation

Artists were initially required to create animated lunchboxes, then dragons, and sound designers were required to create music for a clip of game play from a previously made world. I decided to meld the two by attaching audio sources to several of the artists assets that would constantly play music made by our sound designers.

This slideshow requires JavaScript.

Continue reading Building Virtual Worlds – Round 0

Visual Story – Space

After completing our first assignment our next involved exploring a different aspect of Visual Story. Space.

Space in visual story can be broken down into four categories:

  • Ambiguous
  • Flat
  • Limited
  • Deep

Ambiguous Space

Ambiguous space creates a feeling of confusion in the viewer. It can be created with the following elements:

  • Lack of movement.
  • Unfamiliar shapes.
  • Confusing tonal and textural patterns (camouflage)
  • Mirrors and reflections.
  • Objects of unknown size
  • Disorienting camera angles.

This slideshow requires JavaScript.

Continue reading Visual Story – Space

Marshmallow Challenge

As part of Building Virtual Worlds we were tasked to complete the marshmallow challenge.

The marshmallow challenge has teams build a tower out of a number of materials:

  • 20 sticks of spaghetti.
  • One yard of tape.
  • One yard of string.
  • One marshmallow.

We completed the challenge with a height of 29 inches, and though our tower may not have been the tallest when measured. At the end of the day it certainly was the tallest left standing.

marshmallow-challenge