electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
go to the radio page Live at electro-music.com radio 1 Please visit the chat
poster
 Forum index » Discussion » Composition
glass-bead game
Post new topic   Reply to topic Moderators: elektro80
Page 1 of 7 [155 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: 1, 2, 3, 4, 5, 6, 7 Next
Author Message
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Mon May 12, 2008 12:02 pm    Post subject: glass-bead game
Subject description: a book
Reply with quote  Mark this post and the followings unread

At the recommendation of several people on the TOPLAP list I started reading The Glass Bead Game by Hesse (well, my copy isn't titled that, I got Dutch one as Dutch is closer to German).
http://en.wikipedia.org/wiki/The_Glass_Bead_Game

This book revolves largely around a fictional game that is played by linking themes in music and math (as well as several other sciences and arts) together and developing those themes. Though this was written some time before modern computing caught hold and yet more before livecoding was ever thought of it seems almost like a definition of the field.

Recommended for our live/musical coding members as well as those interested in formal constructs like fugas and so on.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Mon May 12, 2008 7:20 pm    Post subject: Reply with quote  Mark this post and the followings unread

It's been about 35 years since I read that book -- imagine that -- and one of the ones I've been meaning to get back to, seeing as how the Magister Ludi -- it's really a biography of the chief beader, so to speak, the Magister Ludi -- goes into teaching near the end of his career, and I'm about to go into teaching in the last leg of my career, and well, I daresn't give away the ending.

Sort of the I Ching on steroids. Enjoy.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Veil



Joined: Mar 24, 2008
Posts: 24
Location: Taunton SW UK

PostPosted: Tue May 13, 2008 4:08 am    Post subject: Reply with quote  Mark this post and the followings unread

This sounds really interesting...will investigate.
_________________
VEIL - 'System Drills Volume 1' - OUT NOW ON TEST CONDITIONS - 12" & DOWNLOAD
Test Conditions.com
Test Conditions Myspace
Back to top
View user's profile Send private message Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Sun May 18, 2008 7:17 am    Post subject: Re: glass-bead game
Subject description: a book
Reply with quote  Mark this post and the followings unread

Kassen wrote:
This book revolves largely around a fictional game that is played by linking themes in music and math (as well as several other sciences and arts) together and developing those themes. Though this was written some time before modern computing caught hold and yet more before livecoding was ever thought of it seems almost like a definition of the field.

Kassen, your post got me back to thinking about the chess-game-as-composition-generator that my son Jeremy and I played as part of the EM 2008 New Year Streaming Event, initially for the possibility of adding a GUI and making it an interactive installation piece at EM2008.

In more general terms, though, I am thinking about architecting a game playing software architecture with 4 plugin components:
1) database housing state of the game (game board, for example)
2) graphical user interface for display and interaction with (1)
3) rulebase that understands the game implications of state changes in (1)
4) rulebase for generating tones (or other multimedia events) from state and state changes in (1)

This is an extension of the Model(1)-View(2)-Controller(3) object oriented design pattern, for those into object oriented software design.

My question -- and I believe from reading previous posts that you are more aware of computer games than I -- is whether anyone has done some general software instrument that takes relationships and changes in the state of a game and generates music from that? I am not talking about overlaying audio on a video game as is conventionally done, but rather using the game state itself, the relationships of pieces in the game as musical building blocks, in generating tones and higher level structures directly from game relationships.

For now I am focusing on putting a GUI on my specific chess game, but if I create a more general architecture, the intent would be to allow players to define and plug in custom game rules (add new games) and game state-to-music mappings, making the architecture user-extensible, although at this point music oriented. I suppose I could keep the plugin interfaces general enough to also accommodate video FX generators as well.

Any and all feedback on the state of games-to-music generation welcome.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
elektro80
Site Admin


Joined: Mar 25, 2003
Posts: 21959
Location: Norway
Audio files: 14

PostPosted: Sun May 18, 2008 7:32 am    Post subject: Reply with quote  Mark this post and the followings unread

Several composers have written music partly inspired by this book. I´m on that list as well. Laughing

Anyways, this dude is on first:

Olav Anton Thommesen

