Macros Contributed

Jump to: navigation, search

What I have done, as a new exile, is to organize my macros into separate files that I include in my default and character file. This makes it easier to add what you need in any special character files without 'swimming' through pages of code in your character and default files.

Default file contents

// This macro file is included for every character by default.
// Use it for general macros that you want available to all characters.
// The name of this file is: Default
// It is stored in your clanlord/data/macros folder on Windows & /Applications/clan lord/macros folder on Mac platforms.

include "abbreviations.txt"
include "dances.txt"
include "funactions.txt"
include "moonstone_functions.txt"
include "sunstone-messages.txt"

//The Quickchain
if @my.right_item != "chain"
setglobal rsaveitem @my.right_item
"/equip chain\r"
end if
pause 1
"/use \r"

// roll macro type "/roll <number of dice>d<size of dice>" to use
if rollInProgress == 1
goto end
set rollInProgress 1
set litem @my.left_item
if @my.left_item != "pouch of dice"
"/equip pouchofdice\r"</br> end if
pause 1
"/useitem left " @text "\r"
pause 3
if litem != "pouch of dice"
"/equip " litem "\r" end if
set rollInProgress 0
end if
label end


// Recommend that you keep character personality macros in here or in a file called <yourcharname>-pers.txt
// Most useful to keep in here are your character's clan yells
// Always make sure that you have the include "default" line below in your character's macro file.
// Preferably have this line nearest the top immediately following any comments.

include "default"

// Laughing Academy yells
"/yell Laughing Academy your falling specialists \r"
"/yell Laughing Academy falling at a snell near you \r"
"/yell Laughing Academy... Charge!... er no Run Run!!!! \r"
"/yell Laughing Academy rescue! ... oops. make that We need one too! \r"
end random


// Keep your abbreviations in this file...

// These are the default abbreviations normally found in the default file.
// They have been moved here for easier maintenance.
// Note the \r is required if you want the command executed, otherwise you have
// to press the return key. In some cases you will omit the \r in other macros
// Also note these are case sensitive, in other words aa will work but Aa AA aA wont.

"??" "/help " @text "\r"
// Example usage: ?? pose

"aa" "/action " @text "\r"
"gg" "/give " @text "\r"
"ii" "/info " @text "\r"
"kk" "/karma " @text "\r"
"mm" "/money\r"
"nn" "/news\r"
"pp" "/ponder " @text "\r"
"sh" "/share " @text "\r"
"sl" "/sleep\r"
"t" "/think " @text "\r"
"tt" "/thinkto " @text "\r"
"th" "/thank " @text "\r"
"ui" "/useitem " @text "\r"
"uu" "/use " @text "\r"
"un" "/unshare " @text "\r"
"w" "/who " @text "\r"
"wh" "/whisper " @text "\r"
"yy" "/yell " @text "\r"

// These are ones added by Noivad and others

'brb ' "I'll be right back"
'brt ' "be right there"
'exc ' "excuse me"
'mv ' "move!"
'mw ' "make way"
'tu ' "thank you \r"
'ty ' "thank you \r"
'welc ' "welcome \r"

// These are useful yells in tight situations
"/yell ping \r"
"/yell ! \r"
"/yell ? \r"
end random


// dances....
// This is an example of dances that can be created from simple pose and other commands
// This also demonstrates how to create multi-command macros
// To use type d then the name of the dance and then press the return/enter key.
// For instance to call aki do this:
// dc aki

// Note: Don't use the single letters a through e for any macro as the trigger, it messes up your ability to vote.
"/dc" call @text
"/dance" call @text

"/pose akimbo \r"
pause 1
"/pose attack left \r"
pause 1
"/pose leanleft \r"
pause 1
"/pose attack right \r"
pause 1
"/pose leanright \r"
pause 1
"/pose attack south \r"
"/pose attack north \r"
pause 1
"/pose attack north \r"
"/pose attack south \r"
pause 1
"/pose akimbo \r"
pause 1
"/pose attack right \r"
pause 1
"/pose leanright \r"
pause 1
"/pose attack left \r"
pause 1
"/pose leanleft \r"
pause 1
"/pose sit \r"

"/pose celebrate \r"
"/pose leanleft \r" "/pose leanright \r"
pause 1
"/pose leanleft \r" "/pose leanright \r"
"/pose sit \r"


// This macro file is for fun and common things you do...
// add yours with words that make sense to you...

"/lay" "/pose lie \r"
"/pl" "/pull " @text "\r"
"/ps" "/push " @text "\r"
"/sit" "/pose sit \r"
"/smile" "/action smiles \r"
"/wave" "/action waves \r"

// alternates for the typing impaired
"sm" "/action smiles \r"
"wv" "/action waves \r"


// sunstone messages to friends
// aka my speed dial list
"tbeer" "/thinkto beer " @text "\r"
"tnoi" "/thinkto noivad " @text "\r"

Include anyone you sunstone regularly, so you save time. Using the t before their abbreviated name is a good choice as it makes it easier to speak to the person when you are near them without sunstoning them instead.


To avoid potentially embarrasing or /doh moments, you may want to prefix the above with a "/" as in:

"/tbeer" "/thinkto beer " @text "\r"

Otherwise an errant space (t beer vice tbeer) could make your sunstone messages public (as so many of us have done). The beauty of using a "/" as part of your macro invocation is that if the macro is not defined (aka you make a typo) then rather than the world, or the immediate exiles seeing your mistake, only you will see an error message.

Acting macro

This is a stylesheet/template of sorts for how Inu wrote her play macros. Pretty much Inu pasted in the entire script and made the other characters lines into messages that would only display in the sidebar. To help with readability for the audience, Inu added pauses equivalent to seconds. Where every 4 units of a pause equaled approximately 1 second (also known as the frame rate of Clan Lord). Inu divided the script into a series of triggered macros, each ending at the point where Inu's lines ended and it was the other actor's turn to speak. Please see the Zomeo page for the actual code.

Movie Segment macro

This macro starts a Clan Lord movie (or visionstone) when you press command-r. Then every 30 minutes, it stops recording and immediately starts again. Thus, what would be a very long recording is broken into more convenient segments. You can adjust the length of the segments by changing the "pause 7680" line. Just multiply the number of minutes you want by 256 and substitute that result for 7680.

 // ******************************
 // *** Movie recording macros ***
 // *** segment movies into    ***
 // *** 30-minute chunks       ***
 // *** written by Torin       ***
  setglobal movie_recording 1
  label newsegment
  "/record off"\r
  "/record on"\r
  pause 7680
  if movie_recording == 0
    goto endrecording
  end if
  goto newsegment
  label endrecording
  setglobal movie_recording 0
  "/record off \r"
 // *** End of movie     ***
 // *** recording macros ***
 // ************************

This macro grew out of a Sentinel thread. Largo and Gorvin submitted movie-segmenting macros that inspired the one above.

Alternate Default Series

This is an alternate default macro with supporting adapted macro files which take advantage of the examples posted above and linked in. It's main purpose is to consolidate scanning loops, key assignments, login macros, and global variables.

AlternateDefault -- Rename to default in actual usage.


More to follow....