Monday, December 9, 2013

FINAL POST

This will be my final post to this blog.  I've enjoyed my semester learning the details of game design and found the process of actually making a game both fun and tiresome.

Below you will find a link to the game document for my game (hosted on Google docs) as well as a link to download the zip file containing the blender file and its dependent files for our game.

Game Document:
https://docs.google.com/document/d/1tScowUwJV6pFH8_8TIFo65nIbEvefitWhc4VBAGNHM4/edit?usp=sharing

Game Files:
https://drive.google.com/file/d/0B5Jp7kvUIR0JWDJaOEtxVUZ0WTQ/edit?usp=sharing

Sunday, November 24, 2013

Task Assignment: 11/22-END (UPDATED)

1) Create newspaper item that floats to the camera when the user presses a button and float back to the ground when the player presses the same button.
I created the newspaper (with a blank newspaper template, the design of which I leave to my teammates).  The newspaper floats up to the players face (steering actuator) and stays there (parenting actuator) when the player is close to the newspaper (near sensor), facing the newspaper (ray sensor), and presses 'e' .  The player can look up and down the length of the newspaper to read it.  When the player presses 'e' again, the newspaper disappears.

2) Create a main map
I created a main map but since we were not going to use most of the locations on this map, I decided to just connect the areas that we had completed directly.

3) Connect all the areas that have been created together so that the player can move seamlessly throughout the "game".
This was completed.  The main menu leads to a "transition" menu which shows  a quote and plays a car crash sound before transporting you to the forest, at the end of the forest you go to the sanctuary, at the other side of the sanctuary you go to the church, and the end of the church you find survivors and are transport back to the  improved sanctuary.  You can go backwards in all of these areas (go back to the previous "level". 

4) Find a updated dwelling to include in the sanctuary for after people are found in the first level.
Actually just hid the tents from the original sanctuary and only displayed them after the first level rather than  making an entirely new dwelling.

5) Create a basement in the first level out of which a text box will come out indicating that you have found survivors (without actually seeing the survivors).
Done.  Actually a note wrote on the wall in red letters instead of having a text box.  This plays more to the theme of the game and gives some doubt as to whether the survivors actually exists.

6) Create the spawn points for the ghastly character in the main map.
Limited the enemy character to the end of the "1st level" to make it more dramatic.  As you step into the church, the creature appears and starts moving towards you.  If you don't swing and kill it at the right time, it kills you and the game is over.

Task Assignment: 11/15-11/21 (UPDATED!)

For this week I will

1) add logic to the smoke creature to make the creature disappear when it collide with the players weapon.

I was able to get this logic working in my blender file but I found that the smoke monster would collide with the the players weapon and disappear even if the player did not intentionally swing the weapon (since the weapon is always in the scene).  So I added an additional sensor to check if the player has clicked pressed the swing button as well.

2)  add logic to have the smoke creature track the player

Added logic to the smoke monster to have it follow the player.  The smoke monster will spawn at key points in the map when the player gets close enough and follow the player until it attacks the player or the player attacks it.

3) Poster
I created one of the posters that we presented to the class
https://drive.google.com/file/d/0B5Jp7kvUIR0JdXFFblJqTF9VUHM/edit?usp=sharing
and created a concept for a new poster with less words and more of a visual focus which will be in the style of a newspaper.


Thursday, November 14, 2013

Task Assignment: 11/8-11/14 (UPDATED!)

By Thursday I will have the following completed:

1) I will add a more randomized spin to the smoke sphere
I added python code to change the spin velocity by a randomized value (positive and negative) and added spin to multiple axes so that the smoke does not create the illusion of leftward movement of the player. (This creates the problem of the player being able to see the poorly mapped texture spots but it is very brief.  I will test with world environment to see if the effect is noticeable (and perhaps switch back to z-rotation only).

2) Attach the weapon swinging animation to the player
I attached the arm swinging animation I made last week to my character.  I physically placed the arm next to the player in the scene and called the animation when the player clicked the left mouse button.  I ran into a problem where after pressing the button several times the games slows down significantly (the profile shows a large spike in 'Physics' but the arm and weapon are set to 'ghost' so they shouldnt be interacting with any other objects.

Monday, November 4, 2013

Homework 14: State

 This first state diagram describes the state of the player's health bar, smoke protection sphere, and heart rate while in the world map.  You can see that initially, the players health is at full and their heart rate (indicated by an audible heart beat) is nonexistant.  Since the size of the sphere is directly proportional to the health remaining, the sphere radius is at its maximum at this point.  Once the player enters the world map, the health, sphere size, and heart rate are set to particular values.  The health (and sphere) will decrease at a constant rate as the smoke creeps in on the player (increasing the heart rate) or if the player is attacked.  The health can be raised (increaing the size of the sphere and decreasing the heart rate) if the player finds a "health booster".  Once the health reaches a minimum threshold, the sphere collapses, the player is consumed by the smoke and thus their heart rate stops.  The palyer is dead and the game is over.  All attributes are reset once the game is restarted.  There could also be the possibility of reviving, in which case the attributes would return to some level.


This state diagram describes the movement and sound attributes of the smoke monster which attacks the player when they are in the world map.  The smoke monster (seen in my previous post) starts silent and hidden until it is time to appear.  At this point it begins moaning and circling around the player's protective sphere.  When it is time to attack, it begins screaming and enters the sphere, heading towards the player.  If it hits the player, then it starts laughing and exits the protective sphere.  If it is instead hit by the player, it begins crying and slowly disappears.  Either way, the creature then disappears and reenters the initial state of silent and hidden.

Sunday, November 3, 2013

Task Assignment: Week of 10/31 - 11/7 (UPDATED!)

By Thursday (11/7)  I will have completed the following:

1)  Create a menu system for our game.
11/2 - I tried getting screencasting to work for this example but my computer wasn't cooperating.  I created a simple menu system to test out a few scenes that we have created for our game.  When you mouse over the box in each menu item, the box and text get larger to indicate that this item will be executed if you click the left mouse button.  Moving your mouse out of the box returns the sizes to normal.  The main menu has one option "Start game" which results in changing the scene to the submenu (pictured below).
Choosing these items takes you to the scene indicated by the name of the button.  You can move around in the first two of these scenes. The third demonstrates how the smoke will function in the world map.

2)  Create a 'enemy' fog creature
11/3- I made this smoke creature using two smoke texture that I created in GIMP on a uv sphere (body) and plane (ambient smoke).  The UV spheres that represent the eyes will glow but I can't figure out how to do.  I'm also having trouble getting the plane smoke to mesh with the sphere smoke (hence the visible orb).  I'm not certain if I will address this or leave it as a "corporal force" of the creature.

3)  Create animation for weapon swinging and picking up objects.

Wednesday, October 23, 2013

Task Assignment: Week of 10/24-10/31 (UPDATED!)

For this week I will/have accomplish/ed the following tasks by Thursday (10/31).  I will update this post as I complete tasks.

1. Add movement functionality to the character using the script included in mouselook.py 
As of 10/30-  Was able to get dynamic movement working with MouseMove.py's provided demo (except crouch feature doesnt work).  However, when I to replicate this on my own character it does not work.  This might be due to the increased complexity of my character. I will try making a simpler character and see if that works.
2. Combine parts 2&3 of last week's tasks (sphere size changing and sphere smoke)
10/30-Combined sphere size changing scripts and smoke textures from last week's tasks.  Ran into some problems because sphere size was not reset to 1 (ctrl-A), but works great.  Added a cube to the scene to demonstrate that you can see through the smoke.  The video above shows the sphere sizer script in action (the sphere changes sizes in accordance with the current value of the 'size' property seen in the debug window).

3. Make another attempt at a more cohesive smoke texture.

