Archive for the ‘Games’ Category

Power Glove Updates, Maker Faire Bay Area

Sunday, May 24th, 2009

Over the past few weeks I've been working on some improvements and extensions to my Power Glove 20th Anniversary Edition. On the tech side of things, I replaced the ugly 9V battery I was using with a low-profile, rechargeable Lithium-Polymer battery. I've updated the steps in the Instructable with new pictures and instructions.

I also re-wrote my Java-Unity bridge using a UDP socket. This is a lot more elegant than the text file approach I had been using before. Now the Java program acts as a server, reading in serial data from Bluetooth and broadcasting each line as a UDP packet. The Unity input manager then reads the UDP packets and parses the actual sensor values. This should reduce disk writes, and is more reliable, so I don't have to reset the Java bridge as often. I've updated the code bundle with the new Java and Unity source code.

See me at Maker Faire!

The other big news is that I'm going to be exhibiting at Maker Faire Bay Area! Maker Faire is one of my favorite gatherings -- a fantastic nexus of creative people making wonderful things. If you're in the Bay Area, you can come try the Power Glove out for yourself this weekend, May 30-31, at the San Mateo County Expo Center!

As a bonus for Maker Faire attendees, I've finished adding Power Glove support to our most popular Blurst game, Off-Road Velociraptor Safari! I recorded a demo video to show it off:

Make the Future You Imagined: The Power Glove -- 20th Anniversary Edition

Friday, April 3rd, 2009

I always loved the Nintendo Power Glove. Not because it was a fun or useful peripheral -- it wasn't. In fact it wasn't bad, as Lucas asserted, it was absolutely terrible. Only two games were ever made to work with it -- Super Glove Ball and Bad Street Brawler. You could use it with other NES games of course, but it was just an obfuscated controller. Plus, it was horribly imprecise, and since it required a sensor bar to find its orientation, you had to hold your hand at shoulder level all the time. No, I loved the Power Glove for what it represented -- a precursor to virtual reality, a way for humans to directly manipulate computers, like an artifact from some sort of alternate future Earth.

I realized one day that we're actually living in that future. It doesn't look the same as we imagined it, but the necessary elements are all there. It's been 20 years now since Mattel released the Power Glove, in 1989. Especially in the last few years, the availability of sophisticated sensing equipment to hardware hackers has grown by leaps and bounds. Technology like programmable microcontrollers, accelerometers, and Bluetooth are readily available -- and cheap. In short, the time is ripe to re-make the Power Glove -- and make it right.

Over the past month, I've done just that. I stripped the guts out of an original Power Glove, replaced the ultrasonic sensors with an accelerometer, the proprietary microcontroller with an open-source Arduino, and the wired connection with Bluetooth. I wrote an input manager to get the data into Unity, and hooked it up to the boxing game Adam and I are making for iPhone, Touch KO. What's more, I've documented the whole process so that you can make you own!

I have a video, photos, and an instructable of the build process, and have the schematic, Arduino, and Unity code available for download. You can read the data in any way you like, but since many software packages don't have direct access to serial ports (Unity included), I've also written a small Java program that takes the input and dumps it directly to a text file.

Side note: Since my last post I tried and now totally dig twitter. Follow me.

Integrating Cocoa With Unity iPhone

Friday, January 23rd, 2009

I just finished writing up a post for the Flashbang Technology Blog about integrating custom Cocoa content with Unity iPhone projects. I spent about two and a half weeks in December developing a system that would work for all of our Unity iPhone projects. The goal was to allow me to develop all of our menus and other non-gameplay content using Apple's super-slick UI development application, Interface Builder. I used this in !Rebolt! and managed to finish all the menus in a couple days. Here's a snippet:

So I set a goal: Make an easily extensible Cocoa frontend for Unity iPhone that supports Blurst logins and supports any menus we might want. It should work for any project we add it to, so we don’t have to do tons of custom code for every game. Further, it should require changing as little of ReJ’s existing Objective-C AppController code as possible, in the event that it changed in a later build. Finally, I wanted an easy way to add my additional files to the XCode project once I created a build. This is particularly important because, to maintain rapid iteration times, there must be a minimal amount we have to do in XCode between creating a build and installing that build on the phone.

