Monday, August 2, 2010

Continued idea

Hi all,

I have just come back from Siggraph, where they presented a bubble making machine, which gave me an awesome (?) idea how to take your system to the next level:

Instead of having virtual bubbles on a screen to pop, have _real_ bubbles:
a bubble making machines makes bubbles, out of soap, that has a little bit of fluorescent ink in it, which you can buy as ink for safety markings etc. Then there is a camera with a filter that detects the bubbles and tracks them, as they come out nicely in the camera when illuminated with IR or black light, so nobody can see! And when you pop the bubbles, a loud sound is played! The higher the bubbles are in the air, the higher the player has to jump, the more points you get.


Also, I found this company that might be interesting to you:
http://penteractive.us

Cheers,
F

Friday, May 28, 2010

How to Play Bubble Popper.

Monday, May 24, 2010

Um Nick in place of the current code regarding the multiple players etc try this instead. I have no idea if its going to work or not. Ill be in the games lab today if you want me to give you my copy.

function codeStuff():void {
ExternalInterface.addCallback("bubblepop",bubblepop);
}

var objs:Array;
var pt:Point = new Point();

function bubblepop (posx:int,posy:int, player:int):void {
pt.x = posx; pt.y = posy;
objs = stage.getObjectsUnderPoint(pt).reverse();
for each (var obj:Object in objs) {
if (obj is InteractiveObject && obj.mouseEnabled) {
pt = obj.globalToLocal(pt);
obj.dispatchEvent(new MouseEvent(MouseEvent.CLICK,true,false,pt.x,pt.y));
break;
}
}
if(player == 0) {
thisBall.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall2.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall3.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall4.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall5.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall6.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
}

if(player == 1) {
thisBall.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall2.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall3.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall4.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall5.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall6.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
}
}

P.S. if we cant get it to work my simple idea would be two have two different coloured objects (eg red and blue) and player 1 must hit red and player 2 must hit blue because all this code is confusing :P

Thursday, May 20, 2010

Hey Guys,

I am putting the website together for our exertion game and i will also try redesign our bubble pop identity and give it a different look and maybe even redesign the poster if i have time.

So for the website i was wondering if you guys wanted to have the url www.bubblepop.com.au?
I am a hosting reseller so i can host it for free but we have to buy the domain name. so if you guys are happy, do you want to all put in $7 for a domain name which will run for 2 years.
If you can all let me know by the weekend that would be great. Thanks, Sev

Monday, May 17, 2010

Where I'm at

Ok so I've worked on as much of the game as possible, implementing a few of the ideas.

Here is my current version of it (ignore the bad graphics etc)


For the multiplayer mode I am hoping that the other program can tell the flash program which player number has clicked. Heres a snippet of that area of the code:


var PlayerNumber:Mouse = new Mouse();
if(PlayerNumber == 1) {
thisBall.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall2.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall3.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall4.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall5.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
thisBall6.addEventListener(MouseEvent.CLICK, thisBallClickHandler);
}

function thisBallClickHandler(event:MouseEvent):void {

hits++;
updateStats();

thisBall.hit=1;
thisBall2.hit=1;
thisBall3.hit=1;
thisBall4.hit=1;
thisBall5.hit=1;
thisBall6.hit=1;

}

var PlayerNumber:Mouse = new Mouse();
if(PlayerNumber == 2) {
thisBall.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall2.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall3.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall4.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall5.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
thisBall6.addEventListener(MouseEvent.CLICK, thisBallClickHandler2);
}

function thisBallClickHandler2(event:MouseEvent):void {

hits2++;
updateStats2();

thisBall.hit=1;
thisBall2.hit=1;
thisBall3.hit=1;
thisBall4.hit=1;
thisBall5.hit=1;
thisBall6.hit=1;

}


I'm hoping that instead of using the Mouse function it will import the other programs code etc. But really that part isn't something I'm familiar with. Check out the .fla file and play around with the code if you like
Also the .swf file may be a bit too large to run freely on Nick's laptop so we may need to find something better

Saturday, May 8, 2010

Multiplayer Detection

I have been looking into setting up software that allows individual players to be differentiated from each other. This second part of this post is mostly aimed at Daniel, because he has been doing the flash code. It consists of two parts:

Modified Mitt

The mitts will have a timing circuit mounted on them. When the player taps a bubble, the mitt IR LED will be on for a specific amount of time. The time will be different for each mitt, allowing individual mitts to be differentiated. Because the Wiimote IR camera refreshes at 100HZ, one mitt will be on for about 4/100th of a second, while the second will be on for about 15/100th of a second. This allows the software to know which mitt each IR spot is. It may even be possible to add a third or fourth mitt if we test it out the pulse lengths first.

