METAwiki logo
Welcome Guest, you are in: Login



RSS RSS

Navigation







Search the wiki
»


All Pages
Get NETFLIX on your TV with ROKU












Table of Contents [Hide/Show]


METAbolt MD5 Script
METAbolt Commands
      ADDTOGROUPROLE
      AWAY
      BUSY
      EJECTFROMGROUP
      EJECTFROMGROUPROLE
      FOLLOW
      GIVE
      GIVEFOLDER
      LAND_CREATE_OBJECTS
      LAND_ENTER_OBJECTS
      LAND_PUSH
      LAND_SAFE
      MOVETO
      NOTAWAY
      NOTBUSY
      PARCEL_RETURN_AVATAR_OBJECTS
      PARCEL_RETURN_OBJECT
      RETURN_OBJECTS_OWNED_BY_OTHERS
      SAY
      SENDNOTICE
      SIM_ADD_TO_WHITE_LIST
      SIM_BAN
      SIM_CHANGE_PARCELNAME_AND_OR_DESCRIPTION
      SIM_ESTATE_MESSAGE
      SIM_RECLAIM_LAND
      SIM_REGION_MESSAGE
      SIM_RESTART
      SIM_RETURN_OBJECTS
      SIM_SELL_LAND
      SIM_SEND_EVERYONE_HOME
      SIT
      STAND
      STOP
      TOUCH
      TP
      WEAR
How to get the UUID's of the items and folders you need
Troubleshooting
How to upgrade the MB_LSLAPI to the latest version





Download

Download the latest version of MB_LSLAPI (V 1.2)


BY DOWNLOADING AND USING THIS PLUG-IN YOU AGREEING TO THE METAbolt Freeware License





METAbolt MD5 Script

To communicate with METAbolt you need to pass the METAbolt password generated in METAbolt "Application/Preferences". For extra security this password needs to be MD5'ed otherwise METAbolt will discard the request/message you are sending.

The concept is very simple. You simply need to drop the script named "METAbolt MD5" into the object where you scripts are and pass your password via LINK_MESSAGE. The METAbolt script will then MD5 it and pass it back to your script via LINK_MESSAGE. That's it!

We have included a sample script file called "SAMPLE Listen Script" in a package we are distributing free of charge: http://slurl.com/Vilmarh/176/214/84/. As you will see it provides a sample of how to make the call and pass the password to the MD5 script and it also provides a sample on how your script should listen and receive the MD5ed password back. You should be able to just copy and paste this sample code into your script/s and it should work without any problems.


Security Levels
From version 0.9.47.0 onwards LSL commands are disabled by default due to security reasons. You can enable them from the "Security" tab under Application/Preferences/General menu.

There are 2 ways of using the LSL interface:

1. Accept valid commands (ones with the correct METAbolt password) from all avatars and objects. To do this leave the Master avatar and object UUIDs as they are (00000000-0000-0000-0000-000000000000) and then unckeck the "Enforce LSL command security" option.

2. Specify a master avatar and objects. Commands only from the avatar and/or object you have specified will be accepted and all others ignored. Then check the "Enforce LSL command security" option. This is the recommended option for maximum security especially for bots performing SIM/Land related functions.

AS OR VERSION 0.9.51.0 THE LSL API IS NO LONGER IN METABOLT CORE. IT HAS BECOME A PLUG-IN WHICH IS DISTRIBUTED WITH THE METABOLT SOFTWARE DISTRIBUTION. THE PLUG-IN IS CALLED "MB_LSLAPI.EXE" AND CAN BE FOUND UNDER THE "EXTENSIONS" FOLDER OF METABOLT. TO USE THE LSL API YOU NEED TO LOAD THIS PLUGIN WHEN YOU START METABOLT.


Information
You can control the behaviour of the MB_LSLAPI by using the following features found under the Application/Preference menu option of METAbolt:

  • Displaying received LSL commands, errors and other information to see what's going on: Click here


  • Auto loading MB_LSLAPI each time the METAbolt application starts: Click here



METAbolt Commands

As of METAbolt version 0.9.3.0, METAbolt has made available LSL interfaces which allows SL scripters to develop scripts that will communicate with a METAbolt bot/avatar and get it to execute functions. The following IM commands are currently available:





ADDTOGROUPROLE


Add an avatar to a group role

Command format: cmd identifier|password|ADDTOGROUPROLE|group UUID|role UUID|avatar UUID