You can read my full article at technology.blurst.com.

!Rebolt! nearing completion

Saturday, December 6th, 2008

Just a quick update on !Rebolt!, the excellent little robot-combat game Adam and I have been working on the last couple months. We're just about done, having spent a good deal of time optimizing the game for the phone. I've been pretty much eating, sleeping, and breathing iPhone since we got Unity's first beta. We both love how it's been coming along, and I've just spent the last couple weeks integrating login for Flashbang's Blurst.com accounts. You'll be able to save your high scores and track your achievements online using the same kickass system (and account!) we developed for Off-road Velociraptor Safari. Here's the final !Rebolt! trailer, which Adam whipped up today:

We're also releasing another iPhone game, Raptor Copter, simultaneously, along with our new web game, Minotaur China Shop. That's three games being released in one month, oi am I gonna need some vacation in December!

More robot-detonating action!

Monday, October 13th, 2008

Adam and I have been hard at work continuing development of our robot game the last couple weeks, which we are now calling !Rebolt! A lot of this has been simply fleshing out gameplay flow (doing the weapon equip menu, etc), and optimizations to make it run well on the iPhone. However, we've also made two new weapons, the Torch, a little flamethrower, and the awe-inspiring Singularity Cannon, a weapon which rips small black holes in the fabric of space, crushing your enemies inside. I made a new video last night to show off this piece of work:


!Rebolt! Singularity Cannon Trailer from Matt Mechtley on Vimeo.

Yes, that's part of the Hubble Ultra-Deep Field image inside the black hole. ;)

TIGJam 2008

Tuesday, September 30th, 2008

This last weekend saw a gathering of indie video game developers for the inaugural TIGJam, hosted by TIGSource and us at Flashbang Studios. 20 indie developers from all over the US and Canada came together for 72 hours of game-making with our comrades in arms!

Armed with a bottle of guarana pills, the company of awesome friends, and the promise of a fabulous Indian dinner as culmination, I set out with my brother Adam to start a project from scratch and finish as much as possible. We decided on a game for the iPhone, made using the beta for Unity's iPhone version of their software. Our game is a 3D customizable robot brawler, in the spirit of the fantastic Sega Genesis game Cyborg Justice.

After three days of TIGJam, we ended up with a nicely fleshed-out prototype, including enemy robots, three selectable weapons (grabber arm, minigun, and rocket launcher), and, of course, exploding barrels. We made this video earlier today, showcasing a total of four days of work:


TIGJam 2008 - Robot Rampage! from Adam Mechtley on Vimeo.

There were some other fantastic games being worked on during the jam, including a number for the upcoming Gamma 3D showcase. My personal favorite (other than of course World of Goo, which Kyle and Ron of 2D Boy were working on) was Alec Holowka and Adam Saltsman's curling game, which looks completely sick after only three days of work!

Photos from the jam are up in my Flickr stream. Adam and I plan to be finished with our robot project by the time that Unity iPhone reaches release -- I'll update as it comes along!

Obsessive Compulsive Penguin Simulator

Tuesday, March 25th, 2008

The Independent Gaming Source just finished up a competition based on the Video Game Name Generator. The rules:

1. First, open up the Video Game Name Generator.
2. Next, find a name for the game that you want to make.
(Peeing your pants out of mirth is recommended during this part.)
3. Finally, MAKE THAT GAME.
Optional Secondary Objective: BRAND LEADERSHIP

My brother/coworker Adam and I decided we'd try our hand at one. We picked Obsessive Compulsive Penguin Simulator, for obvious reasons. You play as a penguin with OCD, who must stamp down accumulating snow drifts, in order to keep the ground even for all! To promote Brand Leadership, I also made this stunning promotional artwork:

OC Penguin Sim Brand Leadership

The competition lasted three weeks, but we spent a total of about five days working on it -- three of Flashbang's experimental Fridays and then this last weekend. Now go play the game -- it plays in-browser for OS X and Windows!

This Makes It All Worthwhile

Monday, March 17th, 2008

We recently received this email at Flashbang, in reference to our game Off-Road Velociraptor Safari:

From: David Hone IVPP
Date: Mar 16, 2008 3:17 AM
Subject: Off-Road Velociraptor Safari
To: contact@flashbangstudios.com

Hi Guys, great game - I have been playing for weeks. I just wanted to say that, believe it or not, I am a palaeontologist and I happen to work primarily on dromaeosaurs and pterosaurs - in other words, among other things i am an expert on Velociraptor and Pterandon. Yes, really.

And can be (and generally am) a pedantic sod, but in general your reconstructions of both are great. Very detailed and very accurate and that is one of the reasons I like playing (OK, so running them over is cool too... ;-) I get riled constantly by bad reconstructions of dinosaurs and especially pterosaurs that are generally being done by supposed experts and making a complete hash of even the basics, so it is a delight to see these done so well! Great stuff.

Anyway, thanks for a fun game and if by chance you do want some advice on future dinosaurs I am happy to help out!

Cheers,

Dave

David Hone works for the University of Bristol, UK. I am pleasantly amazed!

Drunkpong: An excuse to make a USB Breathalyzer

Tuesday, February 19th, 2008

You're throwing a party for the Game Developers Conference and you think it would be cool to have a custom game. What's the natural response? How about Pong that adapts its difficulty based on how drunk you are!

Among my numerous interests is custom hardware for games and interactive art. When my friend and coworker Matthew Wegner suggested the idea of making a breathalyzer peripheral for a party game at GDC, how could I respond with anything but, "Hahahaha, Hells YES! I am ON that!"

I started by researching the various consumer breathalyzers. In the end I decided to hack the Alcoscan AL2500. It provides readings within a reasonable error tolerance and costs about $30 on Amazon -- much cheaper than fuel cell meters. Upon opening it up, I found that it's set up pretty simply. It's driven by an ATMEGA48V-10AU microcontroller, with the semiconductor sensor connected to an analog input, and digital outputs that drive a simple seven-segment style LCD.

Alcoscan AL2500 BreathalyzerBoard, back. Simple AVR microcontroller with sensor as an analog input and LCD as digital outputs

As I saw it, there were basically two options for obtaining the data from the breathalyzer and sending it to the computer. On the one hand, you could read the analog value from the breath sensor, or on the other hand, you could reconstruct the LCD digits from the digital outputs. Since the analog circuit driving the sensor was a little complicated and beyond my expertise (and I'd procrastinated enough that learning more before GDC was out of the question), I decided to reconstruct digits. I first followed traces on the PCB to find which pins on the microcontroller were driving the LCD. I then systematically grounded each pin while turning the unit on to determine which pins drove which LCD segments.

Mapping out which pins control which LCD segmentsPin cross reference for AVR microcontroller and LCD

I then soldered wires to the relevant LCD outputs on the board (the connectors were nice and big compared to the microcontroller pins). I spent a bit of time determining which outputs from the LCD I wanted to read. As it turns out, you only need five segments from a seven-segment digit to determine the numerical value of the digit -- the bottom and bottom right segments are superfluous (see Matt Mets's recent post, who solved the problem independently). I ran a total of eleven wires -- two digits for the BAC level and one wire for the "Wait" indicator -- into digital inputs on an Arduino Diecimila. The Arduino code ended up pretty simple -- it reconstructs two digits and the status of the "Wait" indicator and transmits these serially via USB.

You only need to observe five segments of a seven-segment display to know which number is displayedSoldering more wires - first digit done

I then read the serial data in using the Java RXTX library and spit it into a text file, which I then read in from Unity. The game then makes the paddle size larger the drunker you are!

Waiting for the player to use the breathalyzerPlaying with Player 1 significantly drunk

The hardware is of course begging to be used in other ways -- how about a program that locks you out of Ecto and your forum accounts when you're right trashed? No more embarrassing comments that you can't take back! I may go back and make a more sophisticated game in the future -- Pong was about the right scope for the single day of development time I had left after handling the hardware and serial transmission!

I'll have the game up for play at the 9Bit indie games party Tuesday night -- if you're at GDC just find folks from Flashbang, Gastronaut, or ThatGameCompany to get an invite and drink tickets! I'll post an Instructable and some more information about the software when time permits. Extra special thanks to Becky Stern and Matt Mets for their advising on the hardware interface!