NATIONAL UNIVERSITY OF SINGAPORE

FACULTY OF ENGINEERING

DEPARTMENT OF ELECTRICAL & COMPUTING ENGINEERING

 

 

 

 

Digital Media Technologies

EE3701
Project Report

Tabletop

 
 

 

 

 

   

 

 

 

 

 

 

PREPARED BY:                  Ritesh Angural (U080332N)

Murtaza Shabbir Kurbanhusen (U075949A)

                                                Yeo Weiliang (U075860U)

                                                Joshua Lurdes Newman (U080178X)

 

COURSE/YEAR:                 EE3/4

 

SESSION:                              Wednesdays, 1-2pm & Thursdays, 9-11am

 

Lecturer:                                Dr. Steven Zhou

 

DATE:                                   12th April 2010


Contents

 

1.

Introduction

2

 

1.1    Objective

1.2    Scope

1.3    Methodology

 

2

2

2

 

2.

Background

2

 

 

 

3.

Overview of Entire Game

3

 

 

 

4.

 

5.

 

6.

 

7.

System Block Diagrams

 

Novelties

 

Technical Difficulties

 

Conclusion

 

Appendix

 

References

 

3

 

4

 

5

 

6

 

8

 

10

 

 

 


1  Introduction

 

1.1   Objective

The objective of this report is to create a creative and interesting application for the tabletop computing environment. In this project, it was decided that a game named ‘Bananas’ would be developed.

1.2   Scope

The game will include the entire implementation of the game from the idea generation, scenario design, making scenes to testing.

1.3   Methodology

The game will be developed with the Torque Game Builder, multi-touch tabletop in the Interactive Multimedia lab and various other softwares such as Gimp and Notepad++.

2  Background

Human–computer interaction (HCI) is the study of interaction between human(users) and computers.

The rapid growth of computing has made effective human-computer interaction essential. It is important for the growing number of computer users whose professional schedules do not allow elaborate training and experience that was once necessary to take advantage of computing. Increased attention to usability is also driven by competitive pressures for greater productivity, the need to reduce frustration, and to reduce overhead costs such as user training. As computing affects more aspects of our lives, the need for usable systems becomes even more important.

Multi-touch and tabletop are the most popular areas of interest in HCI. They have been creatively combined to form the multi-touch tabletop. It has become a very active area of research and countless number of applications has been developed for them. Multi-touch tabletop involves the input technology using hands and gestures are the most intuitive tools for human. Thus, this technology becomes a core component of the information devices adopting dynamic touch interfaces.

The success of this technology can be seen from the success of Microsoft tabletop, iPhone and tabulaTouch.

3  Overview of Entire Game

There are various types of games that can be developed for the multi-touch tabletop. They are role-playing, tile-based, board, card, dice, miniature and paper & pencil.

After much consideration, role-playing games was chosen. This is the result of the role-playing games genre gaining popularity among people of all walks of life.

After doing some research and having countless group discussions, we decided to base our game on the popular game ‘Worms’. The idea of creating a bright and cartoon-styled animation with a arsenal of weapons caught the group’s attention.

We then decided to create a two-player game where the objective is to defeat the other player with their individual arsenal of weapons. The players’ movements are restricted to a certain region of the tabletop.

In the arsenal of weapons, there is a super weapon which inflicts the most single damage. The other weapons can only inflict lower amount of damage.

We did a verbal survey and the general consensus seemed to be the monkey and the jungle theme. So we decided the monkey to be our avatar and have a jungle-themed background.

4  System Block Diagrams

The following show the overall and specific block diagrams of the game:

Overall System Block Diagram

Block Diagram of Weapons

 

5  Novelties

The game is visually pleasing as the graphics design has taken into consideration what would make any player unknowingly attracted to the game at first sight. This is partially due to the cartoon-styled animations. Once the player starts playing the game, he will find that it very intuitive and user-friendly. A certain amount of realism has also been embedded into the game such the splash of blood when the monkey is hit. Moreover, the learning curve is gentle and thus the player can get hang of the game very easily. The following explains further the novelties of the game in detail:

Monkey Movement: This functionality allows the player to capitalize on the affordance of a touch interface. The movement is very intuitive and natural as it just requires the user to drag the monkey from one place to another.

BomBanana: It makes the the game incredibly fun by increasing the difficulty by its homing capability. Thus, it gives the players opportunity of having bragging rights if he/she is able to evade the homing banana. The special feature about the bombanana is that the spawned bananas which appear from the trees and home to the player.

Grenade and Cannon: Both these weapons are unique from the rest in the sense that both are projectiles. Since the game is being played in a 2D top-down view, it is impossible to implement actual projectile motion. As such, by varying the size of the grenade and cannon ball, we were able to visually simulate projectile motion. In addition, both these weapons have a ‘powerbar’ feature which allows the user to fire at the opponent with varying speed. The ‘powerbar’ appears as the user holds down the ‘fire’ button indicating the speed of the projectile.

