The following script is meant to be worn by an avatar and will move (and rotate) that avatar to various coordinates specified in a notecard. It could be used as an anti-idler, or perhaps to control a scripted agent remotely.


The project consists of two scripts:

  • the avatar puppeteer - the script responsible for moving and rotating the avatar.
  • the avatar puppeteer harness - that is meant to gather coordinates that can be placed in the notecard that the avatar puppeteer uses.

The script can be worn in any attachment and needs the CONTROLLING_AVATAR parameter to be set to the key of the avatar that will be able to turn the script on and off. The corresponding chat commands are /1 pathon and /1 pathoff.


First, a notecard has to be generated using the avatar harness. In order to do so:

  • Create a primitive an attach it to your avatar.
  • Create a script inside that primitive and replace the contents with the harness script.
  • Start walking on a path and touch the attached primitive - this will give you coordinates on local chat.
  • Move your avatar around a perimeter and then return to the starting point (the path has to be closed), during which you touch the primitive and generate coordinates on local chat.
  • Copy the coordinates from local chat to a notecard called [WaS-K]:Avatar Puppeteer:Data and save it in the same primitive. An example notecard would look like this:
<187.61870, 93.28719, 703.66240>
<185.49700, 91.33573, 703.66240>
<182.32040, 87.51074, 703.66240>
<185.49700, 91.33573, 703.66240>
<187.61870, 93.28719, 703.66240>
  • Next, replace the contents of the harness script with the puppeteer script.
  • In the puppeteer script, set the CONTROLLING_AVATAR parameter in the configuration section at the top to the key of the avatar controlling the script.

The puppeteer is now configured and you can issue /1 pathon to make your avatar walk on the configured path.

Inserting Delays

The avatar puppeteer allows you to configure delays on each destination coordinate. In order to do so, a value can be added at the end of a coordinate which will make the avatar puppeteer script pause for that amount of time before proceeding to the next coordinate.

For example, the following contents of a notecard:

<187.61870, 93.28719, 703.66240>
<185.49700, 91.33573, 703.66240>#60
<182.32040, 87.51074, 703.66240>
<185.49700, 91.33573, 703.66240>#300
<187.61870, 93.28719, 703.66240>

will make the puppeteer pause for 60 seconds at the <185.49700, 91.33573, 703.66240> location and then 5 minutes at the <185.49700, 91.33573, 703.66240> location.


secondlife/avatar_puppeteer.txt ยท Last modified: 2017/02/22 18:23 (external edit)

Access website using Tor

For the copyright, license, warranty and privacy terms for the usage of this website please see the license and privacy pages.