_________________
A Charity Pantomime in aid of Paranoid Schizophrenics descended into chaos yesterday when someone shouted, "He's behind you!"

MySpace
SoundCloud
Flickr
Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Sun May 18, 2008 8:24 am    Post subject: Re: glass-bead game
Subject description: a book
Reply with quote  Mark this post and the followings unread

Acoustic Interloper wrote:

My question -- and I believe from reading previous posts that you are more aware of computer games than I --


Quite likely yes. :¬)

Quote:
is whether anyone has done some general software instrument that takes relationships and changes in the state of a game and generates music from that? I am not talking about overlaying audio on a video game as is conventionally done, but rather using the game state itself, the relationships of pieces in the game as musical building blocks, in generating tones and higher level structures directly from game relationships.


Yes... this has been done, but only to a limited degree in this context, but then again everything is bound to look "quite limited" in the context of the Glass Bead Game, which in turn gets a easy ride due to not actually existing...

Perhaps most interesting is this;
http://en.wikipedia.org/wiki/Lumines

In Lumines there is a vertical ruler continually moving horizontally over the field (it starts over when it reaches the end) and it does so at the speed at which the music repeats. The music is in turn affected by in-game events like clearing blocks, etc and as those blocks get cleared by this ruler those musical changes are inherently quantised to the music.

In other games more or different layers of (pre recorded) music might be played when there are a certain amount of enemies around, etc.

While this technology is definitely developing I think it's still far from what it could be.

In your chess game I could imagine using parameters like how many pieces are on the board, the ratio between the worth of the pieces of the two players, the amount of pieces that are under attack, type of the last piece moved and whether it's now attacking anything, etc, etc, etc.

All quite possible but a major undertaking, I think. I'm not aware of anything like that made so far.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Sun May 18, 2008 9:13 am    Post subject: Re: glass-bead game
Subject description: a book
Reply with quote  Mark this post and the followings unread

Kassen wrote:
In your chess game I could imagine using parameters like how many pieces are on the board, the ratio between the worth of the pieces of the two players, the amount of pieces that are under attack, type of the last piece moved and whether it's now attacking anything, etc, etc, etc.

You have a good imagination Very Happy A few of the presently hard-coded data structures in Python:

permute['K'] = 3 # for walking scales
permute['Q'] = 5
permute['P'] = 3
permute['R'] = 7
permute['N'] = 5
permute['B'] = 1
piecefreq = {}
piecefreq['K'] = 1.0 # King root
piecefreq['Q'] = 2.0 # Queen octave
piecefreq['P'] = 1.5 # Pawn just 5th
piecefreq['R'] = 4.0 / 3.0 # Rook just 4th
piecefreq['N'] = 9.0 / 8.0 # kNight just 2nd
piecefreq['B'] = 27.0 / 16.0 # Bishop just 6th
# accents are patterns of full amplitude, 1/2 or 0 per moved piece
# second set of accents are for when a piece is taken off the board
accents = {}
accents['Q'] = ([1.0, 1.0, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0], []) # 3-32 son clave
accents['R'] = ([0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0], []) # bars 1 & 2
accents['K'] = ([1.0, 0.5, 0.5, 1.0, 0.5, 0.5, 1.0, 0.0],[]) # Dale's pattern
accents['B'] = ([1.0, 0.0, 1.0, 0.5], [0.5, 0.0, 0.50, 0.0]) # frailing banjo
accents['N'] = ([0.0, 1.0, 0.5], [0.0, 0.5, 0.25])
accents['P'] = ([1.0, 0.0], [1.0, 0.0])
accents['Q'] = ([1.0, 1.0, 0.25, 1.0, 0.25, 0.25, 1.0, 1.0], []) # 3-32 son clave
accents['R'] = ([0.25, 0.25, 1.0, 1.0, 1.0, 1.0, 0.25, 0.25], []) # bars 1 & 2
accents['K'] = ([1.0, 0.5, 0.5, 1.0, 0.5, 0.5, 1.0, 0.25],[]) # Dale's pattern
accents['B'] = ([1.0, 0.25, 1.0, 0.5], [0.5, 0.25, 0.50, 0.25]) # frailing banjo
accents['N'] = ([0.25, 1.0, 0.5], [0.25, 0.5, 0.25])
accents['P'] = ([1.0, 0.25], [1.0, 0.25])
weight['Q'] = 9.0
weight['R'] = 5.0
weight['K'] = 10.0
weight['B'] = 3.0
weight['N'] = 2.5
weight['P'] = 1.0

