In a nutshell, the Tall Tails Tack System is an API that allows you to remove all of the scripts from your favourite devices and replace it with just one plugin and a notecard and after some configuration, manage them entirely with the TT Nose Ring.
The main idea behind this is that the devices we use for our tack have many amazing features but most of them are simply not used in ponyplay at all and whats mor,e some of those features are entirely redundant. For example, in ponyplay we don't really need a full RLV management and restriction system in each of our attachements. However, we need some of them. We needs the cuffs to be hobbled or hogtied and a briddle to be gagged. On the other hand, we do need only one gag option, a bit, while many bridles come with several built in.
The Tack System allows you to define your own commands that will be accessible via the TT Nose Rings. Those commands allow you to define how parts of your tack will look, what effects will be applied at each step, what extras will be attached (autohides for example), as well as what animations and what sounds played.
To setup the tack you will need to obtain the "tack_api" script. This script is provided inside the updater so simply rez one and remove it manually. This is because the tack_api script is not to be copied to your ring, instead you need to manually copy it to the inventory of each item of tack that you want to integrate with your ring. To make the tack_api working you will need notecard named menu.def and the <command>.def notecards, where <command>.def is defines the specific command.
Please note that while this feature adds a lot of functionality and flexibility we recommend that you use it with caution. This system is fairly involved and a moderate to advanced knowledge of editing and the ability to understand the commands below and how they affect your gear is essential.
Additionally, please note that more options you have, the harder to read your menu will become, and the longer the tack.def notecard you have - the more time is needed to apply an option as this notecard will be re-read each time a command is sent.
Lastly, if you have too long a name for your command they won't be displayed correctly and may even break a script (simply reset if that happens.)
export <name of device> <command1>...<command n>
When you put the device on then the options will be visible in your TT Nose Ring regardless if they do something or are empty. You will see those commands when you click the device as well. To define option's behaviour you need to define a notecard with the name of command. e.g: if you have menu.def:
export Gag gag ungag
you will need gag.def
and ungag.def
notecards.
lock
- Locks the item
unlock
- unlocks the item
select <name of a prim>
- the most common command. It defeines context of the subsequent lines. All the commands executed below will be applied to selected prim.
link <link number> <alpha 0-1>
- It sets an alpha of a particular link number. This way you can make part of your tack appear or disappear at will, useful for people with multiple linked rigged items on one attachement point. The link command also changes the context of definition. By default all commands are executed in context of entire object. After the link command the subsequent commands wil be executed in a context of the link allowing you for example to use the alpha command to set the alpha on a single face of a linked object.
alpha <alpha 0-1> <face number>
- Sets an alpha for a particular face. -1 means it will apply to all faces.
animstart <hook> <animname>
- Starts animation <animname>
The animation must be present in the object. <hook>
may be any string such as 'mouth'. It attaches that particular animation to that named hook. This way if you use the same named hook another time (for example, when swapping from a small bit gag to a larger ballgag that requires the mouth to be further open it will replace the animations instead of stacking them together.
animstop <hook>
Stops animation that is attached to the named hook.
sound <name>
- Plays a sound (useful for sounds such as hobble chains being added)
animstopall
- Stops all animations applied using the above commands.
setao <slot> <name>
Sets an animation to be used as with an AO. Slot is the animation kind (Walking, Standing, Effects).
resetao <slot>
Removes an animation from an AO slot.
color <color> <face>
- Sets a colour of a Face. <color>
- a color vector. -1 means it will apply to all faces.
texture <texture> <face>
- Sets a texture of a Face. <texture>
- texture's uuid. -1 means it will apply to all faces.
shine <face> <shine> <bump>
-1 means it will apply to all faces. <shine>
- specular texture's uuid. <bump>
- bumpmap's uuid.
material <flag>
attach <path>
- Attaches an attachment. It may be used to attach, for example, an auto-alpha if needed for armbinder. It is not reccomended to use this for attaching and detaching tack pieces that use the Tack System as the nosering will need the devices list refreshed via the checkout menu, detailed below, to account for the new device. <path>
Path to a proper folder under #RLV (do not include the item name).
detach <path>
- Detaches an attachment. Again, it is not reccomended to use this to remove tack items and is intended for supplementary additions like auto-alpha objects. <path>
Path to a proper folder under #RLV (do not include the item name).
lockguard <rest of the lockguard command>
- tack supports lockguard. You will need the lockguard script and config. Details of the Lockguard Command can be found here. lockguard command just sends the command to the proper channel to be handled by the lockguard. However thera are some placeholders that are processed by tack_api first.
me
- is replaced by a wearer's UUIDthis
- is replaced by the object's UUIDeffect <effect name>
- sends information to TT Nose Ring that the given effect should be applied. Supported effects:
ungag
- Removes all gagging effectsgag
- Gags the wearer (blocks sendchat, including via the TT Nose Ring renamer)hands-free
- Removes all hands effectshands-bound-behind
- Restricts fartouchlegs-free
- Remove all legs effectslegs-hobbled
- Slows down slightly + Restricts: temprun, alwaysrun, tploc, tpocal, flylegs-tied-soft
- Slows down a little + Restricts: temprun, alwaysrun, tploc, tplocal, flylegs-tied-medium
- Slows down more effectively + Restricts: temprun, alwaysrun, tploc, tplocal, fly, good for hogtielegs-tied-hard
- Slows down heavily + Restricts: temprun, alwaysrun, tploc, tplocal, tplure, tplm , flylegs-tied-stuck
- Slows down to the point of being barely able to move + Restricts: temprun, alwaysrun, tploc, tplocal, fly, tplure, tplmIn the tack menu we have following buttons:
menu.def:
export Bridle Gag Ungag
Gag.def:
animstart Gag open_mouth_4 // starts animation open_mouth_4 and give it tag: Gag
select bit-off strap-off // select prims with names bit-off and strap-off
alpha 0 -1 // make all of the faces of the selected prims invisible
select symbol TrickyBit01 bit-on strap-on // select prims with names bit-on strap-on
alpha 1 -1 // make all of the faces of the selected prims visible
effect gag // apply gag effect from TT Nose Ring
attach Bases/Maitreya-Shape-Bit // attach items from folder #RLV/Bases/Maitreya-Shape-Bit
lock // lock the item
Ungag.def:
select bit-on strap-on // select the prims by the names
alpha 0 -1 //make them invisible
select bit-off strap-off //select the other prims
alpha 1 -1 //make them visible
animstop Gag stop animation tagged: Gag
effect ungag // apply effect ungag from TT Nose Ring
attach Bases/Maitreya/Maitreya-Shape attach
unlock // unlock item