Entertainer Archive
Thread: More lessons in advanced alias/macro use in routines
Page 1 of 1
Tiaga
Thu Dec 25, 2003 2:58 am
#1
Last time, if you will recall, I covered how to use aliases to make a toggle to change bandflourishes on/off, or to change the flourish hotkeys from band to group without changing panes.
This time, I'll covered something I'm sure anyone who's tried to setup a macro for a routine has been baffled by - how to setup a series of macros to execute in sequence.
When I say macros, really I mean macros or aliases. However, I'm primarily focusing on aliases for most of these, as aliases are much more powerful.
Now lets say you're making a composition of one of the pieces of music. You've got an intro, three song segments, and a close. You repeat the various parts in different orders. So as follows:
/alias musicintro /flo 1;/pause 4;/flo 2;/pause 4;/flo 6;/pause 4;/flo 1;/pause 4;/
/alias musicpart1 /flo 6;/pause 4;/flo 7;/pause 4;/flo 6;/pause 4;/flo 4;/pause 4;/
/alias musicpart2 /flo 3;/pause 4;/flo 2;/pause 4;/flo 4;/pause 4;/flo 5;/pause 4;/
/alias musicpart3 /flo 8;/pause 4;/flo 3;/pause 4;/flo 4;/pause 4;/flo 1;/pause 4;/
/alias musicclose /flo 6;/pause 4;/flo 7;/pause 4;/flo 8;/pause 4;/stopmusic
Lets say you wanted to play the intro, part 1, part 2, part 1, part 3, part 1, part 2, part 1, close. How would you write that? I'm sure many of you would do something like the following:
/alias playmusic /musicintro;/pause 16;/musicpart1;/pause 16;/musicpart2;/pause 16;/musicpart1;/pause 16;/musicpart3;/pause 16;/musicpart1;/pause 16;/musicpart2;/pause 16;/musicpart1;/pause 16;/musicclose
What a mess! It's long, hard to read, and you have to know how long to pause. If you change the number of flourishes in one of the parts you have to hunt down everywhere it is used to fix the pause. Not to mention it takes a bit of typing just to enter it.
Here's how I would do it:
/alias playmusic /musicintro musicpart1 musicpart2 musicpart1 musicpart3 musicpart1 musicpart2 musicpart1 musicclose
Much easier to read. It reads exactly like it sounds - play the intro, part 1, 2, 1, 3, 1, 2, 1, close. And it doesn't have to guess how long it needs to pause.
Now before you go trying this out, I should explain why it works. When you use an alias, you enter it's name. For example, /playmusic. As you know, many commands you can put stuff after it. For example, when you type "/whisper Hello" it treats whisper as the command, and the rest of the line as what you are whispering.
With aliases, obviously you aren't saying anything. However, you can still type things after the alias name. What happens to them is they get added onto the end of the alias. So if I made an alias called currentchat (Or even cc for shorter) that was just /whisper, /gsay, /say, /shout, etc.. Then I could type /cc Hello! And it would whisper it, group say, say, or shout it depending on what the alias is.
If you look back up at the aliases I wrote, all but the close end in ;/ for some reason. To understand the reason, look at the playmusic alias. When you take the musicintro alias and add "musicpart1 musicpart2 ..." to the end of it, the end of it becomes "/pause 4;/musicpart1 musicpart2 ...".
See where this is going?
Now I covered musicians first.. But this is an even BIGGER boon to dancers. Each flourish takes a different amount of time, so creating routines becomes a bit of a pain. Well, you can go through the pain just once and time each flourish. Then create an alias for it with the flourish and appropriate pause. For example:
/alias poplockflo1 /changedance poplock;/flourish 1;/pause 7.1;/
Now assuming you had a bunch of these defined, you could do something like:
/poplockflo1 poplockflo2 poplockflo1 poplockflo4 poplockflo3 popularflo2 popularflo3
You could even give the moves names instead of calling them flo1, flo2, etc. Either way, you end up with it doing each flourish right after the previous one ends. You may notice I mixxed poplock and popular. The way I wrote the poplock alias, it switches to poplock first. If all of them do that, then you don't need to worry about which dance you were doing, you'll start doing the right dance for the flourish.
Now, I leave as an excercise to the reader this... If you combine my last lesson and this one, you could create a way to queue up a flourish for dancing the same way musicians can cue up music flourishes. Well, not quite the same, you'd only be able to do one in advance. The basic idea is you have a set of hotkeys that redefine a "nextflourish" alias. It would set it to something like "/poplockflo1 nextflourish". This won't work exactly as written, but there are ways to get it to work. In this way you could hit the hotkey while doing an alias and you'd start that flourish next.
This time, I'll covered something I'm sure anyone who's tried to setup a macro for a routine has been baffled by - how to setup a series of macros to execute in sequence.
When I say macros, really I mean macros or aliases. However, I'm primarily focusing on aliases for most of these, as aliases are much more powerful.
Now lets say you're making a composition of one of the pieces of music. You've got an intro, three song segments, and a close. You repeat the various parts in different orders. So as follows:
/alias musicintro /flo 1;/pause 4;/flo 2;/pause 4;/flo 6;/pause 4;/flo 1;/pause 4;/
/alias musicpart1 /flo 6;/pause 4;/flo 7;/pause 4;/flo 6;/pause 4;/flo 4;/pause 4;/
/alias musicpart2 /flo 3;/pause 4;/flo 2;/pause 4;/flo 4;/pause 4;/flo 5;/pause 4;/
/alias musicpart3 /flo 8;/pause 4;/flo 3;/pause 4;/flo 4;/pause 4;/flo 1;/pause 4;/
/alias musicclose /flo 6;/pause 4;/flo 7;/pause 4;/flo 8;/pause 4;/stopmusic
Lets say you wanted to play the intro, part 1, part 2, part 1, part 3, part 1, part 2, part 1, close. How would you write that? I'm sure many of you would do something like the following:
/alias playmusic /musicintro;/pause 16;/musicpart1;/pause 16;/musicpart2;/pause 16;/musicpart1;/pause 16;/musicpart3;/pause 16;/musicpart1;/pause 16;/musicpart2;/pause 16;/musicpart1;/pause 16;/musicclose
What a mess! It's long, hard to read, and you have to know how long to pause. If you change the number of flourishes in one of the parts you have to hunt down everywhere it is used to fix the pause. Not to mention it takes a bit of typing just to enter it.
Here's how I would do it:
/alias playmusic /musicintro musicpart1 musicpart2 musicpart1 musicpart3 musicpart1 musicpart2 musicpart1 musicclose
Much easier to read. It reads exactly like it sounds - play the intro, part 1, 2, 1, 3, 1, 2, 1, close. And it doesn't have to guess how long it needs to pause.
Now before you go trying this out, I should explain why it works. When you use an alias, you enter it's name. For example, /playmusic. As you know, many commands you can put stuff after it. For example, when you type "/whisper Hello" it treats whisper as the command, and the rest of the line as what you are whispering.
With aliases, obviously you aren't saying anything. However, you can still type things after the alias name. What happens to them is they get added onto the end of the alias. So if I made an alias called currentchat (Or even cc for shorter) that was just /whisper, /gsay, /say, /shout, etc.. Then I could type /cc Hello! And it would whisper it, group say, say, or shout it depending on what the alias is.
If you look back up at the aliases I wrote, all but the close end in ;/ for some reason. To understand the reason, look at the playmusic alias. When you take the musicintro alias and add "musicpart1 musicpart2 ..." to the end of it, the end of it becomes "/pause 4;/musicpart1 musicpart2 ...".
See where this is going?
Now I covered musicians first.. But this is an even BIGGER boon to dancers. Each flourish takes a different amount of time, so creating routines becomes a bit of a pain. Well, you can go through the pain just once and time each flourish. Then create an alias for it with the flourish and appropriate pause. For example:
/alias poplockflo1 /changedance poplock;/flourish 1;/pause 7.1;/
Now assuming you had a bunch of these defined, you could do something like:
/poplockflo1 poplockflo2 poplockflo1 poplockflo4 poplockflo3 popularflo2 popularflo3
You could even give the moves names instead of calling them flo1, flo2, etc. Either way, you end up with it doing each flourish right after the previous one ends. You may notice I mixxed poplock and popular. The way I wrote the poplock alias, it switches to poplock first. If all of them do that, then you don't need to worry about which dance you were doing, you'll start doing the right dance for the flourish.
Now, I leave as an excercise to the reader this... If you combine my last lesson and this one, you could create a way to queue up a flourish for dancing the same way musicians can cue up music flourishes. Well, not quite the same, you'd only be able to do one in advance. The basic idea is you have a set of hotkeys that redefine a "nextflourish" alias. It would set it to something like "/poplockflo1 nextflourish". This won't work exactly as written, but there are ways to get it to work. In this way you could hit the hotkey while doing an alias and you'd start that flourish next.
Tiaga
Thu Dec 25, 2003 4:03 am
#2
Well I said it would be an excercise to the reader, but here's a sample of how to setup queued flourishes. This is the first 4 flourishes of poplock. (Because I refuse to recognize poplock has more than 4 until they put nice ones in.) This will let people see in action what I meant by queueing dance steps.
To do this you will need to create several macros and put aliases in your aliases file. The aliases can either go in aliases.txt (In your SWG directory) or a different .txt file (Also in your SWG directory) that you then /load. For example, if you named it dances.txt you would /load dances.txt.
The aliases to put in your alias file are:
Now you will need to create several macros as well. All except one are also used as hotkeys. The macros are:
BandFlourishToggle
NextFlourish
DancePoplock
StopDance
Flourish1
(Repeat for 2-8)
DanceIdle
Once you have all that entered, set the Flourish1...Flourish8 hotkeys in your hotbutton bar for F1-F8. Put DanceIdle at F9. I then put StopDance to the far right, and DancePoplock in the second row. Use that hotkey to start dancing poplock. Now hit one of the flourishes. You won't do it immediately, but you will start soon. While that flourish is happening, hit another. You will start that flourish when the first finishes. (If you take out the second line of the nextflourish macro, you will keep doing the same flourish over and over.) If you hit a flourish hotkey then decide not to do it, hit the idle one to cancel it.
Be warned though that this creates a LOT of text to scroll across your currently selected tab in your chat box. So I recomment dragging any tabs you want to actually read off the chat box. Or better yet, create a new tab to drag off.
To do this you will need to create several macros and put aliases in your aliases file. The aliases can either go in aliases.txt (In your SWG directory) or a different .txt file (Also in your SWG directory) that you then /load. For example, if you named it dances.txt you would /load dances.txt.
The aliases to put in your alias file are:
bandoff /echo \#cccc00Enableing solo flourish mode.\#.;/band off;/scflo /flourish;/alias bandtoggle /bandon
bandon /echo \#cccc00Enableing band flourish mode.\#.;/band on;/scflo /band;/alias bandtoggle /bandoff
bandtoggle /bandon
currentflo /flourish
doflo1 /currentflo 1
doflo2 /currentflo 2
doflo3 /currentflo 3
doflo4 /currentflo 4
doflo5 /currentflo 5
doflo6 /currentflo 6
doflo7 /currentflo 7
doflo8 /currentflo 8
poplockflo1 /currentflo 1;/pause 7.2;/
poplockflo2 /currentflo 2;/pause 12.1;/
poplockflo3 /currentflo 3;/pause 12.1;/
poplockflo4 /currentflo 4;/pause 10.5;/
Now you will need to create several macros as well. All except one are also used as hotkeys. The macros are:
BandFlourishToggle
/bandtoggle
NextFlourish
/nextflourish
/alias nextflourish /pause 2;/macro nextflourish
DancePoplock
/startdance poplock
/alias nextflourish /pause 0.5;/macro nextflourish
/alias doflo1 /alias nextflourish /poplockflo1 macro nextflourish
/alias doflo2 /alias nextflourish /poplockflo2 macro nextflourish
/alias doflo3 /alias nextflourish /poplockflo3 macro nextflourish
/alias doflo4 /alias nextflourish /poplockflo4 macro nextflourish
/nextflourish
StopDance
/stopdance
/alias doflo1 /currentflo 1
/alias doflo2 /currentflo 2
/alias doflo3 /currentflo 3
/alias doflo4 /currentflo 4
/alias doflo5 /currentflo 5
/alias doflo6 /currentflo 6
/alias doflo7 /currentflo 7
/alias doflo8 /currentflo 8
/dump
Flourish1
/doflo1
(Repeat for 2-8)
DanceIdle
/alias nextflourish /pause 2;/macro nextflourish
Once you have all that entered, set the Flourish1...Flourish8 hotkeys in your hotbutton bar for F1-F8. Put DanceIdle at F9. I then put StopDance to the far right, and DancePoplock in the second row. Use that hotkey to start dancing poplock. Now hit one of the flourishes. You won't do it immediately, but you will start soon. While that flourish is happening, hit another. You will start that flourish when the first finishes. (If you take out the second line of the nextflourish macro, you will keep doing the same flourish over and over.) If you hit a flourish hotkey then decide not to do it, hit the idle one to cancel it.
Be warned though that this creates a LOT of text to scroll across your currently selected tab in your chat box. So I recomment dragging any tabs you want to actually read off the chat box. Or better yet, create a new tab to drag off.
NJ62
Sun Dec 28, 2003 3:06 pm
#3
Wow, that explains everything. Thank you so much! I'll print that sucker out and get started plotting out my dance routine (because 5 minutes later I can't remember what flourish 1 looks like).
Chessack
Sun Dec 28, 2003 6:38 pm
#4
Very, very nice.
I did not know about the /echo command... VERY USEFUL. I keep sending /tells to myself, which is more than a little annoying, especially when a self-tell happens as I am trying to /reply to someone else.
C
I did not know about the /echo command... VERY USEFUL. I keep sending /tells to myself, which is more than a little annoying, especially when a self-tell happens as I am trying to /reply to someone else.
C
Tiaga
Sun Dec 28, 2003 7:40 pm
#5
I took it a step further for dancers.. I actually have an alias file to download that includes all the dances. I posted it in the dancers forum.
Voca
Fri Aug 06, 2004 3:40 pm
#6
Tiaga wrote:
bandoff /echo \#cccc00Enableing solo flourish mode.\#.;/band off;/scflo /flourish;/alias bandtoggle /bandon
bandon /echo \#cccc00Enableing band flourish mode.\#.;/band on;/scflo /band;/alias bandtoggle /bandoff
bandtoggle /bandon
I'm not understanding exactly how these work. In particular, what does the line /scflo /flourish (and /scflo /band) do. I understand this is supposed to toggle between flourishes and bandflourishes, I just don't understand how it does that.
Tiaga
Fri Aug 06, 2004 4:22 pm
#7
Voca wrote:
Tiaga wrote:
bandoff /echo \#cccc00Enableing solo flourish mode.\#.;/band off;/scflo /flourish;/alias bandtoggle /bandon
bandon /echo \#cccc00Enableing band flourish mode.\#.;/band on;/scflo /band;/alias bandtoggle /bandoff
bandtoggle /bandon
I'm not understanding exactly how these work. In particular, what does the line /scflo /flourish (and /scflo /band) do. I understand this is supposed to toggle between flourishes and bandflourishes, I just don't understand how it does that.
Wow, one heck of a /necro there, and a good catch... Don't know how I missed that alias. I don't have my alias list in front of me right now, but the definition for scflo is something like
scflo /alias currentflo
Effectively, /scflo is the equivelent to typing /alias currentflo for me, with the exception that if you use /alias the entire rest of the line becomes the alias, whereas using an alias indirection there makes it use only to the next ;.
Voca
Fri Aug 06, 2004 5:06 pm
#8
Sorry bout the /necro ... but I didn't want to start a new post with links -- then if someone else was searching for info they might end up asking again.
Thanks for the clarification, that makes way more sense now.
Can I put a newbie entertainers vote for this and the other alias post to be put in the links section? I have 6 months under my belt and a Master Doctor/Master Pikeman, but never felt the need to really figure the alias stuff out till I started an entertainer.
Thanks for the clarification, that makes way more sense now.
Can I put a newbie entertainers vote for this and the other alias post to be put in the links section? I have 6 months under my belt and a Master Doctor/Master Pikeman, but never felt the need to really figure the alias stuff out till I started an entertainer.
CM_JaneDoe
Sun Aug 08, 2004 8:59 am
#9
Tiaga wrote:
I took it a step further for dancers.. I actually have an alias file to download that includes all the dances. I posted it in the dancers forum.
I've looked but i cant find this alias, can you post a link?
Kyorlana
Tue Aug 10, 2004 2:07 pm
#10
This is the one Tiaga posted originally though you may want to make some changes for yourself:
Tiaga's Original Dancer File
Tiaga's Original Dancer File
Page 1 of 1