I was concerned about too much sound when there are a lot of pieces, and not enough when there are few, so I made the basic music generation algorithm a breadth-first expansion out from the two most recently moved pieces, with no cycles, that repeats as soon as you get to the end of the pieces directly or indirectly affected (supported or attacked) by the two most recent moves. That is the reason for the "ripples in the pond" metaphor in my original post -- the music ripples out from the most recent actions. There is also stereo panning when the next-player-to-move changes, so you get a sense of play across lateral space. Complicated on-board interactions lead to more complicated combinations of tones, and when there are fewer pieces and therefore fewer complications, the music is less complicated, so the pharses may be shorter before repeat, although its often the case that you get lulls in the sequence length/complexity after a series of kills, because the pieces that were interacting are suddenly gone, and the remaining pieces haven't been put into interaction yet. Sort of a temporary wasteland effect, very intuitive. I added LFOs over a couple of parameters just to keep the shorter sseuences from becoming monotonous -- the cross product of a short sequence with the two LFOs still has some interesting textural variations.

The quality of the musical output was not quite where I wanted it on December 31, although it was improving with each programming session. The ultimate goal is to have a reasonable way for users to capture new games and to capture their own, custom game-to-music mappings, so that they can use this as a composition tool at multiple levels -- define a game, define a music mapping, and play a game. My focus is human-to-human rather than a computer expert game player, although I'd like the architecture to be general enough so you could plug in a software player if you have one handy. Right now this has hard coded chess and hard coded mappings, and no GUI; I am in the feeling-my-way stage.

Thanks for the info and links!

Quote:
All quite possible but a major undertaking, I think. I'm not aware of anything like that made so far.

Well then, maybe, here goes . . .

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Sun May 18, 2008 9:58 am    Post subject: Re: glass-bead game
Subject description: a book
Reply with quote  Mark this post and the followings unread

Acoustic Interloper wrote:
You have a good imagination Very Happy


Maybe, but I had been thinking about this kind of problem for a while now as well.


Quote:

I was concerned about too much sound when there are a lot of pieces, and not enough when there are few,


Yes, that's the first issue. As I look at that a way out might be to realise that we aren't trying to sonify the *pieces* but the *game*. The row of pawns at the beginning isn't actually doing anything; they aren't threatening anything nor are they supporting each other or even under attack. I'D say it would make more sense for them t be silent then to form some huge chord.

A knight on a centre-square attacking two pieces and being covered by a pawn on the other end might make for a good dominant musical element early on in the game. Analysing pieces on that level, however, will require at least the core of a chess engine...


Quote:

so I made the basic music generation algorithm a breadth-first expansion out from the two most recently moved pieces, with no cycles, that repeats as soon as you get to the end of the pieces directly or indirectly affected (supported or attacked) by the two most recent moves. That is the reason for the "ripples in the pond" metaphor in my original post -- the music ripples out from the most recent actions.


Yes, that makes sense to me. I'd add support for things like Queens, Bishops and Rooks that might be put in a position where they hardly affect anything (not attacking anybody or being under attack) but yet cover so many empty squares that they might still be very significant.

Similarly knights could be affected by their distance from the side of the board and pawns may depend on the structure they are in. I think it's natural to represent pawns not just by a single note but instead by the larger structure they are in, creating arpeggios, for example.

Quote:

There is also stereo panning when the next-player-to-move changes, so you get a sense of play across lateral space. Complicated on-board interactions lead to more complicated combinations of tones, and when there are fewer pieces and therefore fewer complications, the music is less complicated, so the pharses may be shorter before repeat, although its often the case that you get lulls in the sequence length/complexity after a series of kills, because the pieces that were interacting are suddenly gone, and the remaining pieces haven't been put into interaction yet. Sort of a temporary wasteland effect, very intuitive.