Modified Software

The Wiimote Whiteboard software we were using was set into mouse cursor mode for our original game. This meant that only one bubble could be popped at a time, and that it wasn't possible to differentiate between players. Thus a mouse click will not function properly to pop a bubble with multiple players. The Wiimote software is written in C#, and I have looked at the source code. I can modify the software to track multiple IR spots. The issue is that the flash program will have to have a more complicated interface with the tracking software for it to work. In order for all the game calculations and logic to occur in the flash application, I think the best way for the C# software to talk to the flash program is for the C# software to just pass the player number and pixel location (in X,Y format, likely at 1024 x 768 resolution) of a mitten press to the flash app, with everything else being done in the flash app.

Here are some examples of adding .swf programs into .net framework applications, C# specifically.


Wednesday, May 5, 2010

Updates!

Well we've all been busy with other assignments lately but I made a few simple updates to the current version of the bubble popper and have a whole load more that I would like to add.

Currently I've added a simple 60 second count-down timer so that when the time runs out for the end of the round it goes back to the loading screen (for now).

Before I make any major updates I'd really like to get the multi-player scoring system working as I think the competitiveness between players really brought out the fun in the game. The only idea I can think of but haven't researched yet is to use coloured mitts with a webcam detecting the colour, but I'm not sure how to check which colour clicked on a bubble so I need some help there.

Other ideas I would like to implement once that is all finished are:

A choice of playing styles, such as Challenge Mode, Cooperative Mode and Time Trial Mode
Challenge Mode would be simply to pop more bubbles/other objects than your opponent
Cooperative Mode would be working as a team to hit a certain amount of bubbles per level before you run out of time.
Time Trial Mode would be to see how many bubbles you could pop in a set amount of time

Multiple levels with different objects, sounds backgrounds etc

Larger playing area (bigger the better) with more objects on the screen at a time

I think I had more ideas but I've forgotten them already :P Some of the ideas we got from the feedback 2 weeks ago were also good but I forgot those as well.

What else do you guys think needs improving/changing/replacing?

Saturday, April 24, 2010

hey guys, im putting a poster photo kind of thing together for our game. did anyone get some photos from that day? Sev

Tuesday, April 20, 2010

Bubble Popper.

Thursday, April 15, 2010

So, I think we did okay...


How many votes is that? I count forty eight.

Wednesday, April 14, 2010

Sunday, April 11, 2010

Ideas/Uses on Bubble Popper.

I like the idea of using a bent, concave, convex. A Sphere or Spheroid would just be crazy. Awesome crazy, from the outside. The downside is, if we would need more than 2-3 projectors to to a sphere bubble popper.

Also, how are we going to find a building or a street that is concave/convex or sphere/spheroid?

Another idea that I have: if we can use two projectors inside the end of a huge hallway or tunnel, and project against the front wall and the side walls, It would create the effect that the users have to run around and look around to pop this bubbles. If we added another dimension to the game now...

Imagine that we created another projector that screened at the floor, and the user can only walk/run certain parts on the floor, with moving platforms. In that way the player not only has to pop the bubbles, but also make sure that he is jumping and standing in this moving squares on the floor on front of the convex wall.

To simplify things, we could do this on a flat wall with one projector only, it would only mean that the projector would have project screen the floor as well too with moving squares/platforms, and would then create a "twister" feel where players have to fight for the standing square PLUS pop the bubbles. That would make things more challenging and complicated :P

We have gathered some items for the Bubble Popper and I have drawn on paper most of this ideas on how we are going to develop our game. Id like to share this pictures on the blog soon. A picture can make a thousand words... or at least in this point make a better explanation of what I have in mind.

Saturday, April 10, 2010

Solution for Projector Limitations.

Hey guys, I was just thinking, in order to make the game projection space wider and more difficult to traverse, what about if we projected onto a curved surface?

