Skelescripts are a means of storing layout scripts in skelegons in a way that is similar to powergons. They are capable of performing every command that you can in LS Commander and more.
Skelescript Features
Multiline text editor for very large scripts:
Powergons have a 512 byte limit. You can type more than 512 characters in the text box, but the code will be truncated to 512 bytes. This is good for only about 20-50 commands, and the commands are not very easy to edit since they all have to be written on one line. Skelescripts have a 320,512 byte limit which is good for about 12,000-32,000 lines of code. The limit can also be expanded tenfold if people request it, but I would be amazed if anyone ever puts that much code into one skelescript. With a multi-line text editor, skelescrips are much easier to read, write, and maintain. You can also write your scripts in external editors and paste them or import them into the skelescript editor if you prefer.
Priority-Level Execution:
Unlike powergons, skelescripts can easily make use of order-dependent scripts with priority levels. Scripts with higher priority levels will be executed before scripts of lower priority levels. High-priority scripts are often useful for writing initialization scripts that setup the initial states for defining your scene, while low-priority scripts can be useful for performing the finishing touches.
Easy to learn
The language used in skelescripts is just an extension of LS Commander scripts. These are simply lists of commands to perform. You don't need any programming experience to get started writing skelescripts. They can be fun and easy to learn, and best of all, you can get very creative with your solutions. If you already know how to write LS Commander scripts, then you already know most of the things you need to know to write skelescripts.
Additional scripting commands, functions, and properties:
The Skelescript language isn't just limited to Layout's command set. It's a full procedural language with new auxiliary functions, properties, and commands which offer a wide range of possibilities. Included among these are commands for defining variables, a command for displaying messages, generic commands to select the active skelescript bone and its parents without referring to them by name, functions for basic arithmetical operations, properties to read layout states, comments for internal documentation, the ability to define new commands and functions, loops, selections, and more.
Rigging:
While skelescripts aren't limited to rigging, this is probably the most useful application for them. With skelescript rigs, you can create a full IK rig in modeler. The rigs you create can also be easily copied and modified to suit multiple characters without re-doing your previous work. Because skelescripts provide commands and functions to write generic scripts (scripts that don't refer to any specific object by name), you can even re-use your generic scripts in models that have completely different skelegon names. Since scripts are stored in skelegons, you can simply script one side of your character's skelegons and mirror the other side to have both sides use the same scripts, avoiding the need to script both sides of your character. With localized, generic scripts, you can also re-use parts of your rig rather than the entire rig itself. For example, if you create a skelescript to setup IK goals for the wrist and elbow of an arm, you can reuse this script on a character that has 8 arms by simply copying/importing the script into each of the 8 arms.
Compactness:
Skelescripts are saved with the object instead of in a separate file, allowing you to have a full setup in a single file. You don't have to open up LS Commander and execute a script in Layout to set up your rig, you can just hit Convert Skelescripts instead of Convert Skelegons and the whole process of converting skelegons to bones and processing the scripts will be fully automated with a single click or hotkey. While you will be missing out on a lot of the additional features provided with Skelescripts like generic, localized bone scripting, additional auxiliary functions/commands, etc., you can use Skelescripts simply as a means of storing your LS Commander scripts with the object for convenience and compactness. To do this, just copy/import your LS Commander script into any skelegon through the skelescript editor.
Symmetrical Consistency:
It's common for rigs to have rotational inconsistencies between a pair of symmetrical bones. For instance, one side rotate forwards when the heading is incremented, while the other side rotates backwards.
A General Purpose Converter:
The 'cvt skelescripts' plugin can be used to completely replace 'cvt skelegons' as a general-purpose tool for converting both skelegons and skelescripts. For rigs with only skelegons, the plugin behaves the same way as 'cvt skelegons.'
Educational Value:
A lot of tutorials exist which take you through the tedious, step-by-step process of creating a specific rig. With skelescripts, people don't even have to bother making or following such step-by-step tutorials. A skelescript is essentially just a list of localized list of instructions on how to setup a scene. With comments for internal documentation, a skelescript can provide everything you need to explain and understand the step-by-step process of how to create a specific rig without going through the monotony of accessing various panels, creating nulls, turning parent in place on/off, etc.
Return to index.
Return to Kung Fu Tools page..
Return to main page.