This makes sense. I'd also try to work with consonance and dissonance in such situations, where a large dissonance of a complicated situation might be resolved into a certain chord after trading some pieces.

Quote:

I added LFOs over a couple of parameters just to keep the shorter sseuences from becoming monotonous -- the cross product of a short sequence with the two LFOs still has some interesting textural variations.


Hmmmm, considering that Chess has rules to avoid repeating positions I think adding more parameters might make more sense then adding LFO's. There is, after all, no shortage of parameters at all.

Quote:

The quality of the musical output was not quite where I wanted it on December 31, although it was improving with each programming session. The ultimate goal is to have a reasonable way for users to capture new games and to capture their own, custom game-to-music mappings, so that they can use this as a composition tool at multiple levels -- define a game, define a music mapping, and play a game. My focus is human-to-human rather than a computer expert game player, although I'd like the architecture to be general enough so you could plug in a software player if you have one handy. Right now this has hard coded chess and hard coded mappings, and no GUI; I am in the feeling-my-way stage.


This seems like a natural way to do it, I think there are several architectures that work like this already. I used to play a computerised Go game that consisted of a interface and a network client, one played against the computer by plugging in a AI that pretended to be a networked player.

I don't think that aspect is the hard bit. parametrising music to keep it listenable yet diverse, occasionally surprising yet strongly liked to the game is the hard bit, I think

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Sun May 18, 2008 10:15 am    Post subject: Re: glass-bead game
Subject description: a book
Reply with quote  Mark this post and the followings unread

Kassen wrote:
A knight on a centre-square attacking two pieces and being covered by a pawn on the other end might make for a good dominant musical element early on in the game. Analysing pieces on that level, however, will require at least the core of a chess engine...

Here are the comments for the main engine:

def getAttackSupportMove(self):
"""
Return 5 tuple of:
set of pieces I can attack
set of pieces I support
(similar to attack but my color)
coordinates I can move to (including spaces under attack)
set of opposing pawns this pawn can capture via en passant
This set can contain 1 2-tuple of the space onto which the
current pawn can move, and a reference to the pawn to capture
en passant. The set is empty on no en passant.
set of available rooks with which this king can currently castle
This set contains 1 or 2 2-tuples of the space onto which the
current king can move, and a reference to the rook to move
across this king on castling. The set is empty on no castling.
"""
Pieces that support me and pieces that attack me are found by doing closures over a call to this function for every piece on the board after every move. Brute force, but simple and fast enough. You can see I needed some special logic for castling and en passant captures, but I just played a game yesterday, and they work OK.
Quote:
I don't think that aspect is the hard bit. parametrising music to keep it listenable yet diverse, occasionally surprising yet strongly liked to the game is the hard bit, I think

Yes, and that is where I left it in January. It was making progress with each programming day, and there is room for more progress. I think giving users the ability to define games or at least change some of the rules, and to map them to music, will be a challenge, in addition to providing useful games and mappings. But, it is a fun problem to work on, with a lot of potential, I think.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Sun May 18, 2008 11:54 am    Post subject: Reply with quote  Mark this post and the followings unread

I see. Your ideas focus a lot more in the situation of single pieces and less on the overall state of the game then mine but likely they would reflect the state of the game to at least some degree, especially in the mid-game, I would predict.

Some notes; you talked about sonifying the last two pieces moved but are you taking into account that it's quite likely that the last move changes these states of the one before it? Those transitions could be quite interesting, musically.
I'd also include "amount of squares this King could move to were it his turn now", I bet that makes the end-game quite interesting. I'd also play that sound after a King became in check, regardless of how that check was resolved (for example moving a Rook in between) , just because it's exciting.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Sun May 18, 2008 1:39 pm    Post subject: Reply with quote  Mark this post and the followings unread

Kassen wrote:
Some notes; you talked about sonifying the last two pieces moved but are you taking into account that it's quite likely that the last move changes these states of the one before it? Those transitions could be quite interesting, musically.
I'd also include "amount of squares this King could move to were it his turn now", I bet that makes the end-game quite interesting. I'd also play that sound after a King became in check, regardless of how that check was resolved (for example moving a Rook in between) , just because it's exciting.