Whether the surface was concave or convex, it would still force the players to move around more. Concave would give the effect of the player being a bit surrounded by the bubbles, while convex would mean the players would need to step back a bit and look around the curvature to hunt for them. Either way, both surfaces would add a unique aspect to the gameplay. Heck, what if we projected the game directly downwards onto a sphere or spheroid? (Okay, I know I'm getting ahead of myself here, but seriously, think of how much more exciting it would be.)

We'd still have to test whether the one Wiimote would still be able to track all the action, but we can do that once we have the projector. We'd just need to project onto a bent piece of cardboard and see if it works. If it does, then we can play with the aspect ratio of the Flash game in order to get it right, but that shouldn't be too difficult. At least, not as difficult as hooking up four times the hardware!

So, what do you guys think?

Wednesday, April 7, 2010

Trying it out!

Wow, you really caught up! Well done! Sounds like you learned a lot from trying it out! Fantastic progress.
I can see this becoming fun!
If you want to borrow another projector, I can help you organize one. I also have RFID tags if that makes things easier.
Also, if max/msp does the recognition not good enough, you could try processing.org, that also has a nice vision library.
If you want to show your progress today in class, let me know.
Cant wai't to play it!
Floyd

Flash Dot v2

Links to the latest version (viewable and downloadable)

The code is all in place to trial our game, I don't think it can go any further in Flash and needs to be seen if it can work with the other programs that we have talked about.
(Graphics and animation can be polished later on)

http://www.maus-media.com/random_dot/random_dot3.swf

Tuesday, March 30, 2010

Bubble Pop - Preliminary Game Test

Hey guys.

Yesterday, Nick, Dan and I went to one of the lecture rooms to do a preliminary games test for Bubble Pop. Nick and Dan were the active game testers, whilst I moved a mouse cursor around on the projected screen as a substitute for the 'bubbles' that would appear intermittently.

 
Between keeping score, I also managed to take some notes, which provides us with useful feedback on the game we're trying to make.

Here are the suggestions, in no particular order:
  • The game should institute rounds of increasing difficulty.
  • Jumping to get the dot is much more fun than when doing so from a standing position.
  • It is much more fun to not know when the dot is about to appear.
  • A wider projection would be better, to institute more movement amongst players. Ideally, a full room with four walls and four projectors would be best, but that is unfeasible with our budget.
  • Bubble Pop could record player heights at the start by asking players to the wall and place their hands (mittens) on their head. This would inform the maximum bubble height.
  • Multiple bubbles would be more fun. Perhaps starting out with one bubble, then increasing the bubble amount and difficulty.
  • Bubbles occurring at very low points would add variation, and level the playing field for shorter players.
  • Bubbles start small and grow bigger. Bigger bubbles give higher points. This encourages players to move around for all bubbles, rather than just dominate one area.
Thanks for participating guys!

Flash Dot

http://www.easy-share.com/1909693056/random_dot.swf

Simple flash file that moves the dot randomly on click. The dot also slowly gets larger and moves slightly, its still a bit buggy and I will attempt to add more dots later on.
(The link probably wont work at RMIT since they dont like file sharing sites)


Monday, March 29, 2010

New Game Idea - Bubble Pop

Hey guys, here's a slightly updated version of the game idea from last Thursday:


Bubble Pop

How To Play

Each player (between 2-4) is given a pair of over-sized, brightly coloured mittens to wear. These players are thus identified by the colour of their mittens. The field of play is any area where the equipment may be set up so it faces a wall. The object of the game is for each player to wave their coloured gloves in front of the bubble(s) that appear randomly upon the wall, before anybody else does.When the mittens are waved in front of a bubble, the bubble pops, the colour of the mittens that popped it are detected, and a point is then awarded to the corresponding player.

How It Works

A ceiling mounted projector places the bubble images onto the wall. A digital camera is placed away from the field of play and facing the wall, but placed behind the players. This camera relays information to a nearby computer that uses Max MSP to detect the colour - and hence, position - of the mittens. When a mitten colour coincides with the placement of a bubble, the bubble pops, and a point is awarded to the player of the corresponding colour.


Are we all happy with this idea? Comments? Suggestions?

Wednesday, March 17, 2010

Try it out!

try it, videotape it, distribute it to others and see what they think!
If you are interested in shocks, see V5 mindscapes, I have 2 at home if you want to borrow.
Floyd

Monday, March 15, 2010

This idea popped into my head right as I was falling asleep, so we will see how good it appears when I am actually awake.

Basic Idea

The game is a running/agility competition. Imagine 2 parallel half-meter wide rectangular areas that are about 10 meters long. At either end of each of these rectangles are large quarter-meter diameter red buttons on the ground. The basic goal of the game is for each player to pick a rectangle, and run back and forth pushing the buttons on their corresponding rectangle more times than the other player. If you have ever played basketball and gone to training sessions, you will recognize the run back and forth and touch the lines on the court exercise is the same as my exertion game.

A Twist

This gameplay is simple, and doesn't really grab any part of the human psyche other than the "hard fun" beat the other player part. To fix this, there will be a little obstacle course in the middle of the rectangle. An IR array will be set up that the player must navigate to get to the other end of the rectangle. This array will be very simple, but will need to take some time (4-5 seconds) to get though. The punishment for breaking one of the IR beams (either running though the array or or making a mistake in the obstacle course) will be to receive an electric shock from a little electrode pair mounted on the player's arm. If the player really wanted to complete a loop quickly, they could run through the array, intentionally getting shocked in order to press the button faster. The shocks would get more and more powerful as the player ran through more times. The player would only get a minor shock for accidentally breaking the beam while contorting themselves in order to get through the array.

This arrangement adds more interest to the game on two levels. It allows players to feel a bit of schadenfreude when they see the other player getting shocked, but it also lends a sense of immediacy and adds adrenaline when the player really wants to run to the touch the button, but must carefully navigate the beams first in order to not get a painful shock.

If the gameplay works out, a social/team element can be added on top of this, taking advantage of the fun of watching other people getting shocked.

After seeing this video I realized that electrical shocks have many gameplay possibilities:

http://www.harcoslabs.com/mostpainful.html

Thursday, March 11, 2010

Dancinator

Awesome idea!

How do you test if this is any fun though without much effort?

I had an idea: I would start with the trampoline: go to kmart, buy a mini trampoline (you can even return it there), duck tape a wiimote to the bottom, and connect it to a sound making program like max/msp. then jump! See if it is fun just to jump around and hear different sounds! bring it in next week, you can demo that in 1 min! That might already be enough (at least for me and 10 year old kids!) to be fun and I am sure you'll come up with an even easier way!
Cheers,
Floyd

Exertion Game Idea - Dancinator

Note: If you cant be bothered with reading everything at least look on the final sketch and coloring on Dancinator on the very end of this Blog!

Dancinator or crazynator? I don't know what I was thinking when I was thinking over and over about this crazy combination of Simon, Twister and Dance Dance Revolution. For the people that are not sure what I am talking about, I will first explain this different games. I will also maybe include a (crazy) video game that I found entertaining and very fun to memorise with rhythm and music: Space Channel 5.

Before I explain the influences on where I got this ideas, and then putting toguether this exertion project, I think it will be unlikely that the group will like it, It would be a very expensive project to produce and really really hard to program and come up with the hardware needed to pull and put all this toguether. Still... I think its a great idea and id like to share what I had in mind in the last week just after the first Lecture with Floyd.

Simon.


This is a computer game where it repeats a secuence of colours and sounds by starting by one, and then complicating the sequence of colors/notes until the player finds a dificulty to remember the whole sequence and then he loses. How the sequence is created is by randomly choosing a color for every added note of the sequence. If the player presses the wrong button/color in the sequence it plays a error sound and it restarts.

In my project idea, the buttons would be place around the player in diferent 3 diferent levels and in 4 diferent directions (front, back, right and left)

The picture I suplied has 12 colours and its suposed to be a funny Photoshoped version, but its the one I have uploaded because I wanted my Project to be challenging and I thought that twelf buttons would to for the final project.

To try a virtual form of Simon: Play here

Twister


I supose that most of you have heard about Twister.
Twister is a large plastic mat that is placed on the floor. The Plastic Mat has four diferent colours and the users must touch the colours corresponding at what colour and feet or arm the spinner was randomly selected. The fact that the user must touch the colours with either hands or feet it is what I want to highlight.

Dance Dance Revolution


The player in DDR must dance on the keypads when the arrows on the screen meet the line. This is a physical exertion game because the Player has to dance in order to touch the arrows in time instead of pressing buttons.

Space Channel 5

Using a similar concept than Simon, but using a virtual on rails enviroment where the player (Ulala) needs to press the buttons in other that the aliens specify (the character dances when you press the buttons in correct order) in order to save the captured civilians and to shoot the Aliens. The game offered amazing soundtrack with a 70s sytle in the distance future. The game was very strange for most of my friends and could not capture what I felt when playing this game. It was very challenging because you had to press the buttons not only in order, but also in rhythm with the music.

To have a look on how Space Channel 5 was Look here
In this introduction video of Space Channel five the player presses all the buttons perfectly, but if the player does the wrong moves or loses the hears the music goes slower and less people you saved followed you. I would easily buy a re-realesed version

Now for the project I had in mind.

Dancinator

For now it looks like a set of lights or speakers. But the sketch idea is based on four poles/sticks that hold big enough to touch/kick/hit balls with lights and sounds and stands around in a circle. The Main Function of the device is to light up a color with rhythm and adding a secuence with time (like simon) The originatily (if you want to call that) with this Exertion Game idea, is that the player has to move up, down and with his/her legs and hands locate and press the diferent sensors in order. If the player presses the a button/ball in wrong order then the game system restarts with only a one sequence, and then adding up just how Simon works, but with having the buttons positioned in a 3d enviroment where it would cause great exercise, the players can practice some form of dance where the users have to repeat a sequence. Other people around can look at the players to groove and do moves while they rememember the other that they have to press the buttons/lights.

I also wanted to have Blind people and Deaf people in mind, So I had lights and individual speakers in each button. Also if the players want to take a diferent mode and challenge the player and self blind with a cloth to press the buttons in order without seeing.

This seems like a very big project but I am happy that I came up with this. Now I can concentrate to see the ideas that the rest of the team has and comment on what Project looks more realistic and easier to produce.

I also created a colored version of the Draft Sketch. I would be very happy if people had a look on the full version and gave me some constructive criticism! -Over and out ;)

