Thursday, December 24, 2015

Semester Wrap Up

We are half way through production of Desert Defenders, and I believe that we are in an excellent position.  Despite the hiccups and technical difficulties we had throughout production, we finished strong.  Looking forward, we intend to work diligently over the winter break to fix up some Haroun's animations, revamp Rana's attacks, and begin scripting additional enemies.

Based on the feedback from our playtests, we concluded that our levels were a bit too short and lacked dynamic gameplay elements.  In order to correct this issue, we plan to add on to the levels that we already have--in essence, doubling them.  To fix lack of dynamic gameplay, we will play around with placing more traps and crates with which the player can interact.  The additional enemies, the Cobra and Coyote, will also change up the gameplay.  Each enemy will have a specific movement and attack pattern that the player must figure out in order to defeat or avoid.

As we keep moving along with the production of Desert Defenders, we hope to continue playtesting and fine tuning the game according to our feedback.  With the right amount of drive and proper scheduling, we will have a great product to show by the end of next semester.

- Jillian

Thursday, December 3, 2015

Audio Updates

I have finished doing sounds for Haroun. The sound effects that I finished is the jumping grunt, death sound, and getting hurt sound.

Sunday, November 29, 2015

Splash Screen and Logo

As we are plugging away to get a workable prototype by December 3, I went ahead and made an official text logo and splash screen for Desert Defenders.  Adding in a bit of UI and menus at this point seems to be the most logical step for production.  Getting the menus and UI in will help make Desert Defenders feel more like an interactive game than just an interactive screen.


The title is comprised of several different font bases. I chose fonts that looked calligraphic and slightly distressed with swooping and sharp strokes.  Once the text was rasterized, I added my own personal touches to the characters so as to differentiate them from the original bases.  For example, the "f" in "Defenders" was reshaped into a Scimitar sword to help reiterate the desert theme.  The background logo is the same one that is being used throughout the game as the emblem of Sakaduuba Village, Haroun and Rana's hometown.



I had quite a bit of fun making the splash screen, seeing as it is always one of my favorite parts about developing a game.  It is also quite an important piece in getting players hyped and excited for the game.  To make the logo stand out from the rest of the background, I encapsulated it in a pyramid, which also serves as foreshadowing to the final level and boss fight.  The two protagonists, Haroun and Rana, are also clearly depicted with their respective abilities and weapons in a way that shows the player right off the bat that the characters have different specialties.

-Jillian

Music Update

This week I've managed to complete two songs. The first is the new music for the village level. This track has a drum pattern that was inspired by the song "Requiem For The Indifferent" by Epica. The other song I made was for a new song for the Pyramid level.

Tuesday, November 17, 2015

Music Update

This week I've been putting the finishing touching on the Village music. This new music has both Arabic and metal elements to it.

Saturday, November 14, 2015

The Evil Sand Witch, Mae'o


Here is a sneak peak at the main antagonist of Desert Defenders. She once started off as a harmless traveler to Sakaduuba Village, possessing the abilities to control the sand and mirages around her.  The villagers were intrigued with her abilities, but soon grew to fear them as she started to devise plans that would compromise the peace of Sakaduuba.  She was banished for her radical ways and condemned to live the rest of her days as a prisoner in the Pyramids of the Forgotten.  Now an object of fear and hatred, she is formally known as the Evil Sand Witch, Mae'o.

-Jillian 

Friday, November 13, 2015

Health HUD Update

The health bar is finally working now, so each time the player gets hit the bar goes down. After showing the health script to the lead programmer, there were a few things that needed to be fixed:
  • The script has to be applied to the game manager
  • Referencing from one script to another
  • Rearranging some of the codes in the health script 
  • Changing the float variables to integers in the game manager
As we were solving the situation, we set the maximum health to five instead of a hundred and managed to get Unity to track the character's health. When the game was running, the number appeared on the console and decreased for every damage that was taken. However, the health bar still didn't go down. Eventually, we managed to get the health bar working and the screen blinks red for every damage taken. It took us an hour and a half to get the health bar to decrease for every hit has been taken.

After solving the situation, I adjusted the health HUD by scaling and changing the color of the bars. It turns out that there are two layers, a background layer and a fill layer. I scaled the width of the background layer and filled it with red while the fill layer is green. It looks very amazing while the game is running. 

Before


After