Actually the sonification ripples out from the last two pieces moved to their reachable neighbors, and then to their reachable neighbors that have not yet been visited, etc. So some subset of sounds stays in effect and some changes, unless the pieces moved have no reachable paths to previous reachable sets. A lot of graph theory. So, mostly you get partial transitions, but sometimes you get abrupt ones.

And yes, there is a horrible sound whenever a king is in check. Listening to it, Howard commented in the chat room at New Year's, "I think Dale's son is kicking his ass in chess." Howard was correct.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Wed May 21, 2008 9:00 am    Post subject: Reply with quote  Mark this post and the followings unread

Kassen wrote:
Your ideas focus a lot more in the situation of single pieces and less on the overall state of the game then mine but likely they would reflect the state of the game to at least some degree, especially in the mid-game, I would predict.

Tones and meter generated by individual pieces are modulated by the supporting or antagonistic relationships of those pieces, so really I am focusing on one-to-one relationships on the board, multiple pieces deep (until search runs out of relationships to the last 2 moves, which usually does not entail all pieces on the board). I could do deeper analysis, but I'd prefer the structure of the sounds to emerge from the lower level interactions. I am considering some amount of lookahead into time the way a real chess program might, mimicking a person's thinking to some small degree. Probably a simple min/max algorithm or something. That'll come later.

For example, to cite your earlier example, a diagonal row of supporting pawns have a series of supportive relationships, and could potentially generate a chord, while the initial row of pawns have no single-move relationship, so they do nothing. I say potentially because right now pawns of the same color generate only 1 or 2 tones, not much of a chord. I should perhaps put more structure into those relationship-to-sound mappings. They are very minimal right now, by intent.

I got the basic GUI on top of this working last night, with my wife playing from the Mac and myself from the Alienware XP machine, with the game server running on the XP machine as well. When she made a move the sound change occured almost immediaely, but there was noticable latency in the update of her display, that I have to look into. XML-RPC is a bulky RPC protocol, but I am also sending more data out to the clients after each move than is necessary. Probably a couple evenings of GUI/network tweaking to do.

After that I want to get back into the sounds. First of all I want to make the sequence-of-note generator a plugin, and then the note-to-sound generator a plugin. Right now the former is the algorithm I have roughly described, and the latter is a UDP hook to Max/MSP. But I want to play around with alternative chess-to-tone+meter mappings without throwing away what I have now, hence the first plugin. The second is to allow me to play with other tone generators.

I like the overall "minimal" approach of what I am doing, and don't want to create a bunch of special cases that hard wire the sound. My wife seemed agreeable to the sounds coming out of the loudspeakers, which is not always the case, but it's hard to offend with the Major Just Pentatonic scale Very Happy

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
ehdyn



Joined: Sep 13, 2007
Posts: 33
Location: Caerdydd, Palau

PostPosted: Fri May 23, 2008 6:50 pm    Post subject: Reply with quote  Mark this post and the followings unread

Most brilliant thread I've stumbled on in a long time.

Hesse fan here since childhood.

Who would of guessed that German was so poetic?

Thanks for the mental workout.

Take care not to drown in the frozen lakes of algorithmic composition!
Back to top
View user's profile Send private message
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Sat May 24, 2008 8:57 am    Post subject: Reply with quote  Mark this post and the followings unread

One interesting sidebar about Hesse that I'd like to have resolved: I've read that Miles Davis hated Hesse. This was in a Miles' biography, and I recall the context was Miles throwing out some Hesse books belonging to his then current spouse, but nothing beyond that. I've never found out why. The only reason I can imagine is that Steppenwolf, and perhaps some other stories, make jazz out to be more primitive than classical music. But Steppenwolf also makes jazz out to be more earthy and life affirming than the classical tradition from which the hero emerges, so I don't see that as a reason to dislike Hesse.

Miles and Hesse have both been inspirations to me, so I have wondered about this since I read it. Of course, Miles was often very opinionated, and it wouldn't be our only disagreement.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
ehdyn



Joined: Sep 13, 2007
Posts: 33
Location: Caerdydd, Palau

