Category Archives: SmartDancer Mother

SmartDancer-Performance HUD – Tips 2022

#################################

PERF-HUD and SD Timings

Here are 2 simple commands to READ and PLAY an SD sequence from the PERF HUD

*autofx
TRACE,off
1,SD=READ_SD_SEQ%1$
2,SD=PLAY_SEQ$
END

This reads sequence #1

Here is the *events nc.
TRACE,off
ELAPSED
1,ReadSeq1,1
2,PlaySeq,7
3,End,30
END

notice the 2nd event at 6 seconds allows for about 19 total lines (13 good lines) of SD sequence to be read.
before it tries to play. Try just reading the sequence to see how long it takes.

[22:54:24] (You): ….
[22:54:30] PE18a-r – Artiste SmartDancer – Controller – v12.45 – RC7: [SEQ] End of Sequence: *sequence1 – 13 Read. FREE Memory: 18454
[22:54:30] PE18a-r – Artiste SmartDancer – Controller – v12.45 – RC7: $$$

*sequence1
/* lineno, command, parm | elapsedtime or durationtime
/* Dance is WITHOUT at-sign and applies to a duplicated division (i.e. J-R and A-I have same division
/* Dance2 is WITH at-sign (@) – Division is WITHOUT pound-sign (#)

ElapsedOrDuration,elapsed
0,TraceSequenceTimes,on | 0.1
00,Hide | 0.2
00,GlowContr, 0.0 | 0.3
1,MoveController,4| 1
2,Dance,Riverdance | 2
3,FORMJR,ROWS2JR | 4
4,FORMJR,COLUMNSJR | 14
5,Dance,Riverdance2 | 25
6,FORMJR,FIVEFOURJR | 34
7,MoveController,2 | 35
8,FORMJR,SINGLEFILEJR | 36
9,FORMJR,LINEJR | 46
10,StopAll | 60
END

#################################

TIME

Allow enough time !

Assume a DDMoveTau,9 seconds.
How much time before the next command”?

Q: FORM (i.e. FORMJR,FORMAI,FORMALL)
A: 9

Q: JUNEs
A: 9

Q:SEMILEFT or SEMIRIGHT
A: 18

Q: READing a sequence of 20 statement lines + 4 comment lines followed by an end followed by a blank line and 5 more lines first time read could be a lot.  Subsequent times will be less.
A: 31

SmartDancer – 152 – Ranges and Targets

Ranges and Targets

A range consists of a starting and ending letter in the range of A thru R, where subsequent actions become effectual.    It can use the hyphen as a separator.  Example: K-N.
Or it can SOMETIMES be explicit;   KLMN.

There are 4 places where RANGES can be specified.

Three of them are involved in creating your animesh:

1 – FileCopier
2 – Replicator
3 –  SmartDancer Controller

These 3 always use the hyphenated version.  Ranges for the FileCopier and Replicator are specified in the Description fields. .  It is good practice to specify a single letter range thusly:
Example: J-J.

*********************************
Changing the SmartDancer Controller range:

 

An exterior range is specified in the SmartDancer Controller by changing the 5th and 6th position of the object-name using lower-case letters. Valid letters are a thru r.  This range can be further delimited during the execution phase by using the Target command. Target specifies a range for which subsequent actions will affect.

Example:  PE18j-r

Press the Reset button on the SmartDancer Controller after changing its name

*********************************
Changing the FileCopier range:

 


Press the [UPDATE] button.

 


Press the [RANGE] button.

 


Type in a hyphenated Range then press Submit

 


Then as a precaution, press the Reset button.
Your new range should show up in the
HoverText as confirmation.

*********************************
Changing the REPLICATOR range:


You must MANUALLY change the DESCRIPTION field in the replicator.

After changing the description field, you must press the Reset button.

Current RANGE to REPLICATE or KILL or CLEAN: ==> N-P

REPLICATE makes copies of the embedded Animesh inside the replicator

KILL_MESH deletes the Animesh.

CLEAN_MESH deletes the contents of the animesh without deleting the Animesh

 

For further discussions on TARGETing  see: 

SMARTDANCER 140 – TARGETING, GROUPING, AND TURNS

 

 

 

 

SmartDancer 150 – SmartDancer Menus

The SmartDancer Controller is meant to be an aid to design-time experimentation and discovery via button-presses.  It is also responsible for executing notecard-ed sequences of events on a timeline that can be by elapsed-time and/or duration-time based.

SmartDancer Controller can be controlled by external devices via chat and channel and can also send chat and channel commands to other devices.

Below is a detailed discussion of the menus and submenu features.

**********************
Reset

You must press the Reset button whenever you change notecards, EXEPT sequence notecards.  You can use Read&PlaySQ or READ_SEQ buttons to just read changes made to *sequence ncs. This will be faster. But a full Reset will also re-read *sequence ncs.

**********************
Read&PlaySQ

Press this button after you have made changes to a *sequence nc.  This will always read the LAST *sequence nc read in.  Upon Reset it will always re-read *sequence1. Then it will play/execute that sequence from the beginning.

**********************
[Expansion]

This button opens up a sub-menu.  The submenus from here were designed to expand SmartDancer from 9 dancers to 18 dancers as well as hold some other commands. The initial sub-menu leads to buttons to Capture formations for J thru R and A thru I.  A further submenu leads to A thru I formation selection and execution.  Also provided is a faster access to creating a target for effects and Canons, called TargetExp. It functions the same as the other Target.

SwapNines and UnSwapNines allows dancers to execute all 22 formations instead of just the initial 11.  By Swapping, A-I can also access *formations nc animations and J-R can also access *expansions nc animations.

PlayLastSeq re-executes the last sequence read without re-reading the nc.

[Expansions] leads to a sub-menu that allows A-I dancers to execute formations defined on the *expansions nc

AutoJuneOffAutoJune is ON by default. Pressing this button turns it off.  This means that a June will NOT take effect until the next formation is chosen, as opposed to automatically executing, using the current formations.

[SetWall] is an inoperative place-holder for a possible future feature.

 

**********************
[Divisions]

This button takes you to a submenu that allows you to select a division. There are 4 divisions. A,B,C, and D.  Dancers will belong to 1 and only 1 Division at a time. Divisions are how animations are assigned. It is how up to 4 different animations can be playing among animesh/poseball dancers at the same time.  A new Division called E implies ALL divisions (A thru D);

**********************
[SendToDivs] 

This sub-menu off of the Divisions menu lets you designate which of the for Divisions (A,B,C,D) will be receiving sub-sequent animations.  SendItToE sends to ALL divisions.

Also there is a CacheAnims button that runs thru caching all animations via each dancer twice ad 0.2 second intervals.

MasterStart is a button that begins executing all sequences listed on the *sequence0 nc, starting the 1st sequence listed and ending at the last sequence listed.

There are some handy menu lines that help remind you of what buttons you have pressed and which animation was sent last
Anim Sent (this is the actual animation name) and Last Anim for Div(s).  Also what division the next animation will be sent to, -Next Anim sent for Division(s)

The Last Btn: A thru E denotes the last animation, by button-name, that was sent to that Division.  PrevBtn lists the button prior to the last animation button pressed.

Last Anim for Div(s) denotes the last division an animation was sent to.

Cur Div Ptrn is the current division. Tand Last Divisions are self-explanatory.

Now is a good time to remind you that once sequences begin, all bets are off. The menu line items are not reliable in reflecting what has been executed on sequences or prepforms.  For example, it is now possible to specify an 18 character division using a sequencer command but that may not be reflected here.

Canon Anim will tell you if you of a canon animation override via the menu, using the CanonDance button.  It will tell you which button you pressed.

StartKillKeep will be either StartKill or StartKeep.  StartKill is the default and means each new animation becomes a backing animation.  StartKeep means that the first animation after StartKeep status becomes the backing animation and is not overridden with subsequent animations.  There is a whole post on this subject.  StartKillKeep Link

**********************
[Options] 

This button leads to a submenu that allows you to PLAY your last-read-in sequence. It also leads to specifying effects, like Glow, Vanish/Appear, Color, etc.   You can show/hide hover-text that appears above the animesh and poseballs that identify them as unique and addressable for features like TARGETING

And you can STOP_SEQ, (stop the currently running sequence).  This STOP_SEQ button will also attempt to restore the animesh/poseballs to their initial state of default formations, turn home, june home orientations, and turn off all effects.

PLAY_SEQ plays the current (last read in) sequence.

ReReadSeq will reread the last-read-in sequence WITHOUT playing it.

ReReadPrep will reread the last-read-in PREP nc (*prepform) WITHOUT playing it.

Show/Hide will toggle showing or hiding ot the SmartDancer Controller itself.  It will reappear on Reset unless AutoHide,on is set in the *channels nc inside the SmartDancer Controller

AutoGlow turns on glow AFTER AutoGlowAmount is set.  There was no room for it on the normal Autos menu.  This glow effect happens on each Canon cycle/interval.

DumpSetting will attempt to dump a snapshot of the contents of the primary settings you have chosen with the menu buttons into an InstantMessage sent to you.

SetRot2Zero will reset the SmartDancer Controller’s orientation (rotation) to (0,0,0).  I found this handy when using multiple controllers.

**********************
[Controls]

This menus most used feature is the STOPALL.  This stops all functions but does NOT restore the SmartDancer dancers.  STOP_SEQ is used for that function.  Most of the other buttons allow you to view categories of dances as you have defined them in the *animations nc.  This saves you having to scroll thru all the animations page-by-page to find the one you wish to audition.  The StopLast button stops the LAST ANIMATION.  This will cause the previous ANIMATION to play.  If no previous animation then the standing animation will play.  You can get to a submenu for STOPS that allow you to stop via division. Also, you can select a particular PrepForm via the [PrepForm] button.

The DanceTime button allows you to temporarily change a dances time for testing.  You can make the time less than the maximum length.  You can also tell it to how many times you want it to repeat.

**********************
[Turns]

This menu allows you to turn selected dancers to face a direction.  North, South, East, or West.  This is accomplished by turning LEFT, RIGHT, or 180. Turn-Home, as of this writing, has been temporarily disabled.  Two very powerful Turns are the Turn-In and Turn-Out.  These 2 buttons only function if GROUPING is HALF or ALTERNATE.  These 2 groupings divide the dancers into 2 predefined groupings, referred to as X and Y.  The Z grouping implies NO GROUPING.  When HALF is chosen, the left-half of the dancers becomes X and the right half becomes Y.   When Alternate is chosen, every other dancer becomes X starting with A and J. The others become Y.

HALF
JKLM becomes X and ABCD becomes X.
NOPQR becomes Y and EFGHI becomes Y.

ALTERNATE
ACEGI becomes X and JLNPR becomes X.
BDFH becomes Y and KMOQ becomes Y.

Turn-In causes X to turn left or counter-clockwise and causes Y to turn right or clockwise.

Turn-Out causes X to turn right or clockwise and causes Y to turn left or counter-clockwise.

**********************
[Junes]

Junes allow all formations to rotate around the controller in a clockwise or counterclockwise direction. SetJuneLeft rotates all dancers within the JuneTarget in a counterclockwise direction.  SetJuneRight rotates all dancers within the JuneTarget in a clockwise direction.

The June lasts for the duration of the speed of one formation transition.  Junes perform the most recent formation for both A-I and J-R unless AutoJune is off.  (It is on by default). Then it will wait and perform the June on the next formation selected.

SemiLeft and SemiRight will perform 2 Junes in a row which will last twice the length of a formation transition.  This results in an 180 rotation around the primary Controller.

Junes also can have their own special target.  You use the XJuneTarget button to set a target for subsequent Junes.

SetJune45L will June 45 degrees counterclockwise.
SetJune45R will June 45 degrees clockwise.

SetJuneHome will return to the home rotation, fixed upon reset.
ClearJuneTar will set the June Target to all (abcdefghijklmnopqr).

**********************
[Canons]

Canons allow dancers both animesh and avatars, to do solos. They can all do the same animation solo or each one can do a different animation or combinations of both.  Canons are subject to Targeting.
There are a LOT of posts and videos explaining more in depth on how the different types of Canons work.  The menu title has  values that start with the letter C followed by a blank. These are all Canon values.

Canons can be animations or turns or both.  To make them both, then toggle the Turns&Anims button. Anims Only is the default.  To make the Canons only turns, toggle the TurnsOnly button.
Canons turn left Or right but if they are AnimsOnly then it does not matter which canon-direction button you choose. It will animate but not turn.

Canons can run forward, from first letter of target to last letter of target.  Or they can run in reverse from last letter of target to first letter of target. Canons have a primary and secondary animation. They also have a primary and secondary duration/interval.  They can be specified in the *smartdancer nc inside each animesh/avatar to make the animations unique to each dancer, or they can all be overridden at the SmartDancer Controller level. And the SmartDancer Controller specification itself, can be overridden at run-time by using the DanceCanon command and Speed command.

CanonTurnIn and CanonTurnOut are only valid when Grouping is HALF or ALTERNATE. They are subject to the same turn specifications as the [Turns] TurnIn and TurnOut.

Select2 button allows you to toggle between CanonAnimation1 and CanonAnimation2.

[CanonOrder] leads to a submenu that provides more options, including the order of execution of the 2 sets of 9 dancers (A-I and J-R).  There are also some more options on this submenu for fancier Canon-ing

The CanonDance button provides you with the ability to override the animesh/avatar level animation and SmartDancer Controller animations.  It is only temporary but works and is easier to change than having to edit the SmartDancer Controller *channels nc.  NOTE that the sequencer command is DanceCanon so don’t assume.

**********************
[Canon Order]

The Canon Order menu has additional Canon features.  It started out as just a place to change the order of Canon Execution.  Then it grew with a few more features.   Fortunately we have detailed posts with video to explain some of the extra features.

You get 6 built-in orders but you can create any type of custom order at run-time using the CanonOrder command.
Example:  $182736459 means that the 1st canon will be 01_A followed by 01_H (the 8th letter of the alphabet).  Then 01_B, then 01_G, etc.  After it gets to 01_I (9th letter), it repeats with 01_J followed by 01_Q, etc.  In other words, the pattern simply  repeats A-I to J-R.

For the Switch/UnSwitch toggle please see this post==> Switch/UnSwitch

For the Hold/Release toggle please see this post==> Hold/Release 

For the Finish/UnFinish toggle please see this post==>Finish/UnFinish

**********************
[Sequences]

 

The Sequences Menu allows you to choose a specific *sequence nc to read in as the CURRENT sequence. These serquence names are defined in the *sequence0 nc.  You access it via the [Expansion] button from the Main Menu.



S

 

**********************
[Canons]

**********************
[Canons]

**********************
[Canons]

 

 

SmartDancer 148 – MANUAL QuickStart Setup For SmartDancer File Copier and SmartDancer Replicator

1 – ACQUIRE COPY/MOD Animesh

2 – REMOVE all scripts and animations from its root and links that you do not plan to use.

3 – COPY the PinMe script into an animesh.  TOUCH the Animesh or Poseball. It will delete itself yet allow the SmartDancer communication scripts to be copied into it. If it is Animesh, it will DELETE ALL non-copyable items. (notecards, scripts, animations, objects)

4 – EDIT the *smartdancer and *filemanager notecards to your liking, making sure that the channels match the anchor and each other:

Examples:

Found inside your File Copier are:
*filemanager nc
FileCopierToMeshChannel,-12345
PingBackFromMeshToFileCopierChannel,-67890

*filecopier nc
FileCopierToMeshChannel,-12345
PingBackFromMeshToFileCopierChannel,-67890

*smartdancer nc
AnchorToAnimeshAndAvatarChannel,-224466

Found inside your Anchor
*anchor nc
AnchorToAnimeshAndAvatarChannel,-224466

5 – COPY the *filemanager nc  into an Animesh renamed to ArtistePalette_01_A

6 – COPY the *smartdancer nc  into the same Animesh named ArtistePalette_01_A

7 – COPY the *AA_FileManager script into your Animesh named ArtistePalette_01_A

8 – COPY the *AA_Refresher script into your Animesh named ArtistePalette_01_A

9 – COPY the *AA_Refresher script into your Animesh named ArtistePalette_01_A

10 – COPY the *AA_ScriptLoader script into your Animesh named ArtistePalette_01_A

11 – COPY the animation called ‘standing‘ into your Animesh.

12 – Reset Scripts Manually

This COMPLETES the Initialization process.  Technically, if you intended on doing manual updates all the time then all you would need for your initialization process are  the *smartdancer nc and the standing animation loaded into your animation.


INSTALLATION

13 – COPY the following 6 scripts into your Animesh named ArtistePalette_01_A

1-Animesh AIFormations
2-Animesh JRFormations
3-Animesh Receiver
4-Animesh Resetter
5-Animesh SmartDancer
6-Animesh TurnCompletionDelay

14 – OPEN each script and set it to RUNNING
15 – Press RESET on the SmartDancer Controller

SmartDancer 146 – AUTOMATIC QuickStart Setup For SmartDancer File Copier and SmartDancer Replicator

AConfigure notecards
BPinMe – (copy pin)
CInitialize –  (installs bootstrap)
DInstall – (installs scripts)
ECopyAnims – (copy showtime dance,poses,AOs)
FReplicate – (make A to R copies)
G – Reset – Automesh Individually (locally) [optional as needed]

============

STEP  1:  BUY an animesh that is MOD/COPY
STEP  2:  REMOVE all scripts and animations MOD/COPY
STEP  3: CONFIGURE *smartdancer
nc. You can always change it later. See SmartDancer 116 – SETUP.
STEP  4: CONFIGURE *filemanager
nc.   Match Channels with *filecopier
STEP  5: CONFIGURE *filemanager
nc.   Match Channels with *filemanager

STEP  6: RENAME one poseball to ArtistePalette_01_A. 

NOTE: You MUST Change the PHYSICS SHAPE TYPE from PRIM to CONVEX HULL

STEP  7: RENAME another animesh to ArtistePalette_01_J.


STEP  8: GIVE
Names to any attachments/links (i.e. clothing) to
ArtistePalette_01_J
that you foresee changing color or making glow in the future.  Assuming J-R will be used for Animesh and some or all of A-I will be used for avatars.

STEP  9a: RESET the  SmartDancer Controller by pressing Reset on it.

STEP 9b: REMOVE all scripts and animations from its root and links that you do not plan to use.

STEP 9c: COPY *AA_PinMe script into ArtistePalette_01_J and ArtistePalette_01_A.  TOUCH the object and it will PIN the animesh or poseball and then delete itself.   It will delete itself yet allow the SmartDancer communication scripts to be copied into it. If it is Animesh, it will also DELETE ALL non-copyable items before deleting itself. (notecards, scripts, animations, objects)

 STEP 10: RUN INITIALIZATION from the SmartDancer Controller
*AA_ArtistePoseBallSit  script will also be installed into

ArtistePalette_01_A.

ArtistePalette_01_J

*****************************

STEP 11: 11-07-21:  EDIT the FinalTurnAdj entry in the *smartdancer nc inside the J animesh. (Right, Left, or 180)
SmartDancer Controller always rezzes (or should) SOUTH. (0,0,0).
To determine what your adjustment should be for Animesh, determine how you would have to turn to face South after the Animesh rezzes normally.  EX:  FinalTurnAdj,Left if your Animesh was rezzed facing WEST.

STEP 12: 11-07-21: RENAME Description Field of FileCopier to J-J

STEP 13: 11-07-21: RUN INSTALL


ArtistePalette_01_J

STEP 13COPY the animations loaded into the FileCopier using the CopyAnims button

STEP 14: RENAME Description field of the SmartDancer Replicator to K-R.  as we configure one animesh then we will use REPLICATOR to create K-R

STEP 15: PLACE ArtistePalette_01_J into the SmartDancer Replicator.  (Replace if necessary)This is Animesh that has all the animations in it.

Be sure the channel in the *replicator nc matches the ChannelForSmartDancerFollower,-897431670 in the *smartdancer nc of the animesh/poseballs, whatever it happens to be then reset the replicator scripts.

STEP 16: TOUCH the SmartDancer Replicator.  Get the menu.

STEP 17: 11-07-21:  MOVE REPLICATOR so you have room for as many replications as you expect. In this case, 9.

STEP 18: 11-07-21:   PRESS REPLICATE button on REPLICATOR

STEP 19: RENAME the object name field of your SmartDancer Controller to J-R, if not already.

PE18j-r – Artiste SmartDancer – Controller

ArtistePalette_01_J


ArtistePalette_01_A

**********************
FOR POSEBALLS:

STEP 20: SPECIFY the names of the poseballs you want to configure i.e. (A-I, ADG, etc) and rename the description field of the SmartDancer Controller.

STEP 21:  RUN INSTALL from the SmartDancer Controller

STEP 23: RUN CopyAnims from FileCopier

STEP 24: RENAME the Description field of the SmartDancer Replicator to A-I or ADG or ???

STEP 25:  TOUCH the SmartDancer Replicator

STEP 26:  PRESS Replicate button

**********************


STEP 27:
  RESET your SmartDancer Controller

STEP 28: CONFIGURE: SmartDancer Controller
*channels nc
*animations nc
*divisions (optional)

STEP 29: CREATE Formations and configure the *formations nc

STEP 30:  RESET your SmartDancer Controller again

STEP 31  RESET  – Automesh Individually (locally) [optional as needed]

*************************

READY TO CHOREOGRAPH AND HAVE FUN !!!!

Use your SmartDancer RELAY HUD for easy distant region-wide access to your SmartDancer Controller.  Handy for backstage reach.  Just click on it on a non-button area to open the SmartDancer Controller Menu

SmartDancer RELAY HUD

 

 *********************

For UPDATES to the SmartDancer Controller, the heart of the system, you will simply and easily just receive a NEW  SmartDancer Controller.

But it will be possible to get an updater that just updates one or two scripts when it is a minor change.

For updates to Animesh scripts and notecards, it is a work-in-progress but we have an automated update procedure.

 

 

 

 

 

 

 

SmartDancer 136 – Links

108 – Preparables vs Immediates (Passive vs Actives/Actions)
109 – Registering vs Activation
110 – SmartDancer Philosophy

111 – Canons
112 – Animations
113 – COMMANDS – Sequencer
114 – COMMANDS – AutoFX
115 – —————-

116 – Setup
117 – Basic Canon
118 – Canon Reverse
119 – Canon Order
120 – Canon AutoGlow

121 – Canon AutoFade
122 – Canon AutoColor
123 – Canon AutoChat
124 – Canon Turns
125 – Canon Bollywood (Imagination)

126 – CanonDance (aka DanceCanon)
127 – Canon Hold
128 – Canon Switch
129 – Canon Finish
130 – Canon Bollywood (Imagination)

131 – PREP Commands Demoted
132 – Duration Time Introduced as Option to Elapsed Time
133 – Vanish for Avatars
134 – Sequence Master
135 – Playing Sequences

136 – (THIS POST)
137 – Standing Animation
138 – Formations
139 – Junes
140 – Targeting, Grouping, with Turns

141 – Glow
142 – FadeIn, FadeOut
143 – SmartDancer Relay HUD
144 – Eighteen Dancers – Animesh A thru I
145 – File Copier

146 – AUTOMATIC QuickStart Setup For SmartDancer File Copier and SmartDancer Replicator
147 – ColorLinksNow
148 – MANUAL QuickStart Setup For SmartDancer File Copier and SmartDancer Replicator
149 – Adjustments : Animesh : GuruZ, FinalTurnAdj, TurnCompletionDelay
150 – SmartDancer Menus

151 – Artiste Hybrid
152 – Ranges and Targets



 

SmartDancer 135 – Playing Sequences

You can now read in and play any sequence from 1 to 9 and are no longer restricted to just sequence 1 (*sequence1).

*sequence0 is reserved for the Sequence Master that lets you play a series of sequences in the order entered onto the Sequence Master.
Sequences play automatically upon the completion of the previous sequence.

There is a special new menu for selecting a sequence to be read.

From the Main Menu,choose [Divisions] then [SendToDivs] then [Sequences]  then choose a sequence to read in by its sequence name by clicking on it.

Sequence names are created on the sequence Master (*sequence0);

The last sequence READ IN is shown after “Current Sequence”, in this case below it is a sequence called SeqName3

Also, note that *sequence1 is automatically read in upon SD Controller reset so you don’t need to read it in.

Then when ready, press the PLAY_SEQ button via Main-Menu –> [Options] button

If you made recent changes to a sequence, the ReReadSeq button will reread the last sequence selected and read (Current Sequence).

I may, probably, will switch the ReReadSeq and ReReadPrep buttons since I suspect changes would be mad more often to a sequence than to a Prep so it would be less clicks to Reread a Sequence.

NEW!

To Read and Play a sequence from chat or AutoFX

1,SD=READ_AND_PLAY_SD_SEQ%3

(this is different than the previous old command)

or

channel,SDREAD_AND_PLAY_SD_SEQ%2

*****************
Chain Sequences

As an extra option, any sequence can chain to another sequence, but not itself or that would create a loop.

The command format is (example):
*sequence2
13,ChainSeq,6
So the 3th line of sequence 2 chains to *sequence6 and
we must assume that the 13th line is the LAST line of sequence 2 or else there will be unexpected consequences as the system is not built to handle otherwise

 

SmartDancer 116 – SETUP

Check the contents of the SD Box for:

1 – SmartDancer Controller – v9.8 or later
2 – ArtisteAnchor – v3.3g or later
3 – Artiste Performance HUD  v12.3 or later –  NOT NEEDED for STANDALONE use of SmartDancer
4 – Goes Into Animesh – 2 scripts and a *smartdancer nc – THIS HAS BEEN REPLACED by notecards and scripts INSIDE the FILE-COPIER
5  – Help — Refer to the Website for HELP as it will be the most up to date.  Help is  just a cheat-sheet for commands.

SmartDancer 146 – AUTOMATIC QuickStart Setup For SmartDancer File Copier and SmartDancer Replicator

***********************
1 – CHANNELS

NOTE: ResetScripts after you change nc info.   You can often do that with a menu.  There is also a Relay HUD for distance manipulation of your SmartDancer Controller.  Controller has a menu and Anchor has a menu and HUD has a menu.

The MOST IMPORTANT THING to do is choose a unique channel for anchor to animesh/palette communications:

1) the unnamed entry in the *anchor nc in the Anchor MUST MATCH –>
2) the AnchorToAnimeshAndAvatarChannel entry in the *smartdancer nc that goes in the animesh and/or palette AND MUST MATCH –>
3) the ChannelForAnchorToAnimeshAvatar entry in the *channels nc in the SmartDancer Controller AND MUST MATCH –>
4) the AnchorToAnimeshAndAvatarChannel entry in the *filecopier nc in the FileCopier

NEXT

Choose a UNIQUE channel for HUD to Animesh/Palette and Controller to Animesh/Palette communications in:
ChannelForSmartDancerFollower entry in the *channels nc in the SmartDancer Controller MUST MATCH–>
ChannelForSmartDancerFollower in the animesh and/or palette

NEXT

Choose a UNIQUE channel for HUD_TO_EXT entry  in the HUD in the *config nc MUST MATCH the ChannelForFromArtisteHUD entry in the *channels nc in the SmartDancer Controller

NEXT

FileCopierToMeshChannel in the *filemanager nc MUST MATCH the  FileCopierToMeshChannel in the *filecopier nc

Choose a UNIQUE channel for aiding the FileCopier detect duplicate animation names by assigning  a channel to PingBackFromMeshToFileCopierChannel in the *filemanager nc which MUST MATCH PingBackFromMeshToFileCopierChannel  in the *filecopier nc

***********************
2 – ANIMATIONS

NOTE: Copy animations is AUTOMATABLE using FILE-COPIER:

Copy animations into each animesh and/or SmartDancer Poseball.
Complete the *animations nc in the SmartDancer Controller to match the animations you have loaded.  Assign a unique button name to each animation.  (Max. 24 chars – only 10 to 12 will show up)

RESET the File Copier before use.

Change the Description in the FileCopier from J-R to the range of Animesh you wish to copy to.

3 – ANIMESH

Animesh must be COPY/MOD

Rename your animesh to ArtistePalette_01_(J thru R)

Remove all scripts from your animesh.

Set the InitialTurn, value in the *channels nc in the SmartDancer Controller to correct default-rez orientation of your animesh.  This value will be Left, Right180, or blank

Set the InitialJune value in the *channels nc in the SmartDancer Controller to reorient your animesh-line and controller from your design platform to your show-time stage orientation.  It will be Left, Right180, or blank.  There are samples or you can use our SD Ori (Artiste SD Orienter v1.1) to print out the 3 entries based on audience direction.

There is also a FinalTurnAdj entry on the *smartdancer nc. This entry can be non-existent or blank or Left, Right, or 180 and is used to overcome the issue when using animesh from different creators that have different rez orientations.

AlwaysFaceAudience,(on/off) – this entry when on will cause dancers to ALWAYS face the audience regardless of Junes or Formations.  Only TURNS will change the facing.  This entry is off by default.  It can also be set dynamically at run time in a sequence by using the AlwaysFaceAudience command.  Also, this command is sensitive to Targeting.

The SmartController ALWAYS orients to 0,0,0.  So the face/logo of the Controller will always face SOUTH.  This is normal.

NOTE: This is AUTOMATABLE using FILE-COPIER: Copy *smartdancer nc into your animesh first, then add the 2 scripts.  Then set the 2 scripts to RUNNING.

====================

Other *channels nc entries in your SmartDancer Controller

AutoHide

If you want the hover-text on the animesh hidden (ArtistePalette_01_?) then set AutoHide,on else leave it AutoHide,off

AutoClearLog

If you want the log to automatically clear itself after 99 entries then turn AutoClearLog,on...otherwise when it gets full it will warn you that it is full and ask you to print the log out as the next controller menu press will cause it to clear out.

GuruZ

Set GuruZall to off if your animesh/poseballs are not all on the same vertical level.   When is on, it forces everyone to line up exactly on the same level during formation changes since there is a glitch that raises its ugly head sometimes that can cause the vertical elevation to be ever-so-slightly out of alignment.

StandingAnimation

You can choose a different at-rest or starting animation other than the animation called ‘standing‘, which is the default and is or should be copied into every animesh and poseball.

InitialTurn and Initial June

These entries compensate for the fact that different animesh creators animesh rez at different rotations.  Based on the direction your animesh/poseballs face towards the audience, these values will vary:  See the values below.  They will never change.

/* Facing North
InitialTurn,Left
InitialJune,180

/* Facing South
InitialTurn,Right
InitialJune

/* Facing West
InitialTurn,180
InitialJune,Right

/* Facing East
InitialTurn
InitialJune,Lef

MaxDances

You can raise this value from 64 to something more if you need more dance entries in your *animations nc to choose from but beware there is a memory limitation but I do not know what it is but, depending on the length of the animation name, you could probably get a few more, maybe 100?

 

 

SmartDancer 113 – Commands – Sequencer

Sequencer Commands & PREP Commands

PREFACE:  IMPORTANT.  The following commands are sent to Animesh.  This means that the Animesh must have the animesh scripts and notecards inside of them. Targeting may restrict which animesh receive certain commands.

PREP Only commands are in GREEN meaning only those commands are allowed to be PREP commands on the *prepform nc.  Any and all commands can be sequencer commands that go on *sequencer? ncs.  And remember that PREP commands have a different format and use % (percent sign) instead of  ,   (comma)

***************
1 – Introduction

 

You enter active commands, one per line for, on *sequence? ncs to execute at given times, on one or more *sequencer notecards (ncs). You can specify by elapsed time or duration time.

You enter passive commands, more than one per line are allowed  f, on the single *prepform nc to execute at given times

Examples of how to enter commands on the *sequencer nc.

The first statement on a *sequencer nc should be an ElapsedOrDuration entry.  Only one ElapsedOrDuration nc should be on any given *sequence nc and it should be the 1st entry. See below:

Note that when choosing elapsed time, times must be greater than the previous time or execution will be halted.  Duration times can never be zero. It is strongly suggested that you end elapsed time ncs with a StopAll entry.

Only 1 command per line.

Each line must have a time at the end separated by a vertical bar.  It must be either elapsed time or duration.  You cannot mix the two but you CAN use multiple sequences, where some could be duration and some could be elapsed.  Elapsed is the default should you forget to specify.

Examples:
ElapsedOrDuration,Elapsed
ElapsedOrDuration,Duration

**********************
2 – Executing a Sequence From Controller

 

You can start a sequence from the SmartDancer Menu of submenus:

Main Menu ->> Read&PlaySQ — Reads AND executes last selected sequencer nc.  (i.e. *sequence? where ? is 1 thru 9.  0 is reserved for Master.

Sub-Menus

[Options]==>
READ_SEQReReads current Sequence
STOP_SEQ
Stops the current running sequence
ReReadSeq rereads the last selected *sequence nc

[Expansions]==>[Sequences]==> (list of sequences by name. Names are assigned to sequences in the *sequence0 nc)  Pressing a button (1 thru 9) READS that sequence and makes it the CURRENT sequence for Playing (executing) or having changes made to it for ReReading.

You can now, also bring up the SmartDancer Controller Menu from either the SmartDancer Relay HUD by just clicking on it, Activation IDs must matches

OR

From the Artiste Performance HUD via the yellow AutoAccess button.  ActivationID must be 4 on the Controller. Click on the SmartDancer button.

**********************
3 – Executing a Sequence From Chat

 

…or another choreography tool.
The tool must be owned by you.

Please see  this post for more detailed information on Playing Sequences: Playing Sequences

Use the following channel specified on your *channels nc inside your SmartDancer Controller. Specify your own channel.

ChannelForFromArtisteHUD,-123456789

The Commands are:

SDREAD_AND_PLAY_SD_SEQ

SDPLAY_SEQ

SDREAD_SEQ

**********************
4 – Format:

/* lineno, command, parm1(optional), parm2(optional), parm3(optional), parm4(optional) | elapsed-time or duration

Note: Lineno can be anything like a comment as it is not validated other than needing to be something there.  Examples:
1,Half | 0  or
,Half | 0 or
Grouping for TurnIn,Half | 0

*************
5 – Grouping

 

Grouping ONLY applies to  TURNS and
FORMATIONS. So, yes, a formation CAN apply to just half of the dancers, which can lead to some very interesting and unique hybrid formations.

1,Half | 1    << sets Grouping to half left, half right….i.e.
(half of J-R or half of A-I)
XXXXYYYYY XXXXYYYYY
X=abcdjklm 
Y=efghnopq

1,Alternate | 1    << sets Grouping to every other i.e
X=acegikmoq
Y=bdfhjlnpr

1,No_Grouping | 1
1,SendX | 1 — Sends next turn or formation to GroupX
1,SendY | 1 — Sends next turn or formation to GroupY
1,SendZ | 1 — Sends next turn or formation to everyone

NOTE: No_Grouping now just does a SendZ and leaves the last Grouping, either Half or Alternate (unless it was the initial setting which IS No_Grouping, so all you have to do is do a SendX or SendY and it will use the previous Half or Alternate setting.

Sends specify WHICH group (X,Y or both(Z)) will receive subsequent TURNS and Formations,  commands|

Please note that JuneTarget WILL affect X,Y, and Z and limit which of the X or Y or Z are affected by subsequent Turns and Formations. i.e. ( altb = bdfh…this would limit a SendX on Half to just bd instead of abcd)

*************
6 – Speed

 

1,Speed,-1%-1%0.2 | 1

Formation Speed (& June),
TurnDurationOverride,
CanonDurationOverride
(-1 for skip)

*************
7 – Formations

 

1,FORMJR,COLUMNSBLK | 1 — Selects from *formations nc
2,FORMAI,SINGLEFILE | 1 — Selects from *expansions nc
3,FORMALL,SINGLEFILE,FRONTLINE |1  –– JR formation then AI formation both sent at nearly the same time

*************
8 – Animations

 

There are 5 animation states:

1 Default standing animation. This happens when no other animation is running and happens at the start and end of routines as well.  This animation can be replaced via nc or changed dynamically at run-time using the passive StandingAnimation command.  It uses the actual name of the animation to replace the ‘standing‘ animation.

2 Current active running animation. This is simply the animation that is currently running.  It is the animation that will be STOPPED when you execute the StopLast command.

3 Backing animation.  This is simply the animation that  was currently running just prior to a Canon sequence running.  This is the animation that will start running again after each Canon Animation completes.  It is always the current active running animation just prior to a Canon running, unless there is a FROZEN animation

4 Canon Animation This is the animation that runs during a Canon cycle. It can be the same or different for each dancer, be they animesh or avatar-on-poseball.  This animation can also temporarily be changed dynamically at run time but then it changes for ALL Canons solos.  Setting it to blank at anylevel causes the CanonAnimation to revert back to the prior lower level.  

5 – Frozen Animation – This is always the Current active running animation, UNLESS…you specifically FREEZE an animation, in which case, THAT animation becomes the Backing animation.   You can UNFREEZE the frozen animation.  The next animation, and each subsequent animation will act as the new FROZEN and Backing animation

============

NOTE: The default Division is A. So if you specify a divison without specifying a SendItTo command, only those in Division A will dance your first dance.

1,Dance,Bodi | 1 — Causes animation associated with button name ‘Bodi’ to play immediately on LAST specified Division which COULD be set by a Dance2 so be careful .  Best to be explicit.

1,Dance,Bodi,C | 1 — NEW 02-03-21 – This sends Bodi button name to Division C and makes C the current division so then subsequent Dance commands can  eliminate division if the dancers are meant to go to Division C. …You can always use a SendItTo,C or a SendToDiv,C command as well.

1,Dance2,Bodi,A,F-Belly1,B  | 1 — NEW!
Dance2 allows you to send 2 dances at the same time to two different divisions. It  uses the Button name

TIP: You can use this command to send a single dance and its Division.
EX: 1,Dance2,Bodi,A |1
This saves a line from the traditional , replacing both the following:
1,SendItTo,A | 1
2,Dance,Bodi | 2

This command (Dance2) was created with couples dancing in mind. The A and B, in the example above, designate which divisions  are in play and overrides any previous Divisioning, TEMPORARILY. 

1,Standing,!N HStand1 | 0 — New.  this changes the default standing animation for all dancers (avis/anis) and overrides the StandingAnimation entry on any *smartdancer ncs.  This MUST BE the ACTUAL animation name and NOT the button name.

This is a handy way to allow for priority 3 animations to run and override priority 4’s.  Please contact Lat Lovenkraft as the topic is worth a face-2-face 1-on-1 conversation. 

In short: It is advisable that a standing animation be priority 3 but when it isn’t then priority 3’s will have trouble running after a priority 4 if the standing animation is priority 4.

1,DanceCanon,Bodi | 1 —  CanonAnimationOverride – button name ***WITHOUT*** the at-sign (@)

1,StopCanon | 1 — Stops Canon Animations

1,Freeze | 1  —  makes last animation the backing animation – protects it from being stopped. Meant to be used with StartKill.  This will be the animation that runs when CanonAnimations stop.

1,StopAll | 1 — Stops all Local and Canon Animations
1,StopLast | 1 — Stops Only the last Local Animation
1,StopA | 1 — Stops all dancers assigned to Division A
1,StopB | 1 — Stops all dancers assigned to Division B
1,StopC | 1 — Stops all dancers assigned to Division C
1,StopD  | 1 — Stops all dancers assigned to Division D

*************
9 – Turns

 

1,Turn,45L | 1 — New — turns 45 degrees counter-clockwise
1,Turn,45R | 1  — New — turns 45 degreesclockwise
1,Turn,Home | 0– TEMPORARILY DISABLED
1,Turn,Left | 1
1,Turn,Right | 1
1,Turn,In | 1 — Requires HALF or ALTERNATE Grouping
1,Turn,Out | 1 Requires HALF or ALTERNATE Grouping
1,Turn,180 | 1 — turns 179  degrees counter-clockwise

*************
10 – Junes

 

1,June,Left | 1 – dancers rotate counter-clockwise around controller
1,June,Right | 1 – dancers rotate clockwise around controller
1,June,45L | 1 — dancers rotate 45 degrees counter-clockwise around controller
1,June,45R | 1 — dancers rotate 45 degrees clockwise around controller
1,June,Home | 1 — dancers rotate  around to the home rotation
1,SemiRight | 1 — NOTE: This takes twice as long as normal Junes
1,SemiLeft | 1 — NOTE: This takes twice as long as normal Junes

1,JuneTarget,(target[shortcuts]) | 1 — NEW  ( see target shortcuts at end)
NOTE: Set this value just BEFORE and reset it off (use ClearJune)  just after your June has completed. If you forget to set it back, the JuneTarget will also act as a target for formations…which MIGHT? be what one might want for an unusual formation limitation since only Groupings intentionally limit formations and turns.

1,ClearJuneTarget | 1  abcdefghijklmnopqr

1,JuneAI,<3,8,0>  | 1 — NEW 12/20 – Offset for 2nd separate June only for A-I;  turn off after use with 1,JuneAI,<0,0,0>  | 0

 *************
11 – Canons

 

Solos animations and/or turns based upon the pre-specified Target

NEW FOR 2022

The PushOut – this new feature allows the soloing canon dancer to move out away from the other dancers so their animation is less constricted 

Rules: 
#1 – You can choose either PushOut or Turns  (Turns&Anims) but not both.

#2 – You MUST have a Walk1 and Walk2 animation.  I have provide 2 Full-Perm walk anims called JD walk 1 and JD walk 2.   Use one to walk into the canon dance and the other to walk back to the original departure point.  Be sure you have the Walk animations defined in the *animations nc.

New sequencer command can dynamically dictate if the walk or Canon animation are used to move forward and back using the new sequencer command.  Using targeting, you can mix the two options, (walk and anim). The default is “anim” if there is no sequencer override and there is no *smartdancer entry for CanonWalkOrAnim,anim

*sequencer nc
PushOutWalkOrAnim,(walk/anim/inplace)

*smartdancer
CanonWalkOrAnim,walk
Walk1,JD walk 1
Walk2,JD walk 2
TurnDuration,3.0

#3 – The PushOut uses a constant of 0.2 seconds for the 2 turns used in the walk out …one to return to the line and a 2nd to reface forward.  It uses a Turn 180.

#4 – The PushOut uses the TurnDuration to determine the Walk1 and Walk2 durations.

#5 – You  must specify 2 entries in the *sequence nc.  See example below and the PushOutCanonFormIN should occur before the PushOutCanonFormOUT 

#6 – The PushOutCanonFormOUT  dictates how far the dancers will move out from their home position.  Simply CaptureJR  it and include it.  Currently only J thru R are able to participate in PushOuts.  A-R can still participate in turns. PushOutCanonFormIN is the name of the form that the Canon starts from.

/*0,TraceSequenceTimes,on | 0.1
1,Hide | 0.2
2,Division,AAAAAAAAA | 0.3
3,Dance,Bodi | 0.4
4,Target,j-r| 0.5
5,PushOutCanonFormIN,LINE2JR | 1
6,PushOutCanonFormOUT,LINEJR | 2
7,PushOutWalkOrAnim,anim
/*4,DanceCanon,Samia | 10
/*7,Canon,Reverse | 1.2
8,Canon,Left | 13
21,StopAll | 100
END

#7AlwaysFaceAudience,yes is assumed.

#8 – PushOutWalkOrAnim,(walk/anim/inplace)
If you choose anim option, then the walk cycles, both in and out, use the CanonAnimation instead of the walk animations. Use the ‘inplace’ option and the dancers will do their CanonAnimation in place without moving out of the dance line.  This is how it used to work.

***

1,Canon,Left | 1
1,Canon,Right | 1
1,Canon,TurnIn | 1 — GroupX turns left, GroupY turns right
1,Canon,TurnOut | 1 — GroupX turns right, GroupY turns left
1,Canon,Home| 0 TEMPORARILY DISABLED
1,Canon,Reverse | 1 — Plays Canon in reverse order
1,Canon,Forward | 1 — Plays Canon in forward default order
1,AnimsOnly | 1 — Only performs animations during Canon.  It does not matter which Canon direction you choose.
1,TurnsOnly | 1 — Only performs turns during Canon.  
1,Turns&Anims | 1 – Only performs turns * animations during Canon.  Be sure to add the times for both per dancer.
1,SelectCanon,1  | 1 — Makes CanonAnimation1 & Interval current
1,SelectCanon,2  | 1 — Makes CanonAnimation2 & Interval current
1,DanceCanon,D-Belly-11 | 1  –  button name WITHOUT at-sign
1,CanonOrder,$432187659 | 1 — This duplicates for AI and JR
i.e. $432187659432187659  (abcdefghijklmnopqr)
1,Hold | 1 ––  Prevents Canon Dance from reverting back to backing
1,Release | 1 ––  Resumes Canon Dance reverting back to backing
 1,StopCanon | 1 — Stops All Canon Dancing, reverting back
1,SeqSwitch | 1 — Alternates between CanonAnimation1 and 2
1,SeqUnSwitch | 1 — Undoes Canon dance alternation
1,Finish  | 1 —  automatically plays CanonAnimation2 in *smartdancer nc in animesh OR — returns to backing animation after last Canon — also performs Auto Commands pre-effect at start of animation and post-effect at end of Canon cycle (effects are: AutoChat, AutoGlow, AutoFade, AutoColor
NOTE: Does not work with Hold state

1,UnFinish | 1
1,ColorCanonLinks,Silk%Dress%Veil | 1– note: we use a comma after ColorCanonLinks instead of ‘
@‘  as we do with PREPFORM. We use % as separators for multiple parameters

NEW – 10-22-20
1,GlowCanonLinks,Silk%Dress%Veil | 1 –– note: we use a comma after ColorCanonLinks instead of ‘@‘  as we do with PREPFORM. We use % as separators for multiple parameters

NEW – 12-12-20
1,AfterCanon,2 | 1 — automatically executes sequence #2 after canon completes  where 2 can be any valid sequence number.
1,AfterCanon,0 | 1 — turns it off

NOTE: Be aware that the CURRENT sequence is now *sequence2 and so when you reread sequence, it will be the 2nd sequence.  Also, it is STONGLY recommended that you have an ElapsedOrDuration entry at the start of all *sequence ncs or you could find yourself with unsuspected results.

*************
12 – Divisions

 

NEW! 01/13/21
DIvisions can now be 9 or 18 long on a sequence nc.

IMPORTANT!!! Previous Targeting WILL limit the division assignment so unless you have intentions, be sure Targeting is ‘all’, (i.e. abcdefghijklmnopqr)

1,Division,AAAABBBBC | 1
1,Division,AAAABBBBC CCCDDDDD | 1   — NEW!!
1,SendItTo,A | 1
1,SendItTo,B | 1
1,SendItTo,C | 1
1,SendItTo,D | 1
1,SendItTo,E | 1 — NEW! This sends to ALL Divisions

NEW!  01-14-21 – Alternate command wording
1,SendToDiv,A
| 1
1,SendToDiv,B | 1
1,SendToDiv,C | 1
1,SendToDiv,D | 1
1,SendToDiv,E | 1

*************
13 – Effects

 

1,Glow,jkpq,0.2 | 1
1,Vanish,a-r | 1   NOTE: animesh with attachments are not reliable
2,Appear,a-r | 1 – NOTE: animesh with attachments are not reliable

Currently FadeIn/FadeOut duration is fixed

1,FadeOut,j-r | 1
2,FadeIn,j-r | 6  —  allow time for fadeout 
or
1,FadeOut,lmno | 1
2,FadeIn,lmno | 6  —  allow time for fadeout 
or
1,FadeIn,j-r | 1
2,FadeOut,j-r | 6  —  allow time for fadein
or
1,FadeIn,lmno | 1
2,FadeOut,lmno | 6  —  allow time for fadein

*************
14 – Autos

 

1,AutoChat,123,456,PartStart,PartStop | 0
2,AutoChatOn | 1
3,Canon,Left | 2
4,AutoChatOff | 3

1,AutoColorOn | 1
1,AutoColorOff | 1
1,AutoColorAmount,<1,1,0>,<0,0,1> | 1 —  canon in color, out color

1,AutoGlowOn | 1
1,AutoGlowOff | 1
1,AutoGlowAmount,0.5,0 | 1 — 0.5 value for ON, 0 value for OFF

1,AutoFadeOn | 1
1,AutoFadeOff | 1
1,AutoFadeAmount,0.5,0  | 1 — 0.5 is for ON, 0 is for OFF –transparency 1 is opaque, 0 is invisible

1,AutoChatOn | 1 NOW IMPLEMENTED – SkipAviOnEffects,off/on
1,AutoChatOff | 1 NOW IMPLEMENTED – SkipAviOnEffects,off/on
1,AutoChat,123,456,message1,message2  NOW IMPLEMENTED – SkipAviOnEffects,off/on

*************
15  – Other

 

1,AlwaysFaceAudience,(on/off) | 1when on, Junes always face towards the audience. When off, Junes cause the dancer to face towards the direction of the June.  This command respects Targeting so you can specify with dancers participate for a particular setting.  You can set 2 different groups with 2 different settings.

1,RezObjSD,(0/1)  | 1 — rezzes an object of the same name as the rezzer, in same place, same rotation, zero velocity…if in the current canon/effects-target.  (0/1) if 1 then deletes  itself after rezzing (object_rez)

1,SetToNonPhys,(on/off) | 1 — When on, sets subsequent rezzed objects from this object to NON-PHYSICAL upon COLLISION

1,Temporary,(on/off) | 1 — When on,  sets subsequent rezzed objects from this object to TEMPORARY upon COLLISION

1,RezObj,NameOfObjectToRez%<1##1##1>%<0##0##0##1>%<1##0##0> | 1

<1##1##1> = rez at position <x,y,z>  — must be within 10 meters of center of root prim as the crow flies

<0##0##0##1>= rez  with rotation <x,y,z,s>  — I have always used <0##0##0##1>

<1##0##0> = velocity direction <x,y,x> — this can be directly translated into ApplyImpulse on Thrower

 

1,Pal,02_A%FadeHide%ALL%2 | 1 — NEW! This sends the FadeHide%ALL%2 parameter to a Palette named 02_A

1,LinkToSD,2,3 | 1 NEW 2021! This activates SmartDancer
Controller
with ActivationId in its *channels nc with a value of 2, and causes it to execute sequence number 3.

1,ReInit | 1 — NEW 2021! this sends formations to the dancers from the SmartController that executed it.

1,HybridPAL
|  1 — NEW!  Disables SD scripts & enables PAL scripts

1,PrepForm,1 | 1 — This will execute the PrepForm entry identified by 1 in its 1st position.  This will likely be more than one passive command separated by commas.  Parameters for a given passive command are delineated by % (percent signs)

1,PrepareToLoop | 1
1,SuppressEndMsgs,(0/1) | 1
1,TraceSequenceTimes,(on/off) | 1

1,Hide | 1   — Hides HoverText and Controller

1,LastCanonPrep%11%2.5 | 0 — no. of PREP to execute on last Canon cycle, Delay in seconds  before PREP fires  NOT SUPPORTED

1,Sit2Sit,(name of object to sit on) | 1 —  (name of object to sit on)

Instead or Renames use ActivateAI and ActivateJR
1,SwapNines | 1 –– this renames A to J, B to K, etc. and renames J to A, K to B etc.

1,UnSwapNines | 1 — this renames J to A, K to B, etc. and renames A to J, B to K etc.
These  SWAP commands enable either group of nine dancers (A-I or J-R) to use all 222 formations.

1,Hide  | 1  Hides HoverText and Controller
1,Wait,3.5 | 1 — NEW 
1,Chat,123,This is my message  | 1
1,Say,0,This is my message  | 1
1,Whisper,0,This is my message  | 1
1,Shout,0,This is my message  | 1
1,IM,This is my message | 1 — sends to owner
1,Owner,This is my message | 1 — also sends to owner

1,Speed,-1%-1%0.2 | 1 — Formation Speed, TurnDurationOverride, CanonDurationOverride (-1 for skip)

*************
16 – Targeting

 

NOTE: Some commands have targeting built into the command.
See shortcuts for targets below

1,Target,k-p | 1 — Target applies to BOTH EFFECTS and CANONS.
or
1,Target,jklopq | 1

1,ClearTarget | 1 — Sets Target to “abcdefghijklmnopqr”

1,Color,jklm,<1,0,0> | 1
2,Color,nopq,<0,0,1> | 2

1,ColorLinksNow,jklm,<1,0,0>  | 1 — NEW!!

1,Glow,r,1.0 | 0.2

 ***********************
17 – SHORTCUTS for TARGETS

 

all=abcdefghijklmnopqr
a-i=abcdefghi
j-r=jklmnopqr

altaq=acegikmoq
altbr=bdfhjlnpr
alta=acegi
altb=bdfh
altj=jlnpr
altk=kmoq

ends=abpq
endsj=jkpq
endsa=abgh

middle=efghjklm
middlej=lmno
middlea=cdef

left8=abcdefgh
leftj=jklm
lefta=abcd

right8=jklmnopq
rightj=nopq
righta=efgh

all=abcdefghijklmnopqr
allj=jklmnopqr
alla=abcdefghi

nor=jklmnopq
noi=abcdefgh
nori=abcdefghjklmnopq

*************
15  – Walk Form

 

When WalkForm  is “on, automatically plays the SetWalkForm animation during a formation transition.

When PoseForm is “on, automatically plays the SetPoseForm animation right after an existing WalkForm animation.

1,SetWalkForm,(button-name of animation) | 1
2,SetPoseForm,(button-name of animation) | 1
3,WalkForm,(on/off) | 1
4,PoseForm,(on/off) | 1