Credit goes to the Unity tutorial for the health HUD and script videos along with the scripts themselves. Here's the link: https://unity3d.com/learn/tutorials/projects/survival-shooter/player-health?playlist=17144

Thursday, November 12, 2015

Wednesday, November 11, 2015

This week I worked on getting a coin into the game. The coin is the currency that the player will collect which will either be dropped by the enemies or appear randomly in the game.












Another thing I did was add another tree into level 2. This tree serves as a walk-able platform.

Player Health

I'm currently working on the UI programming for the game. Right now, I'm creating a canvas and writing the script for the health bar. Displaying the bar itself was no problem at all, however writing a script for the health bar is another issue. So far, I didn't encounter any errors but the character's health isn't decreasing for every damage that is taken. I will make adjustments to the health bar as soon as I fix the script. The health bar is located at the bottom left of the image below.


Monday, November 9, 2015

Sound Update

  • This week I will be taking a short break from the music and focusing on some of the sound effects. I will be using mixcraft to record the sounds. The sounds that I will be working on is the tumbleweed, pause sound, and bounce sound.
This week I was tasked with continuing to work on the assets for level two. I finished the tumble weed for the desert and have been working on the trees for the foreground. The next thing to do would be to implement the tumbleweed into unity and have it roll.












These are the some of the other tree assets for the same level.

Friday, November 6, 2015

Exploding Crate Scripting

I just finished writing the scripts for the exploding crates that will appear in our game. The crates now explode when hit with Rana's fireball, set off other exploding crates that are near, and exert force on other objects in the area. I tried many different things before I was finally able to get it to work properly.

I started off, adding to the exploding crate, a child object with a disabled circle collider. My theory was, when the crate was struck but the fireball the child would activate and then trigger the same reaction in surrounding exploding crates, but for some reason the collider from the child wouldn't interact with the surrounding crates, even though the collider touched the colliders from the surrounding crates.

Next I created a prefab that was a completely seperate object with a circle collider acting as a trigger. I scripted the exploding crate to instantiate this object (which I called explosion) upon getting struck by the fireball and it worked exactly as I needed it to. Afterward I added, to the explosion object, a script that waited a very short amount of time before removing the object from the scene to reduce objects the engine needs to track at runtime.

The next big challenge was exerting explosive force on the objects around the crate. There is an AddExplosiveForce physics effect in Unity but it only works for 3D objects, colliders, and rigidbodies. Since 3D and 2D objects don't interact with each other in Unity, I tried to find a way to trigger 3D effects on 3D objects with a 2D trigger (the fireball). I did something similar to what I tried before by attaching a child, with 2D elements, that would then activate the scripts on the parent object but this failed as well.

I took to the internet and quickly found a free asset on the Unity Asset store for AddExplosiveForce2D, developed by Ananda Gupta at http://anandagupta.com. Thank you Ananda! The script was the effect I needed but the example contained within only worked on mouse click. I was able to move the key method from Ananda's script (Thanks again!) and attach it to my crate but for some reason it still wasn't working. I could hit the crate with a fireball and it would be removed from the scene but it wouldn't exert force on the objects around it.

I moved the epicenter of the explosive force and discovered that the explosive force was only interacting with the object itself and not the surrounding objects. Again, to the internet! I quickly found that you can use Physics.2D.OverlapCircleAll to create an array of the objects within a radius. By adding a layer mask I was able to make sure the explosive force would only effect the objects I intended it to. Adding in a quick while loop, I was able to iterate through the array and add the explosive force to each of the surrounding objects, using the initial object as the epicenter of force. By adding a call to this function right after the call to instantiate the explosion object, I can chain the explosive physics effect as well.

In order to simpify things I tried to create a single method that would test the objects in the radius to see if they were explosive crates before adding force to them. This way I could get rid of the explosive object altogether. Unfortunately, each time I tested this singular method, the program threw a stack overflow exception. But that's ok, because I have something that works exactly how I want and cleans up after itself. There's a couple screenshots below where you can see the explosive crates in action.

-Brandon



Music & Audio Update

As of right now I am trying to create an entire new song for the village level. This time I will try to implement more of the metal genre to it.

Thursday, November 5, 2015

Backgrounds and Midgrounds