Note
This command should not be confused with direct group invitations. ADDTOGROUPROLE is not a direct invite. It simply adds the given avatar to the defined group role. The avatar already needs to be a member of the group concerned i.e. If the avatar is in the "everyone" role you can also add them to "managers", "supervisors" or "owners" etc roles.




AWAY


To set the avatar status to away

Command format: cmd identifier|password|AWAY




BUSY


To set the avatar status to busy

Command format: cmd identifier|password|BUSY




EJECTFROMGROUP


Eject an avatar from a group

Command format: cmd identifier|password|EJECTFROMGROUP|group UUID|avatar UUID




EJECTFROMGROUPROLE


Eject an avatar from a a group role

Command format: cmd identifier|password|EJECTFROMGROUPROLE|group UUID|role UUID|avatar UUID




FOLLOW


Follow a specified avatar

Command format: cmd identifier|password|FOLLOW|avatar name




GIVE


To get the bot to give an item to an identified avatar

Command format: cmd identifier|password|GIVE|item UUID|avatar UUID




GIVEFOLDER


To give a folder to the specified avatar

Command format: cmd identifier|password|GIVEFOLDER|folder UUID|folder name|avatar UUID




LAND_CREATE_OBJECTS


Toggle CREATE object permission for Everyone on a parcel

Command format: cmd identifier|password|LAND_CREATE_OBJECTS|true or false


NOTE: The bot needs to be in the same parcel




LAND_ENTER_OBJECTS


Toggle ENTER object permission for Everyone on a parcel

Command format: cmd identifier|password|LAND_ENTER_OBJECTS|true or false


NOTE: The bot needs to be in the same parcel




LAND_PUSH


Toggle Push setting on a parcel

Command format: cmd identifier|password|LAND_PUSH|true or false


NOTE: The bot needs to be in the same parcel




LAND_SAFE


Toggle Safe land setting on a parcel

Command format: cmd identifier|password|LAND_SAFE|true or false


NOTE: The bot needs to be in the same parcel





MOVETO


Walk, run or fly to a given coordinate

Command format: cmd identifier|password|MOVETO|movement type|coord x|coord y|coord z


movement types = walk, run or fly




NOTAWAY


To set the avatar status to not away

Command format: cmd identifier|password|NOTAWAY




NOTBUSY


To set the avatar to un busy

Command format: cmd identifier|password|NOTBUSY




PARCEL_RETURN_AVATAR_OBJECTS


Returns ALL objects belonging to an avatar on a parcel

Command format: cmd identifier|password|PARCEL_RETURN_AVATAR_OBJECTS|UUID of the avatar


NOTE: The bot needs to be in the same parcel




PARCEL_RETURN_OBJECT


Returns a specific object from a parcel or SIM to its owner

Command format: cmd identifier|password|PARCEL_RETURN_OBJECT|UUID of Object


NOTE: The bot needs to be in the same SIM




RETURN_OBJECTS_OWNED_BY_OTHERS


Returns all objects owned by others on a parcel

Command format: cmd identifier|password|RETURN_OBJECTS_OWNED_BY_OTHERS


NOTE: The bot needs to be in the same parcel




SAY


To get the bot to say the passed message in public chat

Command format: cmd identifier|password|SAY|channel|message|message type


message types = normal, shout or whisper




SENDNOTICE


Send a notice to a specified group

Command format: cmd identifier|password|SENDNOTICE|subject|message|attachment asset UUID|group UUID




SIM_ADD_TO_WHITE_LIST


Add an avatar to the "allowed" list of a SIM

Command format: cmd identifier|password|SIM_ADD_TO_WHITE_LIST|avatar UUID


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_BAN


To ban an avatar from the SIM

Command format: cmd identifier|password|SIM_BAN|avatar UUID


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_CHANGE_PARCELNAME_AND_OR_DESCRIPTION


Change the name and/or description of a SIM

Command format: cmd identifier|password|SIM_CHANGE_PARCELNAME_AND_OR_DESCRIPTION|parcel local ID|parcel name|parcel description


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_ESTATE_MESSAGE


Send an estate message

Command format: cmd identifier|password|SIM_ESTATE_MESSAGE|message


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_RECLAIM_LAND


Reclaim a land (parcel)

Command format: cmd identifier|password|SIM_RECLAIM_LAND|parcel local ID


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_REGION_MESSAGE


Send a region message

Command format: cmd identifier|password|SIM_REGION_MESSAGE|message


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_RESTART


Re-start a SIM

Command format: cmd identifier|password|SIM_RESTART


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_RETURN_OBJECTS


Return all objects belonging to an avatar

Command format: cmd identifier|password|SIM_RETURN_OBJECTS|avatar UUID


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_SELL_LAND


Put a parcel on sale

Command format: cmd identifier|password|SIM_SELL_LAND|parcel local ID|price


NOTE: Price must be an integer i.e. number only (NO L$ or $ before or after it)
NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIM_SEND_EVERYONE_HOME


Send everyone on the SIM home

Command format: cmd identifier|password|SIM_SEND_EVERYONE_HOME


NOTE: The bot needs to be in the same SIM
NOTE: Requires SIM Owner or Manager priviledges




SIT


To sit on an object

Command format: cmd identifier|password|SIT|object UUID




STAND


To stand from a sitting position

Command format: cmd identifier|password|STAND|object UUID




STOP


Stop an avatar's movement e.g. follow or moveto

Command format: cmd identifier|password|STOP




TOUCH


To touch the specified object

Command format: cmd identifier|password|TOUCH|object UUID




TP


To get the avatar to teleport to a given location on a given SIM

Command format: cmd identifier|password|TP|SIM name|coord x|coord y|coord z




WEAR


To get the bot to change clothes to ones specified in a folder

Command format: cmd identifier|password|WEAR|folder UUID





Commands are sent to the bot/avatar via IM. The "cmd identifier" (listed in command formats above) is required by METAbolt to recognise commands. Currently this identifier is: ned34b54-3765-439j-fds5


New commands are added as and when. When new commands are made available it is not announced. Check this page regularly to keep up to date.


Important information/help on the MB_LSLAPI can be found here


Latest version of the MB_LSLAPI API is found here


The METAbolt LSL script package which contains samples and guides for the above commands can be picked up from the L-Tek Showroom for FREE: http://slurl.com/Vilmarh/176/214/84/


The passwords used in the above commands need to be MD5ed (using the provided METAbolt MD5 script) before the command is sent to METAbolt. The password needs to be the same password contained in the "Application/Preferences" in METAbolt (obviously before it is MD5ed!).




How to get the UUID's of the items and folders you need




If you select an inventory item by clicking on it in the METAbolt inventory you will see that information regarding the item is diplayed in the pane on the right hand side of the application. One of them is the UUID you need to copy and paste into SL to use with the command above.

By using the "Automated clothes changer" accessible from the menu in the METAbolt inventory you can see the UUID of clothes folders you click on.

That's it. I will leave how to use these features to your imagination and hope that you will come up with interesting solutions which you can either give away or sell for a price.





Troubleshooting




1. The METAbolt password under the "Application/Preferences/General/Security" menu option has not changed.


solution: If it has changed either copy and paste the previous one from the script and save it in METAbolt, or generate a new one in METAbolt and copy paste it into the script


2. Check that the MB_LSLAPI is loaded from the "Plugins" menu.


solution: You can get APIs to auto-load every time METAbolt is started from the "Plugin Manager" option under the "Plugin" menu


3. You might have lost or deleted the METAbolt settings (.ini) file in which case METAbolt will have defaulted to the "secure mode" i.e. commands are disabled.


solution: Either from the "Plugin Manager" or Security tab under "Application/Preferences/General" set the Avatar/Object UUIDs and check/uncheck the "Enforce LSL security (Security tab) or the "Limit LSL commands to above avatar and object" checkbox options (they are both the same) as you need. This is described in more detail here: http://www.metabolt.net/METAwiki/Using-Preferences.ashx?NoRedirect=1#SecurityL$_3


4. Check that the commands you are using in your script are correct and haven't changed.


solution: Read this page from the beginning





How to upgrade the MB_LSLAPI to the latest version




1. Download the latest version from here


2. Unzip the file and copy the content "MB_LSLAPI.exe"


3. If any, close down all instances of METAbolt.


4. Open your Data Dir and go into the "Extensions" folder and paste and replace the file you just copied


5. Restart your METAbolt and login to the grid of your choice


6. From under the "Plugins" menu select the "MB_LSLAPI" option to activate the API and then click on the "Hide" button to keep it running in the background (if that is what you want).





Copyrights © 2008 - 2011 www.metabolt.net. All rights reserved.

Second Life and SL are trademarks of Linden Research, Inc. METAbolt is not affiliated with or sponsored by Linden Research.


ScrewTurn Wiki. Some of the icons created by FamFamFam