Mystic Mysteries

Mystic Mysteries is a modular party game I made as a part of group of 4 for a project in one of my master’s class. For this project we had to make a non-electronic party game. Out of all the projects this was the most challenging as all other projects were computer apps and thus though challenging not as difficult as this one. Since it had to be non-electronic multiplayer game, we had to make sure that we include the social aspect such that the whole experience is so much fun that the players would want to play again and would go out and convince others to join them.

Our group had really enjoyed playing games like Werewolves and Betrayal at House of the Hill. We liked the social element of those games. However we didn’t like the first person to lose the game had no role to play and thus would get bored. Also we wanted to include strategy element in our game. Combining all these ideas in one we came up with the idea of Mystic Mysteries which is as interesting a game to play as is its tagline, “A game of strategy and smooth talking is just the beginning”.

Our game is party game which supports up-to 9 people as of now(possible expansion by increasing characters). It even has the modular element in that it consists of 3 different scenarios as of now(possible expansion) and also all its characters are unique that each contain different abilities and action which it can perform in the game.

Simply the game can be described by its 3 components, scenario, modifier and character. Scenario card describes basically the objective of the game i.e. what is to be done in the game. As of now we have three different scenarios which can be played:




The next are the characters. As of now we have 9 characters which can be played as. Each character has a certain set of specified actions it can perform. Also most of them have unique special ability apart from the regular actions. The best thing about these characters is that even if they lose, they get a second chance wherein they still play the game as ghosts and can even be revived back to being alive again. Here are the characters:

char1 char2 char3 char4 char5 char6 char7 char8 char9



The last, modifier cards. These of course are to be dealt face down as they define your role in the scenario, whether you are the bad guy and thus have to achieve the goal in the scenario or the good guy that has to get rid of the bad guy/s before he/she/they can achieve their goal. Also some of the modifier cards represent a certain item like the money card here. Here are the modifier cards:

modcard modcard2 modcard3



Of course the detailed instructions of how to play the game is written in the two instruction manuals written by us(1 for players and 1 for the fortune teller). However to give a quick idea about how the game works let me define the two rounds which occur in loop.

  • Heads Down round: In these round each person can utilize their abilities as well as the bad guy/s makes his/her/their move/s in a set order as defined in the instruction manual. The care of this round is taken by the fortune teller who makes sure the round progresses the way it should. Once everyone’s turn is over, the results of the actions taken are described by the fortune-teller.
  • Voting round: Depending on the results of the heads down round, players still alive can now initiate a voting action depending on their character’s abilities. Voting is done on the action finalized and if passed with majority the game progresses where ghosts are given the option to veto the action. Depending on the votes, the action either takes place or gets cancelled.

This two rounds go in loop until either bad guys achieve their objective or are thrown out of the game by the good guys.

And that for you people is Mystic Mysteries, a fun to play(as found out from some little surveys) party game where “death is just the beginning”.


Beneath the Surface

Beneath the Surface is a multi-touch based game inspired by the concept of assisting patients with serious injuries of the arm, shoulder and wrist in the rehabilitative process. It attempts to accomplish this goal in two ways. Firstly It is designed to alleviate the tedium that many patients may experience while completing the repetitive aspects of their physical therapy through its interactive mechanics. Secondly, these mechanics employ a series or assigned gestures to help to exercise the the arm in multiple directions.

Gameplay consists of juggling a few different mechanics simultaneously in order to maximize the speed with which the game’s health meter reaches 100% time. The goal is to attain 100% health in the shortest time possible. The player must touch the screen to rehabilitate muscles, cure wounds and destroy pathogens to facilitate the healing process in the game. The challenges are designed so as to give rise to a diverse array of movements across the screen. The gestures that the prototype include a swipe, rubbing back and forth, striking through and circling.

The theme of Beneath the Surface was developed around the literal idea of the body’s healing processes. The level design is organized around the internal view of an abstracted body part; it references various corporeal structures in its presentation. The dangers take the form of wounds and invading pathogens that threaten to infect the injured muscle. The game asks the player to participate by taking on the role of the body’s restorative mechanisms to heal the game environment while inviting them to contemplate their own therapy. The game aims to perform on this layer of concentration/meditation while simultaneously helping to rehabilitate the player physically. It communicates the health of the environment and its structures both through the GUI and diegetically.