Here are the Background and Midground layers of Level 1, Sakaduuba Village.  The building layer is comprised of a combination of the level ground buildings and floor pieces.  This layer was then desaturated from the original images, so that it did not overpower and clash with the main level ground layer and the characters.


Here are the layers, including the main  ground layers, for Level 2, Desert Night.  The original plan was to make the color scheme in all blues and violets, just like the far background dunes.  After piecing everything together, it seemed like all the layers blended to the point where it became difficult to tell which layer was which.  To alleviate this problem, I recreated each layer to have its own unique color that still coordinated and complimented the others. 

Cheers,

Jillian Walker

Levels Finalized

I finalized each design for levels two and three of the game. After looking back at the prototypes, I made some modifications to the designs and added a few obstacles to make them look challenging when the game is played.

Tuesday, October 27, 2015

Music & Audio

  • I have uploaded the audio for Haroun and some of the level sounds for enemies, etc. Many of the audio sources come from YouTube.com and SoundBible.com. I personally work on the sounds for Haroun at my house.
  • I have uploaded music for the first, second stage, and the level completion. I composed the music myself within a program called Fruity Loops Studio. The music has an Middle Eastern Arabic/Heavy Metal feel to it. I was introduce to a band called "Myrath", in which the inspiration for the music came from.

Monday, October 26, 2015

Checkpoint

This flag indicates a checkpoint in the game. The player will spawn back to the checkpoint after losing a life only if the checkpoint has been reached. The symbol represents Haroun and Rana's village.

Monday, October 19, 2015

Asset Updates

Here is a look at our new crate designs that will be in game.  I took away the obvious trap crate, added a more stylized fire logo to the explosive crate, as well as created a withered crate that has more realistic breakage.



This is the first enemy that the player will encounter in the game, the Desert Raven.  Because these enemies are "Mirages," they will all have a theme of Death about them--almost like ghosts.  The Raven, for example, looks and acts like a normal raven, except that it has a skull for a head. I have never made a flying bird animation before, so this was definitely an interesting experience.  After a few hours of watching videos of birds in slow motion, this is the result.
Here is the Fireball projectile that we will be using for Rana's Power attack (when we turn it on its side).  I designed it in a way to make it double as a regular fire effect as well.  By reusing assets like this, it will cut down on production time.



Cheers,

Jillian Walker



Thursday, October 8, 2015

Enemy Concepts

Sand Snake

Fire Coyote

Desert Raven

Audio Progress


  • Voices
    • I am currently working on two different voice types with a weak attack, strong attack, and death.
  • Music
    • I have prototypes for 4 levels, main menu, boss, and game over music.

Wednesday, October 7, 2015

Crates


This crate is completely indestructible, but it can be used for jumping from one place to another.
 This crate can easily break with one attack and coins will be appear.
 The explosive crate will immediately blow up if anything were to make contact with it. Do Not Touch This Crate!
 Don't go near this crate because its a trap. Anytime, a player is close to this crate, an enemy will come out of that crate and attack. 

Level Prototypes

I hand drawn these levels just to get an idea on what they might look like in the game. Two of them are based on the second level, while the rest are based on the third and fourth levels of the game. They've received good reviews after the team looked at them during our group meeting. I looked at some examples of level design that were provided to me and recalled some situations I experienced when playing platformer games. The boss level will be on hold until the second half for this project.





Monday, September 28, 2015

Haroun's Running Animation


In terms of character animations, we are well ahead of schedule.  Here is how Haroun's running animation is going to look in-game, more or less.  If time permits, I may go back and refine the animation a bit by adding more motion to the hair, but other than that, I believe it is ready to go.  This is really my first time tackling such a detailed sprite sheet for not only one character, but several.  With the proper pacing, I should be able to knock out an animation or two each week.

Cheers,

Jillian Walker

Level 1 Prototype Map


Group Meeting 9/28

Date:  Monday, 9/28/2015
Time: 10:00 PM--10:40 PM


Attendees:
  • Jillian Walker
  • Sharmarke Alisalad
  • Kai Wu
  • Brandon Belman


Order Of Business:


-Discuss Progress made since Thursday
-Animations -- Rana Running
- Level Maps --In progress
-Enemy Concepts--In Progress
-Backgrounds --In Progress


-Quality of Work
- Is everyone comfortable with their quality of work?
- Is everyone comfortable with their tasks?
-Are we working to the best of our abilities?

