Free-form singing

by Lendren

Back to Mechanic's Corner.

Lendren2006-11-12 21:11:05
For the sake of performances and roleplaying,
QUOTE
"Whispers, spirits marching through the trees," you sing, playing a mandolin of pale wood.
can be a lot more pleasing than
QUOTE
You sing, "Whispers, spirits marching through the trees,."
because of how it's worded, the reference to playing your instrument, and the way it handles punctuation. But songs written with Composition are limited to 9 prepared ahead of time, of only 9 lines each.

This zMUD alias reserves one of them, named "FreeForm", which you can use to freely sing as many lines as you like. It works by the simple trick of redefining stanza 1 over and over.

CODE
#class "Songs"
#var FreeFormSongGoing 0 0
#tr {^The song ~"Freeform~" ends and fades away.} {FreeFormSongGoing = 0}
#alias freesing {compose FreeForm stanza 1 lyric %-1;#if (@FreeFormSongGoing = 0) {perform song FreeForm;FreeFormSongGoing = 1} {perform refrain FreeForm}}
#class 0

Now just use "freesing" in place of "sing" and go on as long as you like with any words you want, even making them up as you go.

Limitations: your lines can still be a maximum of 75 characters, plus this'll use up mana and ego, where "sing" does not. On the other hand, this will count as practice. You also need the Refrain skill (and of course Composition) to do this.
Lendren2006-11-17 01:08:45
Wrote this addition to the script for my mom! This add-on lets you set up a song ahead of time and freesing it for performances automatically, without imbuing powers, and without the 9-line limit, or using up one of your nine songs.

CODE
#class "Songs"
#al freesong {#if (@FreeSong = "") {#t+ "FreeSongTrigger";FreeSong = @{FreeSong%1};#if (@FreeSong = "") {#show Usage: freesong ;#abort} {#show Freesong starting a %numitems( @FreeSong)-line song.}};freesing %pop( FreeSong);#if (@FreeSong = "") {#t- "FreeSongTrigger";#show Free song is completed.}}
#var FreeSong {}
#tr "FreeSongTrigger" {^You have recovered equilibrium.$} {freesong} "" {disable}
#class 0

After importing this, to set up a song, do this:
  • Create a variable named "FreeSongTitle". For instance, to make a song named Celebrate, create the variable FreeSongCelebrate.
  • Make it a "String List" type.
  • Enter the song's lines exactly as you want them to appear into the lines of the string list.
Then to start the song, type "freesong Title"; for instance, "freesong Celebrate". You will begin reciting the song one line at a time, automatically, until it ends.

I recommend having an autosipper. Even songs that are not imbued with any powers still drain mana and ego (why is that?).
Verithrax2006-11-17 01:30:54
You do realise that now people are going to start creating systems for modifying the *effects* of their songs on the fly (As if they hadn't already), pretty much killing the one cool thing about bardic combat?
Anarias2006-11-17 03:10:48
QUOTE(Verithrax @ Nov 16 2006, 06:30 PM) 354186

You do realise that now people are going to start creating systems for modifying the *effects* of their songs on the fly (As if they hadn't already), pretty much killing the one cool thing about bardic combat?


I can't find a suitable dramaqueen emoticon sad.gif
Sylphas2006-11-17 12:47:51
I still prefer my illusions, because the 75 character limit is annoying as hell.
Lendren2006-11-17 23:16:07
QUOTE(Verithrax @ Nov 16 2006, 08:30 PM) 354186
You do realise that now people are going to start creating systems for modifying the *effects* of their songs on the fly (As if they hadn't already), pretty much killing the one cool thing about bardic combat?

Sorry to hear you only just realized that was possible, Verithrax, but I don't see how this script helps anyone do it, and I also don't really see how it would have a significant effect on anything even if it did. Maybe you've got better stuff and more choices in Necroscream, but with Wildarrane the best you could do is maybe sneak one extra low-stanza effect in with a false refrain. I doubt it'd be worth the trouble, let alone the delay of higher-stanza effects. And if it would, people can do it with Fugue anyway. So just sit back and enjoy the chance to actually sing a song, eh?
Sybl2006-11-18 02:39:10
Don't mind Verithrax, he just has to ***** and moan about everything.
Unknown2006-11-18 17:41:11
QUOTE(Verithrax @ Nov 17 2006, 02:30 AM) 354186

You do realise that now people are going to start creating systems for modifying the *effects* of their songs on the fly (As if they hadn't already), pretty much killing the one cool thing about bardic combat?


Bolded the important part. If they already modify songs on the fly, why the attack? Sod off. angry.gif

This script is handy. I'd use it... well, if I had a bard character. Any active character, I mean.