In order to achieve our goal of having the theme built around assisting in physiological rehabilitation of the hand muscles we had built the game keeping the Microsoft’s surface pad platform in mind as the screen size of the surface pad is quite enormous and thus playing this multi-touch enabled game would allow for maximum movement of the hand and thus exercising all the hand muscles together and the most. However it can be easily played on any touch device achieving the same result, however of course for lesser number of muscles. Moreover it is a fun game so it is not restricted to the primary population(rehab patients) we initially aimed for while building it. It can even be played on non-touch desktops with a mouse. So in all, I am really proud of this project that we developed.

Here are some screenshots explaining the game even more:Image

Instructions:                            Image

The TouchScript plugin we used for our game which enabled us to support Multi-Touch events:                                  Image

In game screenshots:

Image The initial dark color represents the muscles at 0% health. The color brightens up as you heal them more and more giving a sense of muscles getting healthier and healthier as their better care is taken.

Image Note the red color getting brighter and making the screen look healthier. Sparkles on the screen represent the touch location. To give a nice visual, as you swipe across the screen a nice fading trail of sparkles is left behind the touch.

Image All kinds pathogens attacking the muscles damaging them(shown by darkening of red color of the particular muscle).

Image Giving back a nice teaching feedback message at the end of the game so as to motivate player to take better care of their health.

(Game Developed by: Ankit Deliwala, Kushagra Gupta, Matthew Mundell, Robert Lumsden)

It Takes Time

Grief is a strong sentiment that can break both one’s heart and one’s mind. Yet, more often than not, people perceive their consequences and persevere even in the face of grievances as large as the loss of someone close. While there are others whose pride and ego separates them from social bonds while grief envelopes them completely.

“It Takes Time” is a top down interactive narrative based game that takes the player through the elegance of human emotion. It depicts the story of a young, hard-working journalist Sophia, whose foresight into a dark future causes her to panic. The novelty in the game is in the way it elucidates the five stages of grief one goes through.

Each day in Sophia’s timeline is a metaphoric representation of the emotion she goes through as she nears her fate. It conveys the emotion through various means such as the subtle changes in Sophia’s home environment, her actions and behavior, and (in the future) the background music.

Another important feature the game aims to enlighten is the role that social interactions and friends play during a person’s recovery from such an event. The game achieves that by correlating the various mood changes Sophia goes through after having conversations with her friends and family at the end of every day.

The game is a cusp of dialogue and mini-games that portray Sophia’s emotions and her interaction with her world as she gets closer and closer to the fate she does not want to encounter. The aim is to make the player empathize and sympathize with her conditions giving them an insight of what a grieving person’s world may feel like. We hope that these experiences find their way into player’s real life so his/her nature towards people going through grief may be positively influenced.

Here are some screenshots:ImageImage

And the game begins:

ImageImage                  (The conversations form the most important part of the game. This dialogue gives the player the backdrop of the situation the protagonist is in.)

The reason of all our protagonist’s troubles:ImageImage                   (What do you think is going to happen? An office room with all the stuff packed)

Dialogues in the office between Sophia and Carter are the main basis of letting player know what’s going on. They also help in depicting the emotional state of the protagonist.Image

Monologues of the player in office and at home depict the attitude of the player and the mental state she is in:                                               Image                                                               (Anger)

Image                                                                                (Denial)

With mini-games in our game, we wanted to experiment something new. We wanted to give players an illusion of choice. Though their choices didn’t make any impact on the end results, we wanted to see what kind of emotional developments occur in a player when presented with two options quite opposite of each other.           ImageImage

Apart from just these cues about the mental state of Sophia, we even implemented few trigger points which helps brings forth the emotional state of Sophia and thus making the player feel more attached to the protagonist’s state. Some of these were, her reaction on noticing the time at home, the weather outside. All these things were scripted so as to be in sync with player’s state of mind.                           ImageImageImageImage                                                         (Depression)