Bow/Arrow and Machine Gun: The firing rate is controlled by having a delay between each shot which makes the game more challenging. It is unlike other games where the firing rate is unlimited.

Monkey Copter: There is a trackpad control implementation which makes use of the affordances of multi-touch interface. The movement is made much more intuitive as opposed to buttons to make it go up, down, left or right.

Console/Ammo: We have added two functionalities into one interface in the console area. The icon which shows the remaining ammo is also used to enable the player to alternate between arsenals of weapons available to the players.

Crates:  Although this concept has been applied before and is evident in other games, we felt it would be very much suitable to Bananas. We took it one step further by introducing super weapons such as the bombanana and the monkey copter which can have either ammo replenished, or activated by the crate respectively.

6  Technical Challenges

One key difficulty in developing a multi-touch game is integrating everything together. Since there are so many objects that respond to touch, ensuring that the right event is triggered for the appropriate gesture by the player is crucial. Therefore, we had to do several rounds of testing to ensure that the player experience is not pre-flawed. There were also specific technical challenges with the regards to the other components of the game.

Monkey Movement: It was difficult from the player’s experience point of view. There was difficulty in determining whether the player had actually touched the monkey sprite and dragged it correctly so that it will move (touching outside the monkey will not allow it to move). Thus to overcome this issue, we made use of red and green sensor images that allow the player to know if they have got it right. A green sensor means they can move the monkey while the red means otherwise. This made a world of difference and players were able to adapt to the controls much faster. Sound effects of the monkey were also added and this helped too. Another difficulty was to limit the monkeys from going over the river. This was solved by using an underlying terrain which can respond to touch events. That terrain was set to a size appropriately such that it does not cross over the river.  This also prevents players from controlling the other player’s monkey.

BomBanana: The scripting of the Homing portion of the banana efficiently so that it doesn’t take up too much computation. It was also required for the balancing of the algorithm so that it is indeed possible to evade the homing bananas.

Grenade and Cannon: Both these weapons simulate projectile motion as mentioned in the novelties section above. Due to inadequate features available in TGB, we had to vary the size of the projectile based on the distance it will travel which in turn is determined by the duration of hold of the ‘fire’ button. Due to some math and geometry calculations, the coding eventually turned out to be very complicated. Another difficulty that arose from this was that the projectile had to ‘pass over’ the opponent if the power is too large. This had to be done while detecting collision and determining if the projectile has travelled the correct distance based on the initial speed and power. Once again, the math proved to be a big hurdle that we had to overcome.

Monkey Copter: This weapon required a whole new approach to code the implementation. The main challenge was changing the control buttons to track pad since we have to change from 4 buttons that perform four individual tasks instead of a  single button which can do all four.

7  Conclusions

The outcome of the project has been very good based on the feedback from people who played the game. However, there are various aspects of the game that can be improved:

·         Having an option of allowing more than two players. But there is a limitation of how many players can play at one time due to the limitation of action area for each player.

·         Introduction of computer-controlled avatars which randomly aid or attack the players. Thus would make the gameplay more interesting.

·         There should be a beginner and advanced play mode for the game to be playable among all age groups.

The principle aim of HCI is to improve interactions between users and computers by making computers more usable and receptive to the users’ needs. The ultimate outcome of HCI should be to eventually minimize the barrier between human’s cognitive model of what they want to accomplish and the computer’s understanding of the users’ task. From the experience of using multi-touch tabletop, it is believed that the principle aim is nearer and the outcome is definitely achievable.

Although considerable amount of time and effort has been put into the project, the group feels that it was worth it. The group has gained a huge wealth of skills and knowledge. The group looks forward to further exploration into digital media technologies and definitely recommends the module to be offered to future students.


Appendix

Screenshots

General Game View

General Game View with Labels


Links

Blog:

http://bananas-ultimatemultitouchgame.blogspot.com

 

PowerPoint

 

Webpage

 

Game Run Instructions

 

Source Codes:

Game Scripts

Game Behaviors

OR

Bananas Beta 1.0 (or Other)\game\game\gameScripts

Bananas Beta 1.0 (or Other)\game\game\behaviours

 

Contacts:

      Ritesh Angural ritesh@nus.edu.sg

      Murtaza Shabbir Kurbanhusen  u0705949@nus.edu.sg

      Joshua Lurdes Newman joshua_newman@nus.edu.sg

      Sean Yeo Weiliang   u0705860@nus.edu.sg

 

References

[1]  Human Computer Interaction: Introduction and Overview. (n.d.). Retrieved March 6, 2010, from http://www.sigchi.org/chi97/proceedings/tutorial/rjkj.htm

[2]    Implementation of Multi-touch Tabletop Display for HCI (Human Computer Interaction). (2007). Retrieved March 1, 2010, from http://www.springerlink.com/content/ank44350j6t56384/fulltext.pdf?page=1

[3]  Jacko, Julie A., & Sears, Andrew. (2008). The Human-Computer Interaction Handbook : Fundamentals, Evolving Technologies, and Emerging Applications (2nd ed.). New York: Lawrence Erlbaum Associates