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