ImageImage                                                     (Acceptance)

And that’s our game which attempts to take you and relate with Sophia on her journey through the 5 Stages of Grief: Denial, Anger, Bargaining, Depression and Acceptance. Apart from just setting the tone of narration and dialogues, we try to achieve our goal even by the background music in our game which changes according to the protagonist’s state of mind.

And of course, the ending of he game:   ImageImage

Game Developed by:Image

Robin-Hood and the Balance of Candy

This is a game prototype we built for one of our group assignments. Our assignment was to select a character from the public domain and build a game around it. Also the assignment was given around the time of Halloween. So our group came up with a unique idea of using Robin-Hood in a Halloween themed game and the result was “Robin-Hood and the Balance of Candy”. What the game is about can be easily understood by reading this one-sheet that we prepared for our game.

Robin Hood and the Balance of Candy

Tag Line: “Steal from those who have much and give to those who have little.” – Robin Hood

Elevator Pitch: You play as “Johnny” a little boy who dressed up as Robin Hood for Halloween. Johnny has heard that some children get more candy on Halloween than other children and has taken it upon himself to become this neighborhood’s own Robin Hood. You as the player have 2 minutes to run up and down your neighborhood, steal candy from the children who have too much, and give candy to those who don’t have enough.

Gameplay Overview: The player has two minutes to go around and make sure that all the kids on the street have even amounts of candy before the trick or treating ends and everyone has to go home. Steal from the kids who have a lot of candy. Give to kids who have very little candy. There are also elements of stealth. The player needs to avoid getting caught stealing candy because parents will be walking around with the kids. If they see you, then you get a big scolding, lose all your candy, and lose time on the timer.

Level Progression: Multiple levels are planned, but to prove concept of gameplay the prototype will be of an easier level. The prototype level will consist of eight houses on a single street with a bunch of children running around door to door getting candy. In the prototype level there will only be a few parents walking around patrolling the area. In more advanced levels, there will be more interconnected and twisting streets, more patrolling parents, different AI types for children, and places to hide from parents.

Narrative Experience: The story follows closely to that of Robin Hood. In our game we will follow the story of “Little Johnny”, who imitates Robin Hood and his quest for equality for everyone around him. “Little Johnny” lives by Robin Hood’s Law of “Steal from the rich and give to the poor” by evenly distributing all of the candy on Halloween night.

Awards and Accomplishments: “Best in Theme” – IGM Interactive Media Guild Halloween Hackathon 2013


Now here are some screenshots of the game being played to give a better idea:

1. Introduction:Image


