A while back, noob-I, discovered the virtues of scripting dance routines (ole!) in Second Life (SL).
These scripts are simple sequences of commands to animate my avatar on the dance floor. I created mine using an editor SL provided. The purpose of scripts, I presume, is to save weary souls from repetitively entering long lists of commands in the real-time on the dance floor. Create your dance routine once, and... fire-away: cha cha cha the night away.
A side-effect of these scripts is to regularize the notion of behavior: execute the same script twice, appeal to same illusion. One can side-step this to some (!) extent by mixing-up the order scripts are executed.
I was proud of my dance script(s) - each felt like a creative accomplishment. A statement of personal expression. True, by the norms on the clubs and their dance floors I visited, my scripts quickly made me out to be the odd goose (think disco at hip-hop?). But my goose flap was vivacious and full of feather, and it was *my* goose.
It is easy, I think, to view these packages of behavior as tangible artifacts, commodities. To me they felt like nouns - objects of manipulation and expression and not in themselves actions/verbs (see Nouns and Verbs).
My scripts, as executed by my avatar, served to connect me to the other dancers and to the pulse of streamed music. The value of dance was the textured community they helped to create. In terms of the behaviors themselves, there seemed a conflict that got in the way of accepting them as any more than decoration: they were predictable.
What if there was more serendipity? Variable timings? New moves, old moves? What if instead, the world required you to adopt the cloak of someone else's creation. In this way there would be a freshness and novelty. Say scripts had to be traded blindly before use? Would this then make them seem more real?
May be dance scripts are not about simulating an intelligent you, but are about creating a short-hand to a shared context. I believe why SL script-dancing works is because with whom you dance knows there is a *you*, and the rest can be stylized, commoditized (and while we're at it, why not branded).
Wyatt Chen recently posted this point: games AI is for entertainment, not for mimicry of intelligence. Wyett's extension (Computer Game AIs that pass the Turing Test?) goes something like this (loosely): even if one could develop an AI that can mimic another player, it may not necessarily be able to substitute for another player.
Perhaps one might think of an intervening "contract:" if we PvP - you are real! In other words, as Wyatt points out, a great deal of what is fun in PvP is about "getting into the head" of the other player whether psyching 'em out or just plain pwning 'em! Wyett cites an interesting example with a project of his - Real Time Rock Paper Scissors.
My two-stepping in Second Life dance halls led me to wonder the role of behavior and intelligence in virtual worlds. I suspect that the Turing Test ideal is likely the wrong "evaluation function" for considering useful intelligence in entertainment worlds. In fact, perhaps the role of the AI is to amplify the forces of the world, as well as to guide the player experience.
When it comes to making the dances of avatars seem more "alive", maybe a look at b-boying - a competitive form of dancing often refered to as breakdancing - might be useful. B-boying can be broken down into various behaviors, which are called "moves". There are classes of moves, organized in a hierarchy. How the hierarchy is structured and populated is variable; the choices made by an individual b-boy/b-girl, there and anywhere else, lead to a personal, recognizable style of expression, and may be part of the "group expression" of your crew.
There's a default move ("behavior"), a simple pattern common to all dancers, called top rock or uprock: though highly individualized by injecting footwork moves, there's a recognizable "family similarity" in all forms of top rocking. Then there are standard moves, like forms of the six-step, swipes, turtles; power moves such as windmills, flares, 1990s; and other major styles like popping and locking. Finally, there are freezes, where you suddenly, while on the ground, stop your body in a difficult-to-hold position, sometimes emphasized by making a challenging gesture towards your opponent(s). From there you usually jump up, step back - maybe doing some footwork to close out -, and let an opponent counter.
B-boying is as alive as dances can be. Now if you could implement each move by a little script, and link each script to a key on your keyboard, you should be able to let your fingers do the dancing: by mixing and matching moves spontaneously, based on the moves that your opponent shows, you could have battles just like in real life. Which sounds like enough fun to me to tempt me to try Second Life. Would that be afforded by the interface? And is there a way to (maybe auto-)synchronize your tempo to the beat of the music? Maybe there could be a "tap-tempo" function key, like the beatcounters sold to DJs have one...
In RL, some moves are sharded - otherwise, there would be no standards -, but to be a good dancer, it's very important that you have advanced moves that are all yours. Copying such moves from your opponents is called biting and is very much frowned upon by the hardcore (like eBaying the Sword of Utmost Sorrow).
Wonder if we will see an eBay market for moves emerging.
Posted by: Dirk Scheuring | May 02, 2005 at 04:12
Freeze.
Posted by: Dirk Scheuring | May 02, 2005 at 04:21
Dan, did Dirk ask your permission before posting those photos?
Posted by: Edward Castronova | May 02, 2005 at 09:09
This is interesting -- it plays into some things I've been thinking about not only in my work on Dance Dance Revolution, but also in going out social dancing (swing, tango, and African styles). The initial poster and subsequent commenter seem to be approaching dance as if it is merely a matter of taking pre-scripted moves. In real life, done at its best, this is not what dancing is. Great dancing:good dancing::Shakespearian sonnet:high schooler's teacher-assigned sonnet-- I mean, most dancing is improvisation on a structure; it is never just the structure itself.
Of course, for many people dance still remains a predominantly patterned activity. Dance classes consist of a teacher issuing commands and students trying assiduously to copy them. Swing dance in particular seems to have attracted people who are looking for codified means of interacting with each other (not incidentally, in the swing revival's heyday I met more programmers, engineers, and scientists out dancing than any other profession ^_^) Many people come to dancing these days because they want structure.
However, even for novice dancers out doing ballroom or salsa, dancing is not reducible to moves. A key activity for a "lead" on the social dance floor is negotiating space: not running into walls, tables, or other couples. More competent social dancers-- like b-boy crews-- also learn to adapt a given move to the character of the music, to the style of their partner, and to the shape of their body. Last night I watched Dawn Hampton, a famous New York dancer in her late 70s, make her way through a swing dance tune with a partner half her age. Dawn's range of movement is limited at this point, and yet she's one of the most fascinating and I'd say one of the best dancers in the city. She makes the slight movements she can pull off look good. Instead of the springy hops younger dancers pull off, each basic step for Dawn is a little soft-shoe drag. A break in the music comes, she stops on a dime and winds her torso subtly.
I love dance video games, and I am delighted that dancing is being made a common feature of the possibilities of virtual worlds. We've got to admit, though, that this is still not something that can be done well in a digital space. Even if you can string together a unique series of moves for your avatar, the fact remains that 1) the same move will continue to be exactly the same every time it's done -- it won't be subtler when the music is softer -- and 2) your dark elf will look exactly the same doing it as any other dark elf, your dwarf the same as any dwarf, and the same for any identical body type in the Sims. Like a great many other qualitative artistic and social activities, dancing loses a lot in being reduced to bits and bytes.
Posted by: gus | May 02, 2005 at 15:48
Gus wrote:
Good shot, wrong target.
There is no inherent loss in resolution here, there is a qualitative shift.
With some history in song-writing and music composition and production, I remember struggling with the specific constraints of MIDI/DtD-backed music for a while, before I figured it was not so much because of some qualitative loss in the reduction to bits and bytes, but rather because I had to learn how improv write-as-you-sing and code-like computer-based composition are two seriously different (if related) practices.
The loss/low-quality issue can (will) be overcome by technical means, but it's another thing entirely to become a competent e-dancer once the expressive tools become available.
Obviously the current expressive abilities of avatars (relative to dancing) are limited, partly because there isn't much focus on this specific activity, partly because there is no history of computer dance-simulators to draw from (contrary to many common activities in online worlds), but when the current crop of digital sequencers and DtDs handle 9600 clicks to the beat and 96KHz/24bits, you're way past the granularity of the human touch and ear.
Real-time meta-management of patterns is not exactly unchartered waters.
So, dynamic sequencing and play of dance is technically a no-problem, but building tools that allow to actually e-dance is a bit more tricky, and learning how to dance this way is the big issue here.
fwiw,
-- Yaka.
Posted by: Yaka St.Aise | May 03, 2005 at 01:23
Partly, it's just the low information content of the avatars themselves, I'd think - thus far Gus.
> 2) your dark elf will look exactly the same doing it as any other dark elf.
One way to solve that (insert standard disclaimer about not knowing anything about the code here) would be to give each unique avatar a set of personal random numbers, and give each move a slight-variation function that hooks onto those - so it would show the same not-quite-uniformity you see in flesh and blood dancers, even when they've trained and practised to be identical. And, of course, could be used for just about any activity that would benefit from a personal touch.
Of course, that brings up the customization-vs-random-uniqueness thing... but it'd have to be random in this case, since there's no way to explain to players ahead of time what this strange string of numbers means, or what it'd mean if they were different.
And, more pertinently, this thought experiment I’ve just pulled out of the aether provides a quick and easy way for designers to make more interesting, more customised NPCs with more depth of detail, and a bigger range of potentially unique-looking interactions (hm, need a better phrase - superficial uniqueness?). In other words, to make them more and more like players to the casual (social) interactor. Nobody talks on the dance floor, and we don’t get pheromones online, so it’s the little imperfections, quirks, and unrepeatabilities that make you stand out from the herd.
Personally, I'm firmly of the belief that it's important to be able to tell player-controlled characters from AI characters, but I can appreciate that others will feel differently – and I also hope that the differences won’t be glaringly obvious, but rather will be there when you look for them. The magic circle shouldn’t include only players.
Posted by: Sam Kelly | May 03, 2005 at 05:01
Oh... and the flocking code, the part that makes swarms of mosquitoes, flocks of birds, and crowds of waddling penguins form a coherent group which seems to have its own "purpose" and characteristic movement patterns. Mathematically, it's not a problem, but it's fairly computationally intensive at the moment.
Possibly the dance floor picks up details from the individuals, and sends them to the crowd - or the "music" imposes a meta-pattern which individuals customize. Or the meta-pattern evolves through feedback loops.
Posted by: Sam Kelly | May 03, 2005 at 05:05