PostPosted: Tue May 27, 2008 6:13 pm    Post subject: Reply with quote  Mark this post and the followings unread

He must of loved it tremendously to bother "hating" it.

"Primitive" could be seen as the highest form of compliment.
Everything is supported at the roots.
Back to top
View user's profile Send private message
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Wed May 28, 2008 7:18 pm    Post subject: Reply with quote  Mark this post and the followings unread

Acoustic Interloper wrote:
For example, to cite your earlier example, a diagonal row of supporting pawns have a series of supportive relationships, and could potentially generate a chord, while the initial row of pawns have no single-move relationship, so they do nothing. I say potentially because right now pawns of the same color generate only 1 or 2 tones, not much of a chord. I should perhaps put more structure into those relationship-to-sound mappings. They are very minimal right now, by intent.

Fixed this. Initially each pawn generated a just 5th (shifted to some octave), but now the rooks', knights' and bishops' pawns inherited the tone of the respective piece behind them. Kings' and queens' pawns are still 5ths. This way, when you activate a series of pawns in a diagonal, you get an arpeggiated chord instead of repetitions of the same note at different octaves.

I am also going to replace the hard coded LFO with an LFO derived from the speed at which users move. Haven't figured out the details yet, but basically, speeding up the moves will increase the tempo, and slowing down the moves will decrease it.

Tonight I spent trying to enhance the sound generation in Max/MSP, and having programmed for about 30 years, I have to say that I find Max to be a pain in the ass. Nice library of components, but any kind of control logic is a pain in the ass. If I weren't serious about spending time getting better at ChucK or SC soon, I'd consider writing a meta-language to generate MAX control and routing logic from some procedural language. I guess if you are used to it, it's OK, but it seems awfully cumbersome.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Tue Jun 10, 2008 5:34 pm    Post subject: Reply with quote  Mark this post and the followings unread

Shocked


chessboard.jpg
 Description:
 Filesize:  99.7 KB
 Viewed:  494 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

chessboard.jpg



_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Tue Jun 10, 2008 5:40 pm    Post subject: Reply with quote  Mark this post and the followings unread

Wow, that's great! And I'm the Black Knight! black knights are always cool characters.
_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24075
Location: The Netherlands, Enschede
Audio files: 277
G2 patch files: 320

PostPosted: Tue Jun 10, 2008 5:48 pm    Post subject: Reply with quote  Mark this post and the followings unread

Acoustic Interloper wrote:
Shocked


Cool


Sort of Civilized World against US it seems, except that CW have a US queen. Or within this thread's context it's a cooperation of course, as the goal likely still is making music.

This is a cool idea anyway, rebuilding the game of chess where you're supposed to oppose each other into a cooperative thing ... it took this picture to realize that Wink

But then again ... in the game itself you'll have to join as well in order to compete .. oh oh .. here we go ... more beer .. I'm getting confuuzed, this must be art Laughing

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Tue Jun 10, 2008 6:19 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hey I'm a rook! This is cool. I didn't quite get all the subtleties of the thread, but I get the general idea. I have some thoughts.

One is that if you're into chess enough that you read the books, especially classics like "Pawn Power" and such (i forget, it's been long years since I've played over the board), the experts have words for things that are elements of the game. Words like "tension", and "lee", and "luff". A position is "closed" or "open". There are also features of the board like the "center" and the "long diagonals" or the "queening square". You must have some familiarity with all of this. I'd imagine that a perusal through some chess books would lead to a list of the various elements that could each be given some musical quality.

I also remember playing online in a user interface that had a dramatic sound that was played after each move. It was just one sound played every move, but it added a really interesting dramatic element to the game. So I imagine that a more involved approach done by musicians would be really enjoyable.

I'm glad to discover this game thread because I just got done creating a game myself. It's unrelated to the chess game, but I'm having a blast learning guitar by programming and playing the game. I styled it after Guitar Hero, but it works with a real guitar instead of a toy controller. Also the game does not make the music. The game generates chords and notes on a fretboard display and the player must try to play the displayed sounds. I won't ramble on about it any more, but I find the notion of mixing games with music to be very appealing.