Thursday, September 24, 2015

Haroun and Rana Idle Animations

                                
 

Here is the first look at how Haroun and Rana will appear in the game.

Monday, September 21, 2015

Group Meeting 9/21

Date:  Monday, 9/21/2015
Time: 10:00 PM--10:45 PM


Attendees:
  • Jillian Walker
  • Sharmarke Alisalad
  • Kai Wu
  • Brandon Belman
  • Clayton Brown


Order Of Business:


  • Discuss Progress made since Thursday meeting
    • Level 1 Map Prototype
      • continue refining


    • Haroun Idle animation
      • finalize animation, begin running animation


    • Scene Flow Chart
      • Add Options screen
      • Add Credits screen


    • Level Concept Art
      • Work on concept for Sakaduuba Village
      • Make tiles /assets for Sakaduuba Village


  • Adding to the Asset List
    • Added more Sounds/Music, Added screens, Added extra assets & Power Ups
    • Create Art Library for Reference/Inspiration in Google Drive

  • Start compiling a Schedule
    • Milestone 1 deadlines (October 1)
    • Delegated tasks for deadline

Thursday, September 17, 2015

Game Proposal

Desert Defenders
 


Game Proposal
COSC 469

Jillian Walker
Brandon Belman
Clayton Brown
Sharmarke Alisalad
Kai Wu

INTRO   
            Desert Defenders will be a 2D platforming action adventure game with RPG elements created by Jillian Walker, Brandon Belman, Clayton Brown, Kai Wu, and Sharmarke Alisalad. In Desert Defenders, players will take control of Haroun and Rana, two guards of Sakaduuba village with unique powers and abilities, to push back the strange and hostile creatures unleashed by the dreaded Sand Witch.  Desert Defenders will be developed for Windows PC in the Unity game engine using the C# programming language.



BACKGROUND STORY  
            Many years ago, Sakaduuba village was a prosperous and peaceful place to live, for it drew in many travelers from all over the Great Desert.  One day, a rather mysterious traveler came to the village.  She brought with her a very strange inborn magic—the abilities to control the sand around her and to create and command mirages.  At first, the villagers of Sakaduuba were intrigued by this woman’s power, but soon they soon grew to fear it.  They began to call her the Sand Witch.  The Sand Witch did not want to use her powers for good, but rather, she wanted to use them for her own nefarious reasons.  She sought to utilize her powers to start wars and increase the territorial strength of Sakaduuba, but the rest of the village wanted to continue living their peaceful lives.
Fearing the Sand Witch’s growing power, the village Chief passed a law, which forbade her from using her abilities. The Sand Witch refused to comply with the new law, so the Chief exiled her to the Pyramids of the Forgotten for the rest of her days.  Enraged by her banishment, the Sand Witch began to send plague after plague upon Sakaduuba in hopes of wiping the village out of existence. As the threats to Sakaduuba grew in strength and frequency over the years, two brave warriors arose to protect the village and vanquish the evil once and for all.  Their names were Haroun and Rana, the Defenders.



OBJECTIVE/GOAL   
The main goal of this game is to defeat the Sand Witch. In order to reach the Sand Witch, who is at the end of the final level, you must first go through four levels. Each level varies in difficulty and has different enemies throughout. During the gameplay your objective will be to defeat the enemies in order to make it towards the end of the stage. In order to complete this goal the player will have to use his/her combat skills to defeat the enemies. Another step in order to complete the goal is to use the different skills of the two characters to complete specific tasks in order to help you progress through the level. The player has a certain amount of health and lives to accomplish the objective.



GAMEPLAY ELEMENTS
            As the player controls both Haroun and Rana, he/she must fight their way towards the end of the level. Each level takes place in the outskirts of the desert with different obstacles in the game. The enemies are the Sand Witch’s minions and the player will have a boss fight with the Sand Witch herself. For every enemy killed in the game, players will receive points and redeem for upgrades and lives at the end of the level.
