Here’s something different.
Ludum Dare 30 is this weekend. Hoo boy! Running that crazyfest is keeping me sooo busy. 🙂
I am a regular twitter user. I run a client (twhirl) in the corner of my right monitor, so for me it works like a weird combination of an IM client and RSS reader.
A couple days ago, I caught glance of this request from Noel Llopis (developer of Flower Garden, Dr. Seuss’ Lorax Garden, and the upcoming Casey’s Contraptions).
That’s a good question. As far as I know there’s no real “standard” achievement sound (unless you want to rip-off Microsoft). I made my own way back when I was doing the sound design for Smiles, and I think it’s pretty good. It’s toned at a rather high pitch, and does a good job cutting through any music and sound effects playing.
Listening to the sound, I think there’s a good chance I’d use it again in a future game, and why not share? That’s what I’m going to do, so here’s the Achievement unlock sound I created for Smiles (and Smiles HD).
Terms (December 1st, 2010): You are free to use this sound effect in any commercial or non-commercial work. It is not public domain (i.e. please link this article and not the file). I (Mike Kasprzak) retain ownership, but I offer it freely to anyone that wishes to use it. Attribution is not required, but I would greatly appreciate a nod or special thanks.
That should cover it. Feel free to share this with other developers, and hey, maybe as Noel suggested it might turn in to some sort of standard. 😉
Ranting… I’m sorry.
I suppose I’ve been “writing” music with trackers for about 13 years (Scream, Impulse, Modplug, Buzz, Renoise). Alas, my results have been less than satisfactory. I want to take this moment to apologize to everyone I ever recommended trackers to.
Sometime last month I set out to find a better music app. I’d already entered the world of VST’s thanks to Renoise, having put down a big $600 for Colossus. I’ve spent a lot of time in Adobe Audition (Cool Edit) over the years too, so that’s where I started. I wanted something akin to it’s multi-track view, that I could sequence midi in. I decided to give all the big name non proprietary apps a go (i.e. Pro Tools). FL Studio, Acid Pro, Sonar, and Live.
FL Studio, I love the synth VST’s it comes with. But I honestly got lost in the interface, trying to figure out how I was supposed to track stuff.
Sony’s Acid Pro was the easiest to get up to speed in. A good app. It generally did everything I was looking for exactly how I wanted it, scroll wheel and all. It can create “ghost clips” too (i.e. update the original, and all clones get the changes). However, I was having troubles using multiple Colossus instances.
I ended up going with Ableton Live. It’s certainly a qwirky program, doing just about everything in it’s own way (click+up/down to zoom, click+left/right to pan). It actually took a lot of effort to really understand how to work in the app. But it does so many things right for how I want to work. Cross platform, since I have this mindset that I want the option to go Mac one day. And the key point as I saw it. You can bake tracks! OMG! If you’ve used a heavy hard drive streaming sound sample library like Colossus (Kompakt) or Giga Studio, you’ll note that one of your bottlenecks is the number of instruments you can play at one time, before your playback begins to stutter. I hit that at about 3 separate instruments (with numerous layers each). Not a problem with Live. Right click on a track you’re not working on this moment, hit “freeze track”, and within several seconds it’s rendered that track to disk. Then when you want to edit it again, right click and unfreeze it. Mmmmm.
That feature alone sold me.
But as I started digging through the interface and tutorials more, I really think I made the right decision. The interface has 2 views. A clip editing/mixer view, and a master song arrangement view. I wont delve in to all the details, but you can actually edit clips in both views. The clip/mixer view is actually designed for more of a “program the song and perform it live by queuing rows” type interface monster, but I found another use for it. Doodles. I don’t know how everybody else works, but sometimes as I’m toying on my midi keyboard to come up with a part or layer, I come up with something interesting, but it doesn’t work for this song. In the past, I had no way to record these random brainstorms. With Live, I solo the track, pound an empty clip’s record button, and record my music doodle. Then I can easily tweak my notes, if I hit something too early or too soft, and it doesn’t hurt my song at all. I can then export the mini composition to a .mid file, to use elsewhere.
So in conclusion, I’d like again apologize to anyone I ever recommended trackers to.
I’ve got workflow on the brain, and a discussion about backups on IG got the brain juices flowing. The post is of similar quality and length to what I’d normally constitute a “blog post”, so I’m dropping it here so I don’t forget. It’s certainly not a surefire answer to anything, just a stroll through me solving a problem.
The set up: SVN, a great tool for backups, versioning, and synchronization, can and should be used in all aspects of development. But what about audio?
There’s a few sides to audio. First, unless you’re still doing music with non VST driven trackers, you use several gigs for your sample libraries. Those you can (annoyingly) reloaded from their DVDs just fine. Your compositions are usually nice and small, or several megs if they embed instances of samples/loops in the file. And at this point, you’re perfectly capable for electronic music production.
A Fruity Loops, Live, Renoise, Buzz track is reasonably versionable here. You make some changes, and you can commit it. But an oddity of music here, you may decide you liked a track a few versions ago (crappy tweaks to filters, removed tracks, etc…), but you’ve introduced a bit of an annoyance having to check out older versions to go back to where you were. So because of that, it’s almost worth keeping numbered additional revisions (i.e. MyCoolSong02.rns) whenever you do something neat, or branch off in a different direction. You could then append sub-revisions via more numbers if you find an old version a worthwhile derivative (i.e. MyCoolSong02-01.rns). Then just be sure to note somewhere what file is “Gravy Train – Trainwreck Mix” once it’s final . The reason I don’t suggest using SVN’s branching facilities, is it adds complexity to the work flow. You’d have to, outside your program, create a new working folder, and the branch. Branching features are designed to facilitate the idea that you want to try something outside the main tree, and potentially could want to merge it back. Dealing with binary files, you can’t merge, and will never return to the original branch, so your hierarchy becomes a tree that never converges.
So that works great for small sample/virtual instrument driven music. You commit your songs and variants, and let SVN handle versioning of the little changes that don’t take the track in to distinctly different directions. And you can do it nicely with a several gig SVN repository. Just be sure to keep your sample library out of the repository.
However, once you introduce recording (guitar, vocals, voice overs), or per track mixing/mastering in external software, it explodes. A raw mere 20 minute session as a 32bit float samples at 96khz is nearly 500 megs. To not use gigs of space, you’ll have to compress your tracks. It’s a shame more software doesn’t support FLAC. Fortunately (at least for me), Adobe Audition 2.0 can save high/variable kbps 96khz OGG’s (though I forgot to check if it keeps the 32bit sample space), and I suspect Audacity does as well. So that’s one option. However, we’re still talking tens to a hundred of megs per track per session. SVN’s is out of the question here, though despite that you can’t merge binary, you won’t need to. The whole note taking aspect of SVN per change is a huge benefit of it’s process, but you can probably get by with voice recordings (notes) or a text file, if there’s something you’d like to remember.
The one thing Audio has going for it, unlike code, is it’s short time frame. And short of samples, there isn’t much re-use, and when there is, it’s the final product. The steps you took to get to the final track, while important and relevant, don’t do you much good anymore. When you pass a track on for remixing, you pass a final. The only exceptions being out-takes, which have nostalgia and entertainment value, and for re-mastering, though it’s unlikely you’d keep a bad quality final.
Alright. Because it’s more “nice” than necessary to have access to older tracks, a setup of stability (Mirrored RAID), hard copies for finals (DVD backup, with as much source/unused takes as you can cram) and a recent work archive (finals for the last few, and mix downs for everything else) should work nicely. A server doesn’t do you much good here, unless you want to offload the archive. An SVN archive of finals “could work”, but the point of SVN is being able to recover any version of something.
So it seems Audio is an example of a situation where you could overload your server/repository after several projects. A means of gutting a repository entirely of all traces of something *could* make it work, but that’s outside the scope of SVN currently (I suspect). Gutting for removal, or gutting as in exporting a repository subset of the original, for explicit backup.