10/29- Used a tutorial (http://www.youtube.com/watch?v=ZUYbj4x4OxY) to make a seamless smoke image. The image on the left of the texture meshes with the image on the right (same with top and bottom).  I also had to adjust the uv map to have a more square layout so that it takes advantage of the textures seamlessness.  The result only shows slight distortion at top and bottom of the sphere (and the bottom will never be visible).

Tuesday, October 22, 2013

Homework 11: Chapter 15&16

Chapter 15
1. A goal with no obstacles is not worth pursuing.  
This is true.  However, its difficult to come with an example of such a goal since many things can be considered obstacles.  It could be an enemy which prevents you from moving on, or even simply having to walk a great distance.  Regardless, goals are not rewarding if they are so easily obtained.
2. What is the relationship between the main character and the goal? Why does the character care about it? 

The main character is trying to find her son which is the main goal of the game.  Therefore the reason she cares about this goal is pretty self-explanatory.
3. What are the obstacles between the character and the goal? 

Obstacles that hinder the character reaching her goal includes the fog which threatens to consume her, the fog monsters which hinder ability to fend off the fog, puzzles and tasks that she must complete in each "level", and the shar size of the town and number of survivors other than her son that also need to be saved.
4. Do the obstacles gradually increase in difficulty? If yes, how? 

The tasks and puzzles performed in each "level" would presumably increase in difficulty as the game progresses.  However, because the game we are producing will only be a fraction of what we imagine the whole game could be, this effect may not be noticeable in our project.
5. Great stories often involve the protagonist transforming to overcome the obstacle. Does your protagonist transform? 

You can definitely say that our protagonist transforms.  Before the game starts she is just a mother visiting her son but she is quickly thrust into a mysterious situation and must quickly adapt and gather the courage to face this unknown force and find her son.
6. How is the game world simpler than the real world?

The setting of our game is post-disaster with a fog that has trapped people and crippled movement and communication.  There is no infrastructure to this city, people aren't going about their daily lives at work and with their families.  Everyone is just trying to survive, huddled in run-down building awaiting to be rescued or in the town center helping to rebuild civilization.
7. What kind of transcendent power do you give to the player? 

The transcendent power that the player gets in our game is willpower.  The courage to explore the unknown with the courage and conviction of the mother protagonist in search of her son.  Most players, given the situation in the town, would probably normally behave in the role of the townspeople (huddled together, waiting to be saved) however, the player is thrust in the situation where they have no choice but to tackle the fog head on.
8. What is the weirdest element in the game story? 

The ward item is the strangest element of the story, with its history of bringing the town to prosperity and its strange ability to ward off the fog.
9. How do you ensure that the weirdest thing does not confuse or alienate the player? 

The history of the ward element is explained through discovery of newspaper clippings, audio clips, conversations, etc... which eventually culminate in revealing the nature of the ward and its relations to the fog and disaster event.
10. Will the players be interested in the game story? Why? 

 Yes, because our story has a subtle mystery genre, players will be interested in finding out the history of the game and will hopefully wish to rescue the protagonist's child as much as she does.



Chapter 16

1. In what sense does the player have freedom of action? Does the player "feel" free at these times? 
While navigating the main map, players are free to go where they would like within the confines of the map which will most likely be defined by impassible objects (mountains, buildings, rubble etc..) so they will feel free.  Players are also free to move around freely within levels in natural ways (including jumping, walking, and perhaps crouching).
2. What are the constraints imposed on the players? Do they feel constrained? 
While in the main map, players are constrained in their ability to see by the fog pressing in on them and in the time they can spend exploring before the fog consumes them.  They are meant to feel this constraint as well since these are elements designed to force emotion (fear and anxiety) from the player.  In levels, the okayer is confined to the boundary and detail constraints of the task they must perform.
3. Ideally, what would you like your players to do (lens #72)
To go towards levels (where players look for their son and save other survivors) but still explore the map to find new items and story elements.
4 .Can you set constraints to "kind of" force the player to do it? 
The fact that the fog is slowly closing in on you "kind of" forces the player to head to the next level (where they will be safe from the fog).  However, this can be prevented by finding pieces of ward throughout the main map.
5 .Can you design your interface to "force" the player to do what you (the designer) wish him/her to do?
We could make "key" objects that must be found in the main map before a level will be "unlocked" for the player to enter.

Sunday, October 20, 2013

Homework 12: Task Assignment (UPDATED!)

For this week I will/have accomplish/ed the following tasks by Thursday (10/24).  I will update this post as I complete tasks.

  1. Fix the "character" files so that its in true first person perspective.
10/20- Was able to get the camera working in 1st Person perspective.  You can use the mouse to move the "HEAD" object (up/down) and the rotate the "BODY" (left/right).  Movement forward and backwards is made using the 'W' and 'S' keys.
   2. Add python logic to sphere to scale as a function of property "ward level".

10/21- created a python script that is called by module (external python script, not the script you see in the upper right window).  The script accesses the "size" property of the sphere and sets the scale of the sphere to be a percentage of the original size  equal to the percentage 'currentSize'/'originalSize'.  I added a sensor, controller, and actuator to increase/decrease the 'size' property using the up arrow/down arrow.  This was just to test that the size of the sphere increased/decreased with this property value.  This will be used to adjust the level of fog approaching our character.

   3. Find quick smoke alternative that will work in game engine.

10/23-  Found a youtube video with a good tutorial on how to create volumetric mist in game engine (http://www.youtube.com/watch?v=H2DgiTz2RDI).  I adapted this method, applying it to my character's fog sphere instead.  I feel like it effect is good enough to give the idea of smoke, especially after I made the sphere begin to rotate (creating the effect of flow) however, as you can tell from teh screenshot, you can see the seem of the smoke at a certain point in the texture.  I can fix this by paying closer attention to borders while creating the image so that the edges blend together better.  I can make the smoke darker to the desired level also.