2. Let’s Start: (You can see in this pic that the number of kids and the number of candies they have being listed as a part of HUD. It is so as to assist the player in keeping track of which kids have more(to be stolen from) and which less(to be given to).Image


3.A parent keeping a check on whether you are stealing candies from the kids or no. If you steal while a parent is watching you, the parent takes away all the candies you have. Note the number on top of your head. It denotes the number of candies you have in your bag. In this case it is 0. Similar numbers are present on the kid’s heads as well to denote the same.Image


4. Just another screenshot to show all the models of characters and houses in the game. Also note the yellow flash at the base of every parent. Robin-hood is standing right inside one. The yellow spotlight indicates the parent’s vision. You can be caught only if you are stealing when inside this spotlight.Image


5.Screenshot of me trying to steal a candy from the kid. Note the color of the number on both the kids’ head in the screenshot. One is red while the other is green. Red color indicates that the kid has candies far away from the average whereas green indicates the number being close to the average.Image



So that’s what this game is all about. Of course it is much fun to play than to just read about it. All the more because of the addictive funny sounds and music in the game.



(Game Developed by: Ankit Deliwala, Nick Buonarota, Rushabh Gosar, Praveen Nagarajan)

TileBreaker(Game by Ankit Deliwala)

Nothing much to say about this individual project of mine. It is just a simple game I built using the MFC library. The game is about minimizing the number of tiles on the screen to as small a number as possible, hopefully 0. The game goes like this:

1. You are presented with a small window filled with square tiles of three colors(red, green and blue).Image


2. You can break tiles when you click on a group of tiles(more than or equal to 2) of same color placed adjacent to each other. You cannot break a single tile. (You can see the group of 4 green tiles at the top being deleted here)Image


3. You can of course break a group of tile from the middle of window. All the tiles above the broken group fall down accordingly to fill the gap. (see the big group of blue tile in the middle of the above pic being deleted)Image


4. And that’s it. Have fun breaking tiles and achieving the perfect 0. Image

And damn it, I missed by 1 tile again.


(Game Developed by: Ankit Deliwala)

Live Video Streaming Using Application Level Multicast

The use of multimedia streaming applications such as live video streaming, live webinars, video conferencing, remote presentation etc. is increasing at a very high rate. These applications are highly bandwidth intensive and account for most of the network traffic across internet. This gives rise to need for efficient utilization of network resources. This can be achieved in two ways. Firstly, decreasing the size of video to be transferred over networks and secondly by avoiding redundant repeated traffic over the network which can be achieved using proper multicasting techniques. The use of multicasting techniques increases the scalability the application to much higher level and thus it is on this line our group decided to restrict our research area for our final year project.

Now, even multicasting can be done in two ways, using IP Multicast Infrastructure or Application Level Multicasting. IP Multicast Infrastructure is the most efficient way  to implement  multicast communication. However its large scale deployment is very difficult due to various technical and non-technical reasons. Some of them being infrastructure update and upgrade costs are very high, increased overheads and complexities at the routers for group management, monitoring and controlling data traffic across networks becomes difficult, suffers from reliability and congestion control issues as it is vulnerable to flooding attacks without complex network management etc. Application Level Multicasting(ALM) is an alternative multicasting solutio, wherein multicast functionality is implemented in application layer i.e. at the end hosts instead of network routers. ALM provides the following advantages over other techniques like, it is cost-efficient, easily deployable, highly scalable, group management is easier, monitoring and controlling data traffic across networks is easier, can better adapt to changing dynamics of the network etc. Doing this research, our group decided to further narrow down our research scope and focus just on ALM techniques and build our project around these focus area. In this way, we ended up making up a Live Video Streaming Application using an ALM technique that was also designed by our group.

Now before designing our own ALM technique, we did research on existing techniques which basically could be divided in two types: tree first and mesh first, each having its own pros and cons. While designing our technique we tried to converge the pros of the two types while avoiding cons of either. To do this we introduced the concepts of sub-streams. By doing so, we improve the capability of system to gracefully handle leaving of network nodes in between or abrupt failure of network nodes. We implement this concept by designing our entire application in three modules: server module, client module and bandwidth test module.

The whole working of our project, our concept, our research is explained in the project document which can be found here.

Alternatively, you can view the presentation which does the samehere.

Moving on to the screenshots of our application in action.

1. Selecting the media source file to be multicast:Image



2. Editing configuration settings at the server:Image



3.Administrator console of the server:Image



4. Client User Interface:Image



5. Streaming of Video at Client:Image



6. Administrator console of Bandwidth Test Server:Image




That’s it. Hope you like one more of my cool stuff. Signing off.


(Project Made by: Ankit Deliwala, Ashish Bagade, C V Sashank, Girish Patil, Ritesh Bhatkar)

Web Based Email Client

“Web Based Email Client” is web application which facilitates concurrent email access for users with multiple email accounts. It is deployed as web application, which allows the user to access all his email accounts at one single place on Internet. User just needs to create an account and configure the email accounts that user possess. Once configured, the configuration information is maintained online in database, which is remotely accessible from any system with Internet connection.

Here are snapshots of the application in action to give you an idea about how it works and what it is:


The Login Screens


Welcome Screen


Adding Account


Sending Mail(Notice the drop-down for the “FROM” text-box. You select from the the list of accounts you have added)

             ImageImageImageAdding contacts

(Project Developed By: Ankit Deliwala, C V Sashank, Girish Patil)