At the moment it looks like a set of speakers, but its suposed to be semi transparent balls/buttons with lights and speakers inside, that sound for the sequence that the player must touch, and sounds when the player touches.

Note: I have been writing this up until really late and I think I am going to collapse. There must be a lot of grammatical/spelling errors. I would apreciate if anyone from my team can have a look! If not I shall edit this post sometime soon! Thx.

Wednesday, March 10, 2010

Exertion Game Idea - Gridball.

Nick and I ended up having an impromptu brainstorming session during the break today, and we ended up coming up with a game that we believe would be fun, but also within the realm of our technical capabilities (or at least within Nick's).

I will take it upon myself to describe the game idea, and leave the more technical explanation of how the equipment will work to Nick.


BASIC RULES:

The game involves a large, rectangular shaped 'goal' that is fitted with IR emitters along the inner side of its perimeter, and light emitting diodes (LEDs) along both facing sides. The IR emitters shoot beams left to right, and up and down, thus forming an invisible grid within the rectangular 'goal'.

The object of the game is to throw the ball through a specific point on the grid, which is indicated by four LED's that light up along the perimeter of the goal (N.B. One lit LED for each side of the rectangle). The intersection of these four points indicates the area where the player needs to throw the ball, and the accuracy of that throw is detected by the IR emitters.

The scoring system in Gridball is not about scoring points, but rather about avoiding penalties. Instead of starting with a score of zero and attempting to score as many points as possible before the time runs out, the players start with an identical amount of time, and their objective is to prevent their own timer from reaching zero before their opponent's does.

When the ball is on the player's side of the grid, their timer will begin counting down to zero, while their opponent's timer remains frozen until the ball is accurately passed back through the point specified on the grid goal.

Each time the ball passes through the correct point on the grid goal, the placement of the point changes. This means that the receiving player needs to stop and assess where they will need to throw the ball next.

Throwing the ball inaccurately results in a penalty that immediately deducts time from that player's timer.

When a player's timer reaches zero, that player loses and the game is over.


ADDITIONAL STRATEGIC ELEMENTS:

Each player has access to a button that is placed behind, and a significant distance away from, the grid goal. This button allows the player to actively change the point on the grid goal - albeit at random, and for a price.

Pressing the button affords the player the opportunity to ruin their opponents carefully aimed shots. By changing the point on the grid as the opponent's ball is in mid-air, the player ensures that his opponent incurs a penalty.

However, the price for pressing the button is an automatic deduction of time to the player. The amount of time deducted is effectively a transference of the total amount of time that the ball has been in the possession of the opponent for that round. That is, the player incurs the opponent's time deduction penalty upon themselves, in the hope that the penalty incurred upon their opponent by an inaccurate shot is greater.

This strategy is an effective way for a player to interrupt the flow of an opponent who consistently returns the ball quickly and accurately. However, players cannot continually linger by the button, as once the strategy is detected, there are a number of countermeasures:

A) The player does nothing, and simply waits until the penalty incurred by an inaccurate shot to be lesser than the penalty transferred to the opponent for pressing the button.

B) The player feints throwing the ball, attempting to trick the opponent into pressing the button needlessly, and thus ensuring a penalty to the opponent at no cost to the player.

C) The player gets as close as possible to the point and tries to throw the ball through quickly and suddenly, before the opponent presses the button.

D) Any combination of the above.


So, that's it! I hope this explanation has been clear and not too confusing. There is still room for improvement, but as it stands, I think this game would be pretty fun, if we could make it happen.

I was going to add some diagrams, but I'm pretty tired at the moment, so I'll try to add them later. Hopefully it all makes sense regardless.

Let me know your thoughts!

Welcome to the Team Gorilla development blog.

Here is the place to put forward ideas, discuss our thoughts, and generally just plan and refine our exertion game.

Looking forward to hearing from you all!