In fact, just right now I'm a little bored and looking for something to do with ChucK and/or my new guitar, gamewise. I was thinking of controlling a spaceship with the guitar or maybe a driving game like pole position or possibly Lunar Lander under guitar control. I used to be a big time chess fan (never got better than average at playing it, but enjoyed it immensely), so now I'm wondering if I can mix guitar learning with chess somehow.

I don't know, now I'm starting to ramble again, but I'm open to ideas from anyone posting here as to what would be a fun way to learn guitar from playing a game. Any suggestions?

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24075
Location: The Netherlands, Enschede
Audio files: 277
G2 patch files: 320

PostPosted: Tue Jun 10, 2008 6:42 pm    Post subject: Reply with quote  Mark this post and the followings unread

.


chessboard-002.jpg
 Description:
1) e2-e4
 Filesize:  107.26 KB
 Viewed:  511 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

chessboard-002.jpg



_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Tue Jun 10, 2008 6:52 pm    Post subject: Reply with quote  Mark this post and the followings unread

1. e2-e4: "Best by test." - Bobby Fischer
_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Tue Jun 10, 2008 9:12 pm    Post subject: Reply with quote  Mark this post and the followings unread

Pawn-to-Queen 4 turns out to be much more musically interesting in this case. The black arrows are "I support you" (root note for the piece), red are "I attack you" (transposed by a Just Minor 3rd), and the back arrows are "I am supported by you" in green (Just inverted root of the target piece) and "I am attacked by you" in yellow (Just inverted transposed Minor 3rd). Each piece has its own characteristic root in a Just scale. Currently the bishop, knight and rook pawns inherit their respective master's root, and the queens' and kings' pawns use Just 5th, so that you get an arpeggio from a diagonal row of supporting pawns (see earlier discussions with Kassen above Smile ).

I've made the depth of the breadth-first "ripples" out from the 2 most recently moved pieces tunable at play time, and you can get interesting alterations by changing depth while playing. Some of the other parameters are now user adjustable as well. Also, if you go 15 seconds without a move, the game gets bored and will modify the tone generation, doing a transpose, or an inversion, or a retrograde, or modulate the roots, or even start playing its own virtual game that you can hear but you cannot see, and that does not affect your game, but slowly evolves a clone of your game using a strategy I call "passive aggressive." When someone finally makes a move, the virtual board evaporates.

Pawn-to-King 4, in contrast to the attached graph, has no "I support you" nor "I am supported by you relationships," no arrows at all, in fact.

I'll post this Python code after I wean the tone generation off of Max/MSP to ChucK. In fact, I plan to make tone generation a plug-in. I'd like to use some MIDI-driven synths, but I am up against a stop: Just Intonation implies prefixing each MIDI noteon with a pitch bend, but pitch bend affects all notes on a MIDI channel, and each note in Just Intonation would be bent differently. So, as far as I can see, no MIDI. Anybody see a way around thsi MIDI limitation? Not a problem for MSP or ChucK.

I got a couple of additional posts planned, but I'm too tired tonight. Maybe tomorrow.


PawnToQueen4.jpg
 Description:
 Filesize:  109.91 KB
 Viewed:  412 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

PawnToQueen4.jpg



_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Tue Jun 10, 2008 11:54 pm    Post subject: Reply with quote  Mark this post and the followings unread

This observation that a king's pawn game and a queen's pawn game have completely different musical effects is very encouraging. Since the two are such opposites, it only makes sense that they would make opposite types of music. Still, if the king's pawn game is silent, then something is missing, perhaps "control of center" or "dynamic tension", which would give the king's pawn move a totally different but non-silent sound. This is shaping up interestingly.
_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24075
Location: The Netherlands, Enschede
Audio files: 277
G2 patch files: 320

PostPosted: Wed Jun 11, 2008 5:04 am    Post subject: Reply with quote  Mark this post and the followings unread

Oh, I messed up white and black Embarassed
_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic Moderators: elektro80
Page 1 of 7 [155 Posts]
View unread posts
View new posts in the last week
Goto page: 1, 2, 3, 4, 5, 6, 7 Next
Mark the topic unread :: View previous topic :: View next topic
 Forum index » Discussion » Composition
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use