Haroun and Rana specialize different abilities in the game, Haroun specializes in close combat while Rana specializes in ranged attacks. The game includes puzzle solving features because the player must switch characters in certain situations in order to proceed to the next level. Sometimes the player may have to figure out alternate routes to avoid enemies or any other dangerous obstacles to safely reach towards the destination.
Desert Defenders does not have multiplayer mode because this is a solo game meaning that only one player is required to play. Choosing a level of difficulty is not included, however the difficulty for each level will increase as the player progress through the game.
Each level will have combat and platforming aspects.  The levels will get progressively more difficult as the game goes on, and the direction of the level design will reflect that.  Platforms will get smaller and disappear at a higher frequency, enemies will appear and attack at a higher rate.
The bar, at the upper left of the screen, indicates the player’s health status with three different colors. Green indicates that the player is in good condition, yellow indicates that the player is slightly injured, and red indicates that the player is going to lose a live, and must find a health pack which restores a portion of the player’s health.
The icon below the health bar indicates the amount of lives the player has in the game. If the health bar is empty then the player will lose a live. Another method on losing a live is sinking into quicksand as well as falling into empty gaps. If all lives are gone then the game will be over and the player will spawn back to the beginning of the level. At some point in the game, there will be a small flagpole in the middle of a level which indicates a checkpoint. Anytime the player touches the pole, a flag will appear declaring a spawn point. The player will spawn back to the checkpoint each time a live is lost.



GAME CONTROLS  
            Though Desert Defenders will be published for the Windows PC, we do plan on developing controls that will also support the Xbox 360 gamepad.  The game will have a setting in the options menu that will allow for the player to toggle the type of controller used for gameplay.  The planned control list is as follows:



CHARACTER ACTION
PC CONTROLS
XBOX 360 GAMEPAD
Move Left
A
Left Joystick
Move Right
D
Left Joystick
Jump
W
A
Block
S
B
Primary Attack
Left Mouse Button
X
Secondary Attack
Right Mouse Button
Y
Power Attack
Shift (Hold) + Left Mouse
Right Trigger (Hold) + X
Switch Characters
Spacebar
Left Trigger
Pause
Tab
Start



ART SPECIFICATIONS   
            The overall aesthetic of Desert Defenders is playful and cartoony.  The characters and main objects will be drawn with thick outlines and thinner sketchy inner lines for shading.  The general color palette will include warm, muted color schemes to match the whole desert theme.  Sakaduuba Village, the Outskirts, and the Pyramids of the Forgotten will be painted with these schemes.

 
A few levels, such as the Night and Oasis levels, will have different color schemes to reflect the environment.  The Night level will likely have hues of blues and violets, while the Oasis level will have turquoises and greens. If it is possible, there will be animations to add to the background of the level to make it seem more realistic. For example, in the desert there will be gusts of sand blowing in the air.
The two main protagonists of Desert Defenders are Haroun and Rana.  Their overall appearance can be likened to “desert samurai.”  Haroun’s primary colors are red and copper.  He  is depicted as wearing lighter armor--only having his midsection, arms and legs armored.  Haroun also dons a torn red poncho and sash around his waist.  His hair is tied back and bound with a red cloth, as well.  His weapons of choice include two Kanabo, war clubs that were often wielded by Oni (ogre demons) in Japanese folklore.






Rana’s primary colors are gold and orange.  Unlike Haroun, she is depicted as wearing heavy armor, minus a helmet.  Rana has shoulder-length hair that she keeps underneath a white headscarf.  On her headscarf, she wears a desert flower and falcon feathers. Her primary weapon is an over-sized, and stylized Scimitar sword.  Her secondary weapon is her magic ability to control fire.  She uses this ability as a projectile type of attack.



AUDIO SPECIFICATIONS  
            The style of music we will be aiming for is an middle eastern arabic mixed with some metal. Some instruments that you will be expecting to hear are electric guitar and the oud, which is a stringed instrumental in the middle east, drums, and tambourine.
            The music will mostly be upbeat and energetic to match the style of the gameplay.  During a game over and the sadder moments in the story, the music will become sombre and more subdued than the regular gameplay music.  The levels will have their own unique tracks to give them more flair and to help differentiate them from each other.



MARKETING ANALYSIS   
            Desert Defenders will be developed for Windows PC. Our target audience will be consumers of 2D platformer games that have little experience with RPG elements, most likely video gamers in the 8 – 15 age range, though gamers in an older age group may find the game’s strategic elements appealing. Similar games targeted at the same group include Ori and the Blind Forest, Scott Pilgrim vs. The World, and Bastion. Desert Defenders will have two main protagonists that, unlike these titles, will be able to be interchanged at any time during gameplay.