The Problem With Being a Composer AND a Programmer

Posted April 7, 2012

I was editing dynamics and articulations in a piece today. One of the things I think about most when working in creative software is usability issues. I’m starting a small collection of notes detailing what I like and don’t like about working with music notation software. Someday soon I’ll write a post about it. In the meantime, here’s some stream–of-consciousness revealing the road this thinking often leads down.

Read more

Sentient (Play Eternal)

Sentient (Play Eternal) from Michael Bartnett on Vimeo.

Sentient is an unpublished PSN/XBLA title that I worked on from April to August 2011 with the cool guys at Play Eternal. Our audio team consisted of Mike Worth and Adam Schneider working on music and sound design, with me implementing the FMOD Designer API into the Vision Engine and Scaleform.

Although Vision already had a robust audio backend, we really wanted to be able to use FMOD Designer, so I did the programming to replace Vision’s default FMOD implementation and add support for FMOD Designer in the level editor. Since we were using Scaleform for UI, I also needed to make sure that the audio encoded in our FLV cutscenes was going through our instance of FMOD. We had the opportunity to do a small writeup on our audio system on Trinigy’s blog (since Trinigy was recently bought by Havok, their developer blog post series appears to have disappeared). That was then linked to on for the article called “Tuning In – Combining Vision with Sound 15-06-2011). I’m a huge fan of the design of FMOD’s API–it’s just so clean and conceptually clear! Suffice it to say, I was on cloud nine when I saw they had linked our humble post.

Game Audio Jams [and FMOD Designer for Unity]

Posted February 26, 2012

Wow, it’s been a while since I’ve posted. I suppose I really didn’t know what to post about before, but now I do! Today I’m writing about what NGAMA (NYU Game Audio and Music Association, updated website coming soon hopefully) did yesterday (that would be Saturday, February 25th 2012): a Game Audio Jam! Read on if you’re intrigued.

Read more

Roll’em Golem – GGJ 2012

Rollem Golem Screenshot

Click the image to go to a page where you can play the game, read the instructions, or visit our Global Game Jam page to download a build. This game is compiled against Flash Player 11. This version is what we submitted on the final day of jamming. There’s another one in the works with cleaned up effects, many more levels, new backgrounds, and “sexier codez” (scientific term).

The 2012 Global Game Jam was a lot of fun. At first the theme, Ouroboros, had everyone confused, but before long plentiful tie-ins to game mechanics seemed to abound. I worked with Stefan Woskowiak, Kendall Noble, David Turchin, and Burak Karakas again. We were also fortunate to have Rahil Patel join us on Saturday.

For this game, I had a much more clearly defined role for myself. Burak makes awesome music, so we decided to just have him compose all the tunes. Then, he and I split up the work for sound effects. He took a little more, because I needed time to hook up the audio code. I also took on the responsibility of getting DAME working with our levels. It wasn’t terribly sophisticated code, but it allowed Stefan to stay up all night clicking together little tilemaps that could get turned into levels for the game.

Read on to hear about the audio implementation.

Read more

MIDIdial (HackNY Fall 2011 Hackathon

The MIDIdial homepage:

The weekend of October 2nd last year me and my friend Dalia Coss rolled up to the HackNY 2011 Fall Hackathon, and won. Our hack was a webserver that would interact with Twilio and allow you to transform your phone into a MIDI controller via a touch tone menu. It doesn’t even have to be a cell phone. We’d like to thank Andrew Montalenti for showing us the Tornado framework for Python and Rob Spectre for letting us bug him all night with questions about the Twilio API. Also, shout out to Hacker League for making an awesome hackathon platform and testing it in the field for the first time there.

It was called midiPhon originally but some people with an existing iPhone app named midiPhon sent us a nastygram, so we’ve since renamed it to MIDIdial. We got some fun press for it, people tweeted how thought they cool it was, and we were mentioned in a couple of articles.  Read on for info about how we did it.

Read more

World of Spacecraft: Extinction – GGJ 2011

This year’s Global Game Jam proved to be another awesome time. I had the pleasure of working with Stefan Woskowiak, David Turchin, Alex Krasij, Zhaowen Zeng, Kendall Noble, Athena Anderson, and Burak Karakas. And we ROCKED it. In fact, although we didn’t get any awards this year, we were invited by Arthur Ward to show off our game at Babycastles’ “Home Sweet Babycastles” exhibition/concert/crazy chiptune madness game party. Somewhere (Athena’s got it) there’s a picture of Ary Warnaar from Anamanaguchi playing our game and having a great time doing so.

The game is called World of Spacecraft: Extinction. And you can play it by clicking on the image below:

Read more

Good book: C++ for Game Programmers

Posted November 26, 2010

Mike Dickheiser’s book, C++ for Game Programmers is great. It covers everything I was curious about in C++ in a way that relates to game programming.
Read more

Crawling back to C++

Posted November 5, 2010

Today I recently started up C++ again. I wanted to implement FMOD in a game that Nocturnal Minds is working on. Read more

XACT Audio Tools Are Ridiculous

Posted July 2, 2010

According to the TorqueX documentation, at least.

The offending section is in the TorqueX Core Reference under the “SoundGroup” class section. Unfortunately you’ll have to just Ctrl-Find it, since the TorqueX Docs site doesn’t have any links to specific classes, unlike the nice Sun and MSDN API pages we’re all used to. Funny that GarageGames judges the ease-of-use of Microsoft’s tools while TGE 1.4 and its (lack of) documentation still haunts their past. Excerpt after the jump.

Read more

Reverser!, no scratch that, Deceptive Platformer again

Update (10/8/2010): Deceptive Platformer: BABYCASTLES EDITION is the build that we had on display for Babycastles at Chashama. It takes the newer music system, but retains the old sequence of 4 stages. We know you love that last jump at the end–it’s back! Also, we had tried to make a less obvious name than Deceptive Platformer, but Reverser never seemed to stick.

Here is the game I’ve been working on polishing for the last couple of weeks.  Reverser Deceptive Platformer started as a Global Game Jam game, winning Best Overall Game at the NYU Jam Site. You can check out our GGJ Profile, play the old version, or click the link below this screenshot to play the latest version. If you play the work in progress, be sure to see what happens if you keep falling off the platforms during the first couple of levels. If you manage to get to the advanced levels, I’m afraid the “finale” music will loop continuously, as these levels were added to the build after the music states had been written.

Click Here To Play Work-In-Progress Version of Reverser

Read more