Friday, November 11, 2011

Week 3 Self-Directed Learning

The following is a Bird's-eye view of my interactive game:

Fly through space, fighting an army of kamikaze alien spaceships, and defeat the alien mothership. Increase the difficulty for a more challenging space adventure.

The picture below is my outline/wireframe of  the game's screen flow.



The core mechanic involved follows:
  • Wide-open game-space
    • Invisible boundaries around the game-space
    • Aliens and bullets will disappear if moved past the boundary
    • Player is confined within the boundary
  • Collision Management
    • Enemy Bullets
    • Player Bullets
    • Alien Kamikaze Impact
    • Pickups
  • Enemy Spawn Management
    • Types
    • Special Attributes
    • Spawn Rate
    • Damage Caused
  • Bullet Management
    • Enemy-to-Player Impact
    • Player-to-Enemy Impact
    • Damage
    • Speed
  • Pickup Spawn Management
    • Types
    • Amount
    • Frequency
  • Player
    • Mouse Controls
    • Restricted to Y movements
    • 100 Hitpoints on all difficulties
    • Loses Hitpoints when struck by Alien Spaceship/Bullet
    • Damage received modified by difficulty
    • Will play a defeat scene is play is defeated
  • AI
    • Alien ships will rush towards player in a straight line.
    • Alien mothership will remain in place and shoot the player
    • Alien mothership will track player movement and adjust shooting accuracy on higher difficulty
  • Pickups
    • Pickups spawn after a certain amount of score is earned
    • Score requirement for spawning increases with difficulty
    • Health
      • Recovers all lost health instantly
      • Much less likely to spawn on higher difficulty
    • Power-up
      • Reduces damage take
      • Increases damage done to mothership
      • More likely to spawn on higher difficulty
    • Mega-Kill
      • Special rare pickup
      • Kill all enemies on-screen
      • Will be given score based on how many enemies killed
      • Alien mothership immune
      • Never spawn on Easy and Normal difficulty
  • Game Difficulty
    • Easy
      • Enemies small in number
      • Health Pickup much more frequent
      • Power-up pickup less common
      • No Mega-Kill pickup
    • Normal
      • Enemies average in number
      • Health Pickup less frequent
      • Power-up pickup more common
      • No Mega-Kill pickup
    • Hard
      • Enemies large in number
      • Health Pickup rare
      • Power-up pickup common
      • Mega-Kill pickup will spawn
    • Survival
      • Enemies large in number
      • Health Pickup rare
      • Power-up pickup common
      • Mega-Kill pickup will spawn
      • No winning conditions
      • More than one Alien mothership will be fought
  • Scoring
    • 10 points for an Alien Ship kill
    • -10 points for letting an Alien Ship escape
    • 100 points for Alien Mothership kill
    • Kills from Mega-Kill Pickup counts
  • Winning Criteria
    • Alien mothership is destroyed
    • On Survival, impossible to win
  • Losing Criteria
    • Hitpoints reached 0
    • Lost 200 points in total due to escaped Alien spaceships

Friday, October 28, 2011

Week 1 E-learning

What makes an application interactive?

In my opinion, an interactive application is one that works in conjunction with the user, meaning that the user's activity or attention is required for the application to be used and the application will respond in return. A classic example would be the touch screen feature on most mobile phones these days. The user can only move the cursor or interact with the application using their own fingers and not with the keypad. Upon detecting the user's finger, the application will react accordingly. An application which is not interactive is one which requires little or no participation on the user's part.

Due to this, an application can be interactive even with the simple use of the keyboard and the mouse.

Interactivity in an application has changed over time and for the most part, these changes are improvements, be it major or minor. One such change is the emphasis of pictures or icons over words. A very common example is the battery meter seen in laptops, mobile phones or gadgets. The battery meter will display the gadget's remaining battery level and depending on the level, the user will respond accordingly. If the battery is charged or replaced, the battery meter will respond by showing the new and current battery level.

How can interactivity be exploited in the chosen application?
Put in another words, how can interactivity enhance the user experience for the chosen application?


I have decided to do on Entertainment applications.

As interactivity in an application requires the user's participation, it often makes the user "stick" to the application much longer as much of their attention is needed. It also ensures that the user has much to do without them going bored or impatient. This is especially true for Entertainment applications and websites since they must entertain their users. For this part, I'll talk about a website I am most used to and one which is especially popular: Youtube.


As seen in the screenshot above, Youtube is a video-sharing website which allows for nearly infinite amounts of entertainment. The above screenshot is the interface for a video. Along the bottom panel are several customizable options for the user, both viewer and uploader. Some of them includes expanding or shrinking the video size, viewing or disabling annotations, changing the volume level and much more. Annotations itself (The green box of text on the top left of the video) is a way of communication between the uploader and his/her viewers. This interactivity, user-to-user and user-to-application, adds to customization for the user and this makes them more willing to "stick" and revisit Youtube as a video-viewing site.


Other than watching videos, Youtube has others features, such as a rating system and a comment feature. The rating system allows viewers to rate the video, in the form of "like" or "dislike". The amount of "dislikes" and "likes" is then tabulated and represented in a red and green bar respectively, as seen in the top center of the screenshot. The comment feature allows viewers to say out what they feel about the video or commune with other viewers or the uploader. Other features include a number of views tabulation and other video suggestions, adding in to interactivity. All these features makes the site rather appealing and gives viewers much to do.


Other than the video, a user's account page, called "channels" are highly customizable. As seen in the above screenshot, the background is user-customized and the top panel shows several options on customizing the page. The user is even allowed to change what video is to be featured and the color of the interface and the fonts. Due to it being very customizable, which adds in to interactivity, Youtube gives their users a lot to do and keeps them entertained with its large amount of customizable options and sizable number of videos.

Now, think of your interactive game. What factors should you consider to enhance the interactivity of your game?

A game, in general, are activities or applications which entertains its user and keeps them from getting bored. Due to this, interactivity is a near necessity for interactive games as it maximizes the user's participation. Here are some factors I can think of:

1) Entertainment - An interactive games needs to be fun to begin with. This is most important for all games. If an interactive game is not entertaining, the user can get easily distracted and they will easily forget instructions or will simply quit.

2) Motives - Give the user a reason why they should bother about your application. This can be done by giving the interactive game a goal, aim or achievement. This keeps the user focused and make them more willing to see the game through. This can also add into replayability by making them more willing to return to the game to complete an incomplete goal or achievement which they were unable to reach in their previous run. A reward can be given to the user to make them feel more accomplished or to give them bragging rights.

3) Originality - The interactivity between the user and the game should be kept original if possible. If an already used concept, such as a mere point and move kind of game, is reused, the user may be bored and leave the game or not complete it. Originality can be reinforced through a newly conceived idea or by mixing and matching already used ideas.