top of page

[XXXcapade System]

(Adult Intimate Furniture Animator)

<<a scripted system for poseball-free multi-avatar furniture>>

​

What is XXXcapade:

XXXcapade is a set of scripts to equip furniture with pose ball-free animations for multiple avatars [you can animate as many avatars as you have copies of the "~XXXcapade~ pose_controller N" script where N is the number 1-99]. It was written from the ground up, to be efficient, fast, with full (*) MLP compatibility in mind. XXXcapade primary features are as follows:

    ★ NO POSEBALLS

    ★ UNLIMITED AVATARS

    ★ BLAZINGLY FAST

    ★ COMPATIBLE with the ever popular MLP/MLPv2

    ★ EASY SET UP & USE

​​

​

Contents:

    ★ Features

    ★ Differences

    ★ Unsupported features

    ★ Support

    ★ F.A.Q.

    ★ Usage Manual

​

Features:

  • MLP (v1/v2.x+) compatible

  • Uses mostly all MLP menu inputs, position inputs and plugins

  • No pose-balls! All avatars sit on the same target, they get logical positions assigned

  • Faster - more efficient code, efficient non-stringy-typed linked message handling, efficient storage, less scripts, less lag.

  • More free memory - load even more menu notecards than you were ever able to with MLP

  • Drop-in compatible: delete the MLP scripts, leave the notecards, insert the XXXcapade scripts and you're rolling. No conversion or further configuration is needed. Having your product set up with MLP will make it function (almost) identical with XXXcapade.

  • RLV grabbing support built-in, RLV features extendable & manageable from the ".MENUITEMS.RLV" configuration notecard, these scripts & settings are optional, you can remove all rlv related scripts and notecards and the system will function as normal.

  • The menu shows a 'history', signifying usage and less confusing for agents when they want to use the 'BACK' button

  • Unlimited avatars - only limited by the number defined in the configuration's default position.

  • New access mode "USER" - applies to users currently sitting on the object. No more embarrassments due to strangers playing with menu's.

  • Hibernate - after 1 hour of inactivity scripts will suspend to hibernation state to save sim resources. They will automatically wake up on menu use.

  • Two new commands to support RLV : "GRAB" and "RELEASE". RLV support for grabbing built-in, additional RLV features with optional scripts and configuration.

  • Put all your animations into one object (500+ pairs [1000 total] shouldn't be a problem).

  • Create sub-menu's for each category of poses, for instance: "Lovers, MF, FF, MFM, FMF, Self, Solo"

  • Did we mention "No poseballs needed" - the system uses out patent pending design to animated multiple avatars without the use of poseballs.

  • Positions can be adjusted and saved into memory (backup is easy: select Memory Dump and copy-paste into the '.POSITIONS' notecard)

  • Option to adjust height offset (Z) of all poses at once (for different persons/locations).

 

Differences:

 

Of course, there are some differences with MLP/MLPv2. Most notable are:

  1. The 'STOP' button only unseats the target that clicked it

  2. The 'SWAP' button will present a menu asking which position to swap with

  3. The menu is accessible by multiple targets simultaneous, no effort is done to lock it (**)

  4. Reload, Restart and Reset all are equivalent to the action 'Reset'

  5. Pose ball colors are only used as description (in the swap menu), you could change their names at will.

  6. Plug-ins that work on the poseballs will fail, as there are none. This typically involves RLV. Therefore, RLV functionally is already added in.

  7. The "SAVE" command has got a new meaning and saves the current active pose.

  8. The 'default' pose gained importance

​

​Unsupported features:

  • `props` (rezzable objects) are not implemented (**)

  • Any plugin that works on-, or communicates with poseballs - because there are none.

 

Available versions:

Personal - upgrade your personal modifiable MLP-based furniture to XXXcapade.

Builder - with copy+transfer permissions - equip your furniture with XXXcapade.

​

If you are considering the builder edition, you could try the personal version first to confirm it suits your needs. If you later decide to buy the builder edition, you can contact me for a refund on the personal edition. Purchases on either edition are final.

 

​Lifetime Support:

You will get free updates for the life of the product. Feedback is always welcomed, and helps to improve the system as a whole for all clients. Questions will be answered in the order they were received. And when we say lifetime we mean lifetime. The owner of Belle Morte Designs has been in SL since July of 2005, with no plans on leaving any time in the near future...

​

​F.A.Q [Frequently Asked Questions]:

Q. What is MLP?

A. MLP (or MLPv2) stands for Multi Love Pose - a set of open source scripts to equip furniture with animations. Do not ever pay for it, the standard version is available for free! Anyone trying to sell you an unmodified MLPv2 is ripping you off. However, there are various variations on it, including my own patched version (not commercially available, but contact me if you are interested in the patches). Other commercial pose scripts that may include MLP compatibility as well. Since the license is BSD, anyone could legally sell you a modified (or unmodified) version of it. MLP sets a pretty high baseline for commercial products to compete against, and provides without a doubt a level of excellent and well-written pose solutions. XXXcapade is not based on MLP code and was written from scratch. It's up to you if you want to go for a commercial or free option, just be aware (and especially if you are still learning to build) that you can get excellent pose scripts for free! Search the marketplace for MLPv2.

 

Q. Do i no longer need MLP?

A. No. Yes, i mean or was it no. You still need MLP to set up the positioning with the greatest of ease. MLP allows you to re-position poseballs with an avatar sitting on it, this is very convenient, and you can re-position another avatar. As XXXcapade is poseball-free, there is no way to reorient the position with the in world-object-editor tool since there are no poseballs. Having said that, all other functionality is there. You can re-position with the cursor keys. And you can dump the current position list. Instead of rezzing poseballs for the pure sake of adjusting, i recommend using MLPv2 for setting up the animation positions, then later on change the scripts when done. Alternatively have all seated agents adjust their own position with the cursor keys.

A2. Your customers may like the poseballs. It can be attractive to offer two distinct products, one with and one without poseballs. The best part is, you only have to configure the product once, and you can ship with either MLPv2 or XXXcapade scripts.

 

Q. How do i use the sequencer?

A. Please use the sequencer script that comes with MLPv2.

 

Q. How do i use plug-in XYZ

A. Generally, just use it like you would with MLP. If you run into a compatibility issue, contact me and I'll see if i can fix it.

 

Q. Can i store adjusted positions per avatar

A. No, when in adjustment mode, the changes will be persistent until the next reset. To use them as defaults, dump the positions and save them in the .POSITIONS notecard. When not in adjustment mode, the position adjustment will reset as soon the avatar jumps off or seeks a new pose.

 

Q. What license does XXXcapade come with?

A. As a commercial product, you will have COPY+TRANS rights on the developer version [end user products must retain the EULA compliant

NO MODIFY / COPY / NO TRANSFER permissions (this is built into the scripts, and they will self delete if you fail to correctly un-tick the transfer permissions. The personal version has COPY permissions only, and the same the scripts verify their permissions when in use.

 

Q. Are you involved with MLP? Did you use code from MLP

A. No, I'm not involved in developing MLP though i have contributed some patches. Also, i did not use any code from MLP. The only thing i did use were the layouts for the linked messages in order to remain constants for MLP plugin compatibility.

 

Q. Why,?

A. Because I could. I wanted to create poseball-free furniture. Initially, i played with the idea of patching MLP to be poseball-free. However, i decided a total rewrite would be the best solution, because that's be likely more efficient. That turned out to be the right decision. So, here it is - a set of next-gen poser scripts called XXXcapade.

 

Q. Sometimes notecards or scripts won't open for editing, why?

A. If the device contains many animations, access to it's contents can be slow, try again after a few seconds.

 

Q. "Script run-time error / Stack-Heap Collision"?

A. When it happens during loading: probably there are too many items in .MENUITEMS

When it happens during saving a position: the memory is full. If you do a reset (select: Tools - Reset Scripts in Selection), the backup on the .POSITIONS notecard will be loaded. (The Linden Scripting Language currently needs a lot of overhead memory during a 'save', which is the limiting factor for the number of poses that we can store, probably this will improve in the future. If you have saved a lot of positions (more than 500 or so), make a backup often (after saving a few positions), and do a reset after making the backup, this way the memory is optimized again and you can store more positions.)

____________________________________________________________

​

USER MANUAL

-Quick Usage

-Upgrade existing furniture

-Troubleshooting

 

Quick usage:

  • Insert the XXXcapade scripts in the contents tab of your object

  • Add one or more .MENUITEMS* notecards and one or more .POSITION* notecards

  • Touch to start up. Wait until configuration loads, then touch twice (sorry, linden bug) first time to access the menu.

 

Upgrading existing furniture:

Personal edition: WARNING - use at on risk. It is highly recommended to use this only on objects you have COPY perms on. Always make sure to keep a working backup. In order to upgrade furniture, it must have modify rights and the notecards must be readable.

 

Builder Edition: NOTICE - Content creators must set the next-owner permissions to NO MODIFY / COPY / NO TRANSFER (scripts CAN NOT have both COPY & TRANSFER permissions enabled, they come packaged with NO MODIFY/ COPY/ TRANSFER permissions so that you are able to sell your end products, but must have their TRANSFER permissions un-ticked) before distributing/selling their final builds, the scripts verify their permissions when active and will self delete if next owner permissions on the scripts are not properly set.

 

Steps:

  1. delete the existing MLP scripts and poseball, but leave the configuration notecards - see below.

  2. copy all the "~XXXcapade~ *" scripts to your object.

  3. Copy as many "~XXXcapade~ pose_controller" scripts as you want concurrent avatars to be able to be animated for example: you only want the end user to be able to to animate 3 avatars, you will need to ensure there are 3 copies of the ~XXXcapade~ pose_controller in the contents tab of the device. like so: ~XXXcapade[be]~ pose_controller || ~XXXcapade[be]~ pose_controller 1 || ~XXXcapade[be]~ pose_controller 2

  4. Touch the object to start loading the configuration notecards.

  5. Done. Simply reset if you made changes to the configuration.

​

Upgrading an existing MLP set up device?

- deleting MLP scripts, their name start with the tilde `~` sign, which sorts them alphabetically to the end of a inventory.

- Typical names for MLPv2 scripts and ball object are:

~memory

~menu

~menucfg

~pos

~pose

~poser

~poser 1.. ~poser N

~props

~run

~swap

~ball

 

- You can leave plugins in place

~sequencer

 

Also leave all .MENUITEMS*, .POSITION notecards and animations in place.

​

Troubleshooting

Resetting a faulty configuration:

If you changed the configuration or position notecards, you must reload it.

  • Normally, the menu notecards would/should include an option allowing the owner to reset the configuration.

  • If there are no configuration notecards (or no menu containing a 'RESET' option), the XXXcapade will auto-add a 'RESET' button in order to reload the configuration

  • If you screwed up the menu items configuration, and the 'reset' option is no longer available, you can reset the 'XXXcapade - menu_handler script itself. This will reset all other scripts too.

  • If you really want to hide the reset option (not recommended), you must hide it in an unused (INVISIBLE) menu.

  • Reload, Restart and Reset are all equivalent under XXXcapade. They are all implemented for compatibility.

  • Loading menu items and positions independently is currently not supported(**).

 

End user differences

  1. SWAP and STOP changed slightly in function. This should not really add confusion.

  2. The SAVE command saves the current pose as the default. This setting is lost after a reset. By default, it is in the settings menu only accessible by the owner.

  3. Access mode - the access mode 'USER' is added. This mode can be used in configuration notecards, but also set by the owner for menu access.

  4. Access mode behavior differs slightly depending on situation. When a menu is defined in a notecard as 'USER' it is applied strict - unless it's the main menu. When the menu access mode is set to 'USER' by the owner using the 'MENUUSERS' command, only seated agents can access it - unless no-one sits on the object, in which case everyone can access it.

  5. Access modes 'ALL' , 'OWNER' and 'GROUP' will behave as expected.

 

 

Tips & Tricks:

  1. Set the object to 'sit on touch'.

  2. Define a proper default position, optionally with custom animations. The default animation will also be used as fallback option when a pose does not provide enough seat information for the current number of seated avatars. Therefore, when creating a 5-avatar couch, it is a good idea to at least fill the default pose with 5 positions and animations. A pose only defining 2 positions will adjust the first 2 avatars seated, and apply default pose to the other avatars.

  3. Menu card commands:I highly recommend to read the MLP documentation to understand the menu notecards. I'll give a brief summation here. Items marked with [*] have different behavior than with MLP. Items marked with [**] are new.

 

MENU menu name | access | ballcolor0 [,ballcolor,...] //defines a menu. access is one of ALL, GROUP, OWNER or USER

POSE pose | posename1 | posename2 ...

LINKMSG name | hidemenu | linkid , number , message //id will be the id of the menu toucher

TOMENU name or "-" //with "TOMENU -" the dash will be replaced by unassigned menu names

DUMP //dumps position data to owner

RESTART, RESET, RELOAD - restarts the device and reloads configuration

STOP* - the user pressing stop will be unseated. it will leave other users sitting.

SWAP* - the user will be presented a menu with positions to choose from

OFF* - switch the device off, saving sim resources and disabling access. Only owner can turn it on. If menu access is set to GROUP, group users can turn it on, too.

SAVE* - saves the current selected pose to be the default pose when sat on. The default pose applies after 60 seconds when no-one is sitting on the object.

MENUUSERS* - A new access right was introduced - "USER". This is almost identical to access mode "ALL" except that it takes sit state of the object into account.

BALLUSERS - select permissions to sit on the object. Agents without permissions will be unseated.

CHAT - Be chatty or not. Some messages may still make it even with chat disabled. Chatty mostly applies to pose switches.

ADJUST - Turn the device into adjustment state. Changes made to pose position will be stored. Use DUMP to list your changes.

GRAB** - scans for victims wearing an RLV relay, offers agent a menu of candidates to grab

RELEASE** - release any(all) captured victim(s).

 

Unknown Commands //will be listed just as-is in the menu. You can use this to define a pose only once, yet list it in several menu's.

____________________________________________________________

 

OPERATION:

  1. Click/Touch your XXXcapade device to power it up

  2. Once systems have loaded everything, touch again for the interactive menu

  3. Select a sub-menu containing poses

  4. Right click and 'Sit' on your XXXcapade device

  5. Select a pose, and the animations will start

  6. To return to the default stand pose, select 'STAND'

  7. To stop your avatar from being animated, select 'STOP'

  8. To switch-off, select "Shut Down" twice (but you can leave it on after first power up. our system powers down non essential scripts when not in use).

 

TO ADD ANIMATIONS:

Copy all your animations into the contents tab of your XXXcapade device (if you want to use existing poseballs, open them to move their animations into your inventory as  a back up, before dropping them into the contents tabs of your object.).

Note: you can use any object as a XXXcapade enabled device, just copy the scripts & notecards to contents tab of the object of your choice.

Open the .MENUITEMS and add the animations:

POSE name | animation1 | animation2 (see examples in .MENUITEMS)

The changes will become active after the system has been (re)started.

 

TO MAKE A BACKUP:

The positions will still be kept in memory after shutdown/restart or when the system is taken back into your inventory. The positions will be lost only when the memory script is reset (or when it crashes ie. when it's too full: "Script run-time error / Stack-Heap Collision"). A backup can be made on the .POSITIONS notecard, when the memory is empty it will read the .POSITIONS notecard automatically. To make a backup select "Mem Dump", copy the complete dump (from Chat-History) and paste it into the .POSITIONS notecard (just replace everything, you don't need to edit/format anything).

 

​

(*) fully compatible - read all of MLP and MLPv2's notecards, implement all standard functions and a selected set of extended functions. Some function implementations may vary, see the differences section for details. Plugins that do not communicate with the mother scripts should all be compatible. Plugins that do communicate with the mother scripts, might be compatible. Any plugins trying to interact with poseballs directly will obviously fail, as they are nonexistent.

 

(**) May come in a future version

​

​

​

​

​

bottom of page