Monday, 13 July 2015

RELEASE ANNOUNCEMENT: PMAC ADD-ON SET 1

I am pleased to announce the release of the PMAC Add-On Set 1 which contains a trio of add-on scripts I have written for the PMAC multi-animation controller and am now releasing to the general public.


PAO Child Add-On

This add-on provides limited controls over prims in the PMAC linkset, allowing you to reposition it or change the alpha (usually either to show or hide it). Only child prims can be repositioned but alpha changes can be applied to any linked prim (including root). Multiple child prims can be changed within a single command.

I wrote it initially for hot-tub so I could control the water level and transparency for each different animation (because I'm short and was tired of continually looking like was drowning) but it can be used for a huge range of handy applications...for example have it move or hide a blanket or pillow that's part of the PMAC link-set.

This is relatively simple to set-up and includes a convenience feature to help get the values you need for the notecard; however this does require careful manual edit of the .menu notecard.


PAO Message Object Add-On

This add-on allows you to send a message to any scene object located in the same region as the PMAC object.

Typical usage:
  • to message a nearby light source to turn itself on or off
  • to message a region controller script to change windlight settings, parcel media, parcel sound, etc
  • to tell a permanent scene object (that isn't part of the PMAC linkset) to do something like move, hide/show itself, change colour, change size, etc...
  • or anything else you're capable of scripting using a dataserver trigger...there's tons of interesting things you can do
This add-on assumes that the person using it has the necessary scripting skills to accomplish the desired effect via a script in the target object. The add-on's purpose is simply to make this easier to achieve without needing to write your own custom add-on script as well.

The basic mechanism used by the add-on is to be supplied (via the data stored in the .menu notecard) the UUID of the target object and a message to send to it when the animation is played (using osMessageObject). This then raises a dataserver event in the object which would then be scripted to respond to the messages as desired.

You can send almost any message you like which gives you tremendous flexibility in terms of being able to send a huge array of commands and even sets of sub-data arguments for them. It's simply a matter of writing your target's script and then adhering to its requirements in the messages you tell this add-on to send.

Messages are only sent when each new animation is called...no "end message" is sent when a user stands or when a different animation is selected that does not contain this command so you will need to bear this in mind when building your objects and writing your scripts.

PAO Message Sitters Add-On

This add-on allows you to send a message to all attachments of your sitters on a per-animation basis. The attachment would then be scripted to respond to this message in some way.

Typical usage:
  • to hide or show an attachment (or part of one) on a per-animation basis
  • to trigger an attachment colour change
  • to trigger an attachment particle effect (for instance have worn cuffs "connect" themselves to a specific prim whose key is supplied as part of the string
  • assorted "scripted manhoods" can be adapted to use the dataserver event to automatically set visibility/position/etc based on the animation being played
  • the dataserver event could, in turn, be scripted to automatically trigger/send a RLV command
  • or anything else you're capable of scripting using a dataserver trigger...there's tons of interesting things you can do

Like the Message Object add-on, this assumes that the person using it has the necessary scripting skills to accomplish the desired effect via a script in the attachment object. The add-on's purpose is simply to make this easier to achieve without needing to write your own custom add-on script as well.

The basic mechanism used by the add-on is to be supplied (via the data stored in the .menu notecard) a message to be sent to each of the sitters (using osMessageAttachments(). Each sitter is given a separate message string rather than a simple global broadcast to all sitters. This then raises a dataserver event in all attachments worn by the sitting in that position which would then be scripted to respond to the messages as desired.

You can send almost any message you like which gives you tremendous flexibility in terms of being able to send a huge array of commands and even sets of sub-data arguments for them. It's simply a matter of writing your attachment's script and then adhering to its requirements in the messages you tell this add-on to send.

Messages are only sent when each new animation is called...no "end message" is sent when a user stands or when a different animation is selected that does not contain this command so you will need to bear this in mind when building your objects and writing your scripts.

How to Use Them

As with all of my products, a "Read Me" notecard is included for each script detailing how to use it. The two messaging add-ons requite a medium level of scripting knowledge and would not be suitable for a novice. The child add-on is simple to use and set-up even with no scripting knowledge.


Availability

You can pick up a boxed copy of all three scripts in the lobby of my Hedonism dance club on Refugegrid.

HGTP to refugegrid.com:8002
Then take the local portal to Hedonism

The box is sitting right beside the PMAC Builder's kit that already contains the PAO Expressions add-on and the props add-on by  +Neothar Cortex . While you're there you might also want to pick up the box containing the Content-Giver add-on by +Aaack Aardvark

All three scripts are released under Creative Commons Attribution-Non-Commercial-ShareAlike 4.0 International license.