Moo themes

the MOO aside from being fun and educational (ok just fun. . . (ok, nevermind)) now will play music! oooooh! Music that you create

Alas, web streaming is not up yet, but will be coming soon, after I finish two large papers and a final project and do a million other things, so soon in this case means "spring semester" prolly.

BUT, you can still participate and hear sounds on your own computer if you run supercollider

This all works through light motifs called themes. themes are made up of notes


Notes look like "4c#3". the first number is the length of the note. '4' indicates a quarter note. '8' and eighth note. you can use any number at all that you want for the duration. bigger numbers are shorter than smaller numbers.

the 'c#' is the pitch. The '#' can go before or after the letter. You can't currently specify a flat, so use a sharp if you want an accidental. using sharps, is, of course, optional. note names go from a-g.

The '3' is the octave. the lowest octave is '0'. the highest octave is as high as you want to make it, but if you get too high, you won't be able to hear it. Octaves start with c, so the note below 4c3, is 4b2.

What notes to use? Just make some up. Or you could have your theme say something about your player or object in SolReSol. AOL_USER's theme is SolReSol for "girl, I want your body." seriously. Also, astute cell phone users will note that this is the same format for notes used by nokia, so you could go to a ring tones web site and copy some notes from a pop song or something

Adding the notes

you've got yer notes all picked out, now you want to add them.

@property me.theme "4c#3, 4c3, 3b2, 4c#3"
@chmod me.theme +r
That example puts a theme on your player object and marks it readable. you need to make it readable, or the program won't be able to read it. If you want to add a theme to some other object, just replace "me" with the name of the object.

If you finally hear your theme and can't stand it, you can change it.

@set smoothie.theme to "8a#2, 8#a2, 4c#3, 8a#2, 2d#3, 2f#3, 4c#3"

You could also write some verb to change your themes periodically. in the future, there will be support for a get_theme verb, so that you can modify your theme every time the verb is called.

Playing it with superCollider

Ok, first thing you need to do is login. for help on that see Moo for Newbies. Note that you can use any telnet program to log in, even NCSA telnet from mac os9. IF you do not have your own account, log in as a guest. Type: con guest guest

You have probably logged into the first room (if you have not logged into the first room, then you are an experienced user who knows what she's doing). the first thing that you need to do is register your ip address with the server. Type "ivy" (without the quotes) to go to the Wesleyan Electronic Music Studio. You need to know your ip address in order to be able to register it. you may be able to find out this information by looking in your TCP/IP control panel. Or, if not, ask a hacker for help.

Register your IP address

Once you know your ip address, tell it to the server. Type "register <your ip address> with ipadress_registry". you are now registered. the next time that superCollider inquires about ip addresses, it will see yours.

Getting SuperCollider-ified

If you do not already have supercollider, download it from sourceforge. that's a binary snapshot that will run on macOSX. you can also run it on Linux, but you will need to compile it. for more information about versions for operating systems aside from osx, see the SuperCollider website

Now that you've got supercollider, you will need a program to read the OSC messages. Fortunately, I have one available for download. this program is designed for SuperCollider 3, but could be made to run on superCollider 2 with some simple modifications, which are left as an exercise to the reader. this program is without warranty. It's got bad coding style. It may give you a headache or incite you to classroom violence. It causes hairloss in hamsters.

Open the program with super collider. start the synth. send the instrument defs. note that if you are feeling like you have a great instrument, you can define your own instrument defs by those names. then run the rest of the program.

More details

this only works when supercollider_guest is logged in. If you don't see the guest logged in, then the main server is not running nd you will get no sound. If the guest is logged in, it will start sending you OSC packets as soon as it notices your registration. It will keep sending you packets until it notices that you have logged out.

Getting an account

send me email. or ask me in class.