Brooke Valentine’s Celebrity Girl Fight Game
If you made something that was used by over Ten Million people, would you/it be a success?
Over the last 10 years I have made countless Flash games for various agencies or independent artists. I do the job, get paid pittance and move on. Sometimes they barley rise to any notable or worthy existence and other’s get viral and do well for a while.
From time to time I perform various searches out of curiosity to see if anything still lives. Today I thought I would hunt down a game I made back in 2007 for Brooke Valentine called Celebrity Girlfight. It’s a boxing game where you battle against Paris Hilton, Jennifer Lopez, Lindsay Lohan, Lil Kim, Beyonce Knowles and Ciara. I was stunned to see “About 691,000 results” from Google. Clicking on the first result brings me to http://www.y8.com. It’s one of those Flash game sites that collects and offers them out for free but laden with advertisement. $$$
On this one site the game had been played 2,371,316 times with 110,043 positive votes (87.15%) vs. 16,224 negative. Over two million, wow!, I continue through one whole page of Google results, 10,000, 9,000, 20,000 plays, on and on and on. I bet if I was to go through more of the sites, the count would exceed ten million. “That’s awesome” I thought.
Now in most situations, the Flash programmer does not put his name on the game and remains anonymous, this is fine, I realize the selling point here is the artist, but I thought it would make an interesting blog post from the perspective of a developer. If I had 1¢ for every time it was played I could have made upwards of $100,000.
Food for thought.
Related Posts:
Laser Touch Table.
Well, the lasers, projector, rear projection screen have all arrived. Just waiting on the 720n IR filter for the camera and it’s time to hook it all up. I can’t wait! During the dead air time I have been porting some of my Flash experiments to work with Touché
Stay tuned.
Related Posts:
iPhone Controlling Flash with TUIO and UDP help
I am in the middle of constructing a FTIR table, I am going with the laser approach after less than satisfactory results using Infra Red LED’s. It’s going well and I have had some success with Fiducial tracking using my infra red modded webcam cam, plexiglass and such. I had been building the apps in Quartz Composer but I am not too familiar with Quartz yet.
Until my lasers arrive I decided to try and get some output from my iPhone, after all it’s a great touch screen and switch to building apps in Flash, which I know better.
How do you get Camera or iPhone touch data out over the network to your MacBook and then have Flash read it??? Long story. If you are interested in going down this rabbit hole, check out these links.
http://reactivision.sourceforge.net/
http://www.tuio.org/?software
Georg Kaindl’s UDP Flash Bridge video
http://bubblebird.at/tuioflash/
http://pixelverse.org/iphone/oscemote/
And for lasers: http://aixiz.globat.com/
As I recently discovered, there are a few different methods of tracking and a bunch of lib’s on google code for such things.
After trying most of them and trying a couple of different table designs, I decided to go with http://gkaindl.com/software/udp-flashlc-bridge for UDP speed and http://bubblebird.at/tuioflash/tuio-as3-library/ for TUIO or Blob tracking in Flash and http://pixelverse.org/iphone/oscemote/ to track iPhone touches.
I find that sending the data over UDP using udp-flashlc-bridge is way faster and more efficient than XML- or TCP-based approaches. There is virtually no lag at all.
I modded my sea creature to work with a simple touch setup. Here is a crappy movie for now. I will do some nicer movies when I finish my table.
height="256" codebase='http://www.apple.com/qtactivex/qtplugin.cab'>
controller="true" loop="true" pluginspage='http://www.apple.com/quicktime/download/'>The next thing was to get some multi touch functionality. This one took some head scratching and it still needs refinement. I started thinking about moving photos around, rotating, scaling and such. I realized I needed special movieClip class I had created for my last commercial Flash project. A movieClip class that can be assigned a dynamic registration point and it’s globalToLocal coords work no matter how deeply nested it lives. This allows for the first finger touch to be set as the registration point for the photo and the next touch to be used as the operator for scaling and rotating. Here is another crappy movie.
height="256" codebase='http://www.apple.com/qtactivex/qtplugin.cab'>
controller="true" loop="true" pluginspage='http://www.apple.com/quicktime/download/'>Related Posts:
Audio Spectrum Analysis – Output to JSON File – Flash Tool
I have been unsuccessful so far in syncing animation drawn in Canvas using Processing js & audio played using the browser Audio tag with audio spectrum data I create from a ByteArray in Flash. It works in Flash due to the fact that the spectrum analysis and animation are executed together in an onEnterFrame event. The drawback to not having real time audio spectrum analysis from within the browser is the need to supply all the data to Processing js at initialization. It can be rather large and I have yet to perfect syncing the reading of the array with the current time of the audio. Some sort of progressive data stream and excellent timing system???
It may be I just have to wait until this feature is implemented into browsers. In the meantime, I thought I would post the source for the the Spectrum Analysis tool for greater minds than myself, wanting a quick way to get some data from their favorite tune and perhaps figure out a way to use it in a optimized fashion.
it’s very simple and outputs JSON with Left and Right channels to floating point numbers between 0 and 1. You can use it to make stuff move to the groove. It has a simple execution of this in the ui for you to see. Download the flash and php and throw it on your local server.
The process of accessing audio data from within the browser is quite beyond me, I really just want to see what I can create visually in Processing js and Canvas. Until it’s and easy to use API, I just have to keep looking for a way to get spectrum data quickly, hence this contraption. Have fun.
Download Source
This demo does not actually write the data for fear of abuse, but this is a sample of the output.
P.S. Carving Powder mp3 is one of my own creations.
Related Posts:
See Creature
Took a day to extend the tentacle class to work on 360° and secondary motion from a parent node, but here it is, the first critter for my ocean. Thanks to Keith Peters book ActionScript 3 Animation, useful formulas section for getting me through this. It kicked my butt and fried my brain, but it’s so clear now. Onwards!
Related Posts:
Logarithmic Spirals
Spent last evening coding some circles & spirals in Flash. I love spirals!
A logarithmic spiral, equiangular spiral or growth spiral is a special kind of spiral curve which often appears in nature. The logarithmic spiral was first described by Descartes and later extensively investigated by Jakob Bernoulli, who called it Spira mirabilis, “the marvelous spiral”.
This kind of simple Math and lengthy tweaking of geometry animation is akin to whittling a piece of wood for me, whenever I have some free time and get the urge to write some code with no particular objective. It’s very relaxing.
It went through numerous iterations over the weekend and truly came to life when I started using Vectors and local3DToGlobal to convert the x,y,z coords to draw the 2D lines. Throwing in some random offsets from time to time helps keep it interesting. I used Math.sin and Math.cos a lot with random offsets to create smooth undulating motion that sometimes reminds me of jelly fish or some sort of under water plant waving around in the current. Other times it takes on a galaxy formation.
Watch it for 10 minutes or so and you will see some interesting spiral explosions. I can stare at it for 20-30 minutes.
Related Posts:
Charter For Compassion
My latest Flash project launched November 12 was the Charter For Compassion site. The “Collective” is a growing list of compassionate acts done by people all over the globe.
http://charterforcompassion.org/
Over 30,000 people signed up in a week and the collective is growing. The challenges for this Flash project were multi lingual capabilities and the management of infinite data, visualized in a space governed by physics and chock full of user interaction. Each act is like a mini bio, complete with image, video, text, links, buttons etc. Far too much just to load in at once and throw around. I devised a system of progressively loading in chunks, left and right, so the user could move in a linear or non linear fashion through the collective. All the while, maintaining a physical position within the data. The collective can also be launched from an entry point via sharing on numerous networks and thus be capable of non linear progression, etc.
So visit the site, sign up and try it out. Here is a link to a spot on the BBC world news with Karen Armstrong talking about the Charter.
http://news.bbc.co.uk/2/hi/programmes/world_news_america/8358005.stm
Related Posts:
Underwater environment with actionscript
I have had some ideas recently about creating an underwater type environment with actionscript. Not a fish tank thing. Ideally I would like deep sea primitive life forms, lots of environment noise from caustics, particles of plankton, light scattering etc.
Lots of layers like this would quickly bog down the flash player. Careful thought and usage would be required to strike a balance, switching out the objects in motion.
The particles, bubbles etc. would be easy enough. The Math & drawing required for the creatures would be more challenging. This first class written is for things like seaweed or Jellyfish tentacles. It makes use of the drawing API, curveTo, etc. our old friends cosine and sine and is completely random each time it is generated. Stay tuned to the evolution.
Related Posts:
Actionscript physics study.
A kinda sorta attempt at making a physics engine. With a Rube Goldberg machine in mind, I created this room with various widgets that demonstrate physics techniques I have picked up over the last couple of years. Far from finished, I rather doubt I will. I think I got my fix.
Related Posts:
Artbox Portfolio Manager
Artbox.com launched a few weeks back. The site is an online toolbox to help you to produce, promote and sell your works. My part was to build a works organizer in Flash. The tool can view images, audio, video and text works. It allows you to manage your work into sets, add keywords and set permissions etc. You will have to sign up in order to see it in action.
Related Posts:
Growing trees with Actionscript
Some tree classes I wrote in AS3 to grow trees. This is my like my 10th attempt at creating algorithms that can grow a tree that looks like a real tree and executes fast. I think I am done with trees for a while. Click anywhere on the scene below to grow, mouse wheel to clear scene.
Related Posts:
Flash computeSpectrum
Messing around with the AS3 SoundMixer.computeSpectrum. Wow, fun. The mp3 sound controls the visibility and placement of the dancers on a disco floor.
Related Posts:
American Idol® Elimination Game
A few weeks ago we were contracted to build
http://idolelimination.americanidol.com. The object, to let someone possibly win one million dollars if they could predict the exact elimination sequence of the final 24 American Idol® hopefulls.
The proccess is like this:
Person buys Nestlé candy bar with the American Idol® logo on it. Inside the wrapper is a game code.
Person goes to the site and signs up for a free account, logs in and enters the code into their codebank. There is no limit to the amount of codes they can store but can only create one new bracket per email address per code per day.
Person creates a new bracket in the American Idol® Elimination Flash Game and saves it. There is a time window in witch the person can come back and make edits to the bracket.
Process is simple enough. Developing, as you can imagine was a little more involved. Screenshots here.
Related Posts:
Actionscript Motion Tracking part 2
So this weekend I decided to make something somewhat useful with my AS3 motion tracking. A kids game. I have two little boys. It’s simple but they had a blast. First off I used a projector to put it up on the wall so the kids could interact with their full bodies. It’s 3D twister. I will get some video of that soon. For now here is a basic video.
The object is to touch the letter given on the big red ball without touching other balls which results in loosing a point. Perfect score is 10. None of us achieved this but we did get a decent yoga style workout. See it on YouTube.






