Difference between revisions of "LSL Protocol"
m (→Protocol list) |
(Add damage types) |
||
(10 intermediate revisions by 6 users not shown) | |||
Line 43: | Line 43: | ||
|- | |- | ||
|| [[LSL Protocol/EasyTalk|EasyTalk]] | || [[LSL Protocol/EasyTalk|EasyTalk]] | ||
|| Salahzar Stenvaag | || {{User|Salahzar Stenvaag}} | ||
|| |Very Easy and simple communication protocol. Use it to simply coordinate llSay/llRegionSay/llListen objects, as well as linked set | || |Very Easy and simple communication protocol. Use it to simply coordinate llSay/llRegionSay/llListen objects, as well as linked set | ||
|- | |||
|| [[LSL Protocol/LockGuard|LockGuard]] | |||
|| Lillani Lowell | |||
|| A protocol designed for creating and linking particle chains from one object to another | |||
|- | |- | ||
|| [[LSL Protocol/ListMessage|ListMessage]] | || [[LSL Protocol/ListMessage|ListMessage]] | ||
Line 51: | Line 55: | ||
|- | |- | ||
|| [[LSL Protocol/LockMeister System|LockMeister System]] | || [[LSL Protocol/LockMeister System|LockMeister System]] | ||
|| Kyrah Abattoir | || {{User|Kyrah Abattoir}} | ||
|| | || Simple 'ping-style' protocol to detect particle chain targets on avatar attachments. | ||
|- | |- | ||
|| [[MLPV2|Multi Love Pose v2]] | || [[MLPV2|Multi Love Pose v2]] | ||
Line 59: | Line 63: | ||
|- | |- | ||
|| [[User:Nandana_Singh/nPose|nPose]] | || [[User:Nandana_Singh/nPose|nPose]] | ||
|| Nandana Singh | || {{User|Nandana Singh}} | ||
|| Furniture Posing Menuing kit (does not use pose balls) | || Furniture Posing Menuing kit (does not use pose balls) | ||
|- | |- | ||
|| [[LSL Protocol/Ganymedia OpenMAIP v1.0 Specification|OpenMAIP]] | || [[LSL Protocol/Ganymedia OpenMAIP v1.0 Specification|OpenMAIP]] | ||
|| Ganymede Ceriaptrix | || {{User|Ganymede Ceriaptrix}} | ||
|| ''Note: Specification is presently incomplete.'' Ganymedia OpenMAIP (Metaverse Application Internetworking Protocol) provides a TCP/IP-like routing and service-oriented message exchange protocol across multiple transport methods (including cross-simulator and cross-grid); allowing scripts to advertise their available functions, and relevant commands, to external and/or third-party scripts and viewers. Controlled access to closed functions is provided via RC4 challenge-response authentication. OpenMAIP also provides an optional RC4 cryptography layer, further extensible to public-private key DHSS. | || ''Note: Specification is presently incomplete.'' Ganymedia OpenMAIP (Metaverse Application Internetworking Protocol) provides a TCP/IP-like routing and service-oriented message exchange protocol across multiple transport methods (including cross-simulator and cross-grid); allowing scripts to advertise their available functions, and relevant commands, to external and/or third-party scripts and viewers. Controlled access to closed functions is provided via RC4 challenge-response authentication. OpenMAIP also provides an optional RC4 cryptography layer, further extensible to public-private key DHSS. | ||
|- | |- | ||
Line 71: | Line 75: | ||
|- | |- | ||
|| [[LSL Protocol/RestrainedLoveAPI|RestrainedLove viewer API]] | || [[LSL Protocol/RestrainedLoveAPI|RestrainedLove viewer API]] | ||
|| Marine Kelley | || {{User|Marine Kelley}} | ||
|| Use the features of the RestrainedLove viewer through llOwnerSay() calls. | || Use the features of the RestrainedLove viewer through llOwnerSay() calls. | ||
|- | |- | ||
|| [[LSL Protocol/Restrained Love Relay Specs|RestrainedLove viewer relay spec]] | || [[LSL Protocol/Restrained Love Relay Specs|RestrainedLove viewer relay spec]] | ||
|| Marine Kelley | || {{User|Marine Kelley}} | ||
|| Allow your furniture or cages to issue commands to the user's RestrainedLove viewer | || Allow your furniture or cages to issue commands to the user's RestrainedLove viewer | ||
|- | |- | ||
Line 81: | Line 85: | ||
|| Open Relay Group | || Open Relay Group | ||
|| A superset of the RestrainedLife viewer relay spec with useful extensions created and maintained by the community. | || A superset of the RestrainedLife viewer relay spec with useful extensions created and maintained by the community. | ||
|- | |||
||[[LSL_Protocol/rfedip|Ratany fine Engineering Device Interface Protocol]] | |||
|| Ratany Resident | |||
||An extensible protocol for detecting and communicating with compliant devices (objects): rfedip. | |||
|- | |- | ||
|| [[User:Nexii_Malthus/Script_API|Script API]] | || [[User:Nexii_Malthus/Script_API|Script API]] | ||
Line 89: | Line 97: | ||
|| [[User:Void_Singer|Void Singer]] | || [[User:Void_Singer|Void Singer]] | ||
|| An LSL Web Page Server for serving HTML content solely from within SL using shared media (Spec, protocols, linked examples) | || An LSL Web Page Server for serving HTML content solely from within SL using shared media (Spec, protocols, linked examples) | ||
|- | |||
|| [[LSL Protocol/OpenRadioCommunication|Open Radio Communication]] | |||
|| {{User|Kyrah Abattoir}} | |||
|| A barebone "binary like" radio protocol with interferences and crosstalk. | |||
|} | |} | ||
---- | ---- | ||
Line 120: | Line 133: | ||
|- | |- | ||
|| 6 | || 6 | ||
|| | || {{User|Grumble Loudon}} | ||
|| pre-appended text and say it. | || pre-appended text and say it. | ||
|| "/6 hello" becomes "/me Lion says: hello" | || "/6 hello" becomes "/me Lion says: hello" | ||
Line 235: | Line 248: | ||
|- | |- | ||
|| 45, 54 | || 45, 54 | ||
|| Ilobmirt Tenk | || {{User|Ilobmirt Tenk}} | ||
|| FOSSL Vending System Client/Server default command channel | || FOSSL Vending System Client/Server default command channel | ||
|- | |- | ||
Line 247: | Line 260: | ||
|- | |- | ||
|| 66 | || 66 | ||
|| Travis Lambert | || {{User|Travis Lambert}} | ||
|| BanLink default chat command channel | || BanLink default chat command channel | ||
|- | |- | ||
Line 299: | Line 312: | ||
|- | |- | ||
|| 777 | || 777 | ||
|| Hank Ramos | || {{User|Hank Ramos}} | ||
|| [[Universal Translator]]: channel to allow users to open a dialog-box using a chat command on channel #777. Only accepted command on this channel is "translator" and all other chat is ignored. Allows user to silently bring up dialog by hiding command as "/777 translator". | || [[Universal Translator]]: channel to allow users to open a dialog-box using a chat command on channel #777. Only accepted command on this channel is "translator" and all other chat is ignored. Allows user to silently bring up dialog by hiding command as "/777 translator". | ||
|- | |- | ||
Line 307: | Line 320: | ||
|- | |- | ||
|| 2776 | || 2776 | ||
|| Tdub Dowler, Riden Blaisdale | || {{User|Tdub Dowler}}, Riden Blaisdale | ||
|| Used for transmitting a csv list of keys for use in sim wide radars | || Used for transmitting a csv list of keys for use in sim wide radars | ||
|- | |- | ||
Line 319: | Line 332: | ||
|- | |- | ||
||10748, -10748 | ||10748, -10748 | ||
|| Lee Ponzu | || {{User|Lee Ponzu}} | ||
|| Commonly used in scripts by Ponzu | || Commonly used in scripts by Ponzu | ||
|- | |- | ||
Line 326: | Line 339: | ||
|| ACME interface (combat system) | || ACME interface (combat system) | ||
|- | |- | ||
|| 88225 | |||
|| [[User:Anaimfinity Resident|Ana Imfinity]] | |||
|| Used by [http://slgi.wikia.com/wiki/SLGI_Wiki SLGI scripts] | |||
|- | |||
|- | |||
|| 515001 | |||
|| {{User|Pae Sinister}} | |||
|| PaePaeBoom fireworks sequencer-to-launcher comm channel. | |||
|} | |} | ||
Line 337: | Line 358: | ||
|- | |- | ||
|| -666 | || -666 | ||
|| {{User|Dimentox Travanti}} | ||{{User|Dimentox Travanti}} | ||
|| [[DCS]]: Unit to Hud Status Update Channel | || [[DCS]]: Unit to Hud Status Update Channel | ||
|- | |- | ||
Line 353: | Line 374: | ||
|- | |- | ||
|| -10xxx | || -10xxx | ||
|| {{User|Ayelin Ethaniel}} | ||{{User|Ayelin Ethaniel}} | ||
|| Communication channel of ::Wild Pets:: systems. Commonly generated automatically between -10000 -10999. | || Communication channel of ::Wild Pets:: systems. Commonly generated automatically between -10000 -10999. | ||
|- | |- | ||
Line 369: | Line 390: | ||
|- | |- | ||
||-504xxx | ||-504xxx | ||
||Gal Canning | ||{{User|Gal Canning}} | ||
||only whispered inter-prim communication | ||only whispered inter-prim communication | ||
|- | |- | ||
Line 381: | Line 402: | ||
|- | |- | ||
||-2766532 | ||-2766532 | ||
||Hank Ramos | ||{{User|Hank Ramos}} | ||
||[[Universal Translator]]: "back-channel" for inter-translator communications. This is an encrypted channel that passes translation and command-control messages between translators that are linked together to spread the translation load and HTTP communications. | ||[[Universal Translator]]: "back-channel" for inter-translator communications. This is an encrypted channel that passes translation and command-control messages between translators that are linked together to spread the translation load and HTTP communications. | ||
|- | |||
||-20131224 | |||
||Ratany Resident | |||
||Default channel for [[LSL_Protocol/rfedip|Ratany fine Engineerings Device Interface Protocol]] | |||
|- | |||
||-42000000 | |||
||{{User|Nexii Malthus}} | |||
||[[OpenLayout]] collaborative edge snapping standard for HUDs | |||
|- | |- | ||
||-828983023 | ||-828983023 | ||
Line 395: | Line 424: | ||
||{{User|Asbrandt Resident}} | ||{{User|Asbrandt Resident}} | ||
||Internal Comms range for all projects : Z = Integer Project ID - Use of X range varies : All Comms are Headered with the Project ID : Some further info on User Page. | ||Internal Comms range for all projects : Z = Integer Project ID - Use of X range varies : All Comms are Headered with the Project ID : Some further info on User Page. | ||
|} | |} | ||
==Custom Damage Types== | |||
For reference here are the default damage types: | |||
{{LSL Constants/Damage_Types}} | |||
{{LSL_Constants/Custom_Damage_Types}} |
Latest revision as of 16:58, 31 July 2024
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Script protocols and known chat channels
Some times, scripts in Second Life send messages to one another to exchange information or coordinate behavior. The rules for that conversation are a protocol. Being able to say "/1show" or "/1hug lee" are examples.
Such protocols use a common chat channel. The examples above use channel 1. They could just as easily have used any other number, but a user (and other objects) have to have some way to find the correct number.
Some protocols, such as combat systems, are quite complicated and could be better documented. This page can be used to help prevent conflicts and allow multiple programmers to coordinate the protocol definitions.
Protocols can also be note card systems and systems that use object names.
Protocol list
Add a protocol here if it is widely used, or might be sometime in the future.
A protocol in this list should also have its own pages where the protocol is defined in some detail.
Name | Creator | Description |
Teleport Helper Protocol | Darling Brody | Teleporter Helper Protocol. |
Cool Hud | Henri Beauchamp | Universal Hud protocol. |
DataBot | Siann Beck | A protocol for specifying custom avatar information. |
EasyTalk | Salahzar Stenvaag | |Very Easy and simple communication protocol. Use it to simply coordinate llSay/llRegionSay/llListen objects, as well as linked set |
LockGuard | Lillani Lowell | A protocol designed for creating and linking particle chains from one object to another |
ListMessage | Anonymous | Send and receive lists, non-lists, non-results, verb-not-found, and partially evaluated Polish expressions. |
LockMeister System | Kyrah Abattoir | Simple 'ping-style' protocol to detect particle chain targets on avatar attachments. |
Multi Love Pose v2 | Lear Cale | Pose Ball Rezzing and Menuing kit (see menu to the right of linked page for indepth spec/protocol) |
nPose | Nandana Singh | Furniture Posing Menuing kit (does not use pose balls) |
OpenMAIP | Ganymede Ceriaptrix | Note: Specification is presently incomplete. Ganymedia OpenMAIP (Metaverse Application Internetworking Protocol) provides a TCP/IP-like routing and service-oriented message exchange protocol across multiple transport methods (including cross-simulator and cross-grid); allowing scripts to advertise their available functions, and relevant commands, to external and/or third-party scripts and viewers. Controlled access to closed functions is provided via RC4 challenge-response authentication. OpenMAIP also provides an optional RC4 cryptography layer, further extensible to public-private key DHSS. |
P Vendor Linked Messages API & Environment | Zep Palen | Allows an owner of the P Vendor system to develope custom vendors and use the API for input/output |
RestrainedLove viewer API | Marine Kelley | Use the features of the RestrainedLove viewer through llOwnerSay() calls. |
RestrainedLove viewer relay spec | Marine Kelley | Allow your furniture or cages to issue commands to the user's RestrainedLove viewer |
RestrainedLove viewer open relay spec | Open Relay Group | A superset of the RestrainedLife viewer relay spec with useful extensions created and maintained by the community. |
Ratany fine Engineering Device Interface Protocol | Ratany Resident | An extensible protocol for detecting and communicating with compliant devices (objects): rfedip. |
Script API | Nexii Malthus | A protocol to provide a useful communication layer between LSL scripts and supported clients, as well as a useful and purposeful feature set. (Vertical Life and Plywood clients currently) |
Teacup (LSL HTTP Server) | Void Singer | An LSL Web Page Server for serving HTML content solely from within SL using shared media (Spec, protocols, linked examples) |
Open Radio Communication | Kyrah Abattoir | A barebone "binary like" radio protocol with interferences and crosstalk. |
Known chat channels
This list is intended to reduce the number of scripts using the same chat channel number. Please try and keep them in sequence. Note that the absence of a channel reservation in this list does not mean that channel will never be used - some scripts choose channels randomly from a very, very large range, sometimes a range of all possible channels. Always design your communication protocols such that invalid/interfering messages are disposed of.
Channel | Creator | Description | Messages |
1, 4, 5, 9 | Unknown | Very common in poseballs | "hide", "show" |
3 | katie.paine | rf gag - also used by Darie's gag scripts | |
4 | Mo Noel | (Depreciated: Default channel for chat redirection like in gags or other voice manipulating tools) | |
5 | Psistorm Ikura | PsiCorp Products | |
6 | Grumble Loudon | pre-appended text and say it. | "/6 hello" becomes "/me Lion says: hello" |
8 | Henri Beauchamp | Cool Collar command channel | |
8 | unknown | Lulu cuffs / gags .. | |
9 | DCS And Most Modern SLRPG Frame Works | Command channel for user commands for Combat Systems/ SLRPG Frameworks like DCS | /9on /9 reset /9<power> etc |
10 | ACE BnT/IntLibber Brautigan | Ancapistan Capital Exchange ATM user interface channel | "balance","withdraw","help" |
10, 11, 12 | Bettie Binder | doll life renamer | |
11 | Racheal Young | Default channel of chat commands for Barre & Rachael Rockers Products | |
11 | Mo Noel | Default channel of chat command interface of MoDesign products | |
12 | Unknown | title and status of damage meter (combat system) | |
13 | Daisy Rimbaud | evil titler | |
14 | Mo Noel | Default channel for chat redirection like in gags or other voice manipulating tools | |
15 | Mo Noel | Default channel for emote redirection like in gags or other voice manipulating tools | |
17 | Susan Daviau | Susan's relay | |
19 | Cloe | DEM rename | |
20 | Unknown | SafeZone interface (combat system) | |
20 | Bettie Binder | doll life dollyteer | |
21 | Bettie Binder | doll life | |
22 | Henri Beauchamp | Cool Cuffs command channel | |
22 | unknown | OOC Textiness. Says what you type. | |
22 | Corvan Nansen | Chat Enhancer. Out Of Character speech. | |
26 | Agnes Paine | Command channel for restraints | |
33 | Henri Beauchamp | Cool Nipples command channel | |
33 | unknown | Collar | |
35 | Corvan Nansen | Chat Enhancer Command channel. | |
36 | Corvan Nansen | Ultimate Titler Command channel. | |
42 | unknown | Common channel used by wiki example scripts | |
42, 55, 66, 77 | Psistorm Ikura | Aventity avatar scripts | |
44 | Corvan Nansen | Chat Enhancer. In Character speech. | |
45, 54 | Ilobmirt Tenk | FOSSL Vending System Client/Server default command channel | |
55 | Henri Beauchamp | Cool Chastity Belt command channel | |
63 | FlipperPA Peregrine | FlipTitle and "Flip mod" Franimation commands | |
66 | Travis Lambert | BanLink default chat command channel | |
66 | Henri Beauchamp | Cool Diaper command channel | |
66 | Corvan Nansen | Chat Enhancer. In Character emotes. | |
69 | Henri Beauchamp | Cool Penis & Cool Pussy command channel | |
77 | Marine Kelley | Real Restraints and similar BDSM equipment | |
77 | Xarrk Dagger | KAIIA Systems devices default chat command channel | |
77 | Mars Tamale | Mars Ring | |
88 | Cadroe Murphy | Used by ShapeGen and other building tools | |
88 | Corvan Nansen | Chat Enhancer. Narration channel. | |
88 | Sharie Criss | Owners plugin for Marine Kelley's Real Restraint equipment. Chat command channel. | |
99 | unknown | Dance Bracelets | |
100 | Mo Noel | Channel used to ask the user for chat line entries from within usual dialog sessions | |
100-999 (Randomly chosen periodically) | Corvan Nansen | Ultimate Titler. Title setting channel. | |
777 | Hank Ramos | Universal Translator: channel to allow users to open a dialog-box using a chat command on channel #777. Only accepted command on this channel is "translator" and all other chat is ignored. Allows user to silently bring up dialog by hiding command as "/777 translator". | |
888 | Xarrk Dagger | KAIIA Systems device identification channel | |
2776 | Tdub Dowler, Riden Blaisdale | Used for transmitting a csv list of keys for use in sim wide radars | |
4123 - 4130 | Lastro Greenwood | Used by the Life Support System | |
9001, 908070 | Mystical Cookie | MystiTool gesture commands, patch installers | |
10748, -10748 | Lee Ponzu | Commonly used in scripts by Ponzu | |
31984 | Coraa Prior | ACME interface (combat system) | |
88225 | Ana Imfinity | Used by SLGI scripts | |
515001 | Pae Sinister | PaePaeBoom fireworks sequencer-to-launcher comm channel. |
Known negative chat channels
Channel | Creator | Description | Messages |
-666 | Dimentox Travanti | DCS: Unit to Hud Status Update Channel | |
-786 | Sly | Sly's Modified Gear Communications Channel | |
-8888 | Kyrah Abattoir | LockMeister Communications Channel | |
-9119 | Lillani Lowell | LockGuard Communications Channel | |
-10xxx | Ayelin Ethaniel | Communication channel of ::Wild Pets:: systems. Commonly generated automatically between -10000 -10999. | |
-30000,-30001 | Corvan Nansen | Update station broadcast and coordination channels | |
-248177 | Corvan Nansen | Bane Custodian communications. Used by the Custodian to communicate with the Bane Hood. | |
-426956 | Ganymede Ceriaptrix | Ganymedia Open Metaverse Application Internetworking Protocol (OpenMAIP): Broadcast Communications Channel (MAIP_BROADCAST ). Used for public OpenMAIP service discovery queries. Region-wide. See the Ganymedia OpenMAIP v1.0 Specification for further information.
| |
-504xxx | Gal Canning | only whispered inter-prim communication | |
-888888 | Henri Beauchamp | Cool Hud communications channel | |
-1xxxxxx | Corvan Nansen | Update management channel for coordination between items to be updated and an update orb. Randomly chosen and temporary. | |
-2766532 | Hank Ramos | Universal Translator: "back-channel" for inter-translator communications. This is an encrypted channel that passes translation and command-control messages between translators that are linked together to spread the translation load and HTTP communications. | |
-20131224 | Ratany Resident | Default channel for Ratany fine Engineerings Device Interface Protocol | |
-42000000 | Nexii Malthus | OpenLayout collaborative edge snapping standard for HUDs | |
-828983023 | Very Keynes | VK-NET Public Channel for Inter Network Communication and Local Network Address Acquisition. | |
-1812221819 | Marine Kelley | RestrainedLove relay communications channel | |
-1192zzzxxx | Asbrandt Resident | Internal Comms range for all projects : Z = Integer Project ID - Use of X range varies : All Comms are Headered with the Project ID : Some further info on User Page. |
Custom Damage Types
For reference here are the default damage types:
Flag | Description | |
---|---|---|
DAMAGE_TYPE_IMPACT | −1 | System damage generated by impact with terrain or a prim. |
DAMAGE_TYPE_GENERIC | 0 | Generic or legacy damage. |
DAMAGE_TYPE_ACID | 1 | Damage caused by a caustic substance, such as acid. |
DAMAGE_TYPE_BLUDGEONING | 2 | Damage caused by a blunt object, such as a club. |
DAMAGE_TYPE_COLD | 3 | Damage inflicted by exposure to extreme cold. |
DAMAGE_TYPE_ELECTRIC | 4 | Damage caused by electricity. |
DAMAGE_TYPE_FIRE | 5 | Damage inflicted by exposure to heat or flames. |
DAMAGE_TYPE_FORCE | 6 | Damage inflicted by a great force or impact. |
DAMAGE_TYPE_NECROTIC | 7 | Damage caused by a direct assault on life-force. |
DAMAGE_TYPE_PIERCING | 8 | Damage caused by a piercing object such as a bullet, spear, or arrow. |
DAMAGE_TYPE_POISON | 9 | Damage caused by poison. |
DAMAGE_TYPE_PSYCHIC | 10 | Damage caused by a direct assault on the mind. |
DAMAGE_TYPE_RADIANT | 11 | Damage caused by radiation or extreme light. |
DAMAGE_TYPE_SLASHING | 12 | Damage caused by a slashing object such as a sword or axe. |
DAMAGE_TYPE_SONIC | 13 | Damage caused by loud noises, like a Crash Worship concert. |
DAMAGE_TYPE_EMOTIONAL | 14 |
Damage types are provided as a convenience and a suggestion. Scripters are free to add custom ones for their own combat systems or repurpose the damage type fields.
To make it easy for the community to recognise and re-use custom damage types here is a table that scripters can add onto:
Flag | Description | Subtype | Creator | System | |
---|---|---|---|---|---|
DAMAGE_TYPE_MEDICAL | 100 | Negative damage to heal a wound, damaged limb, first aid, etc. Intended for generic healing of biological nature. Positive damage would be medical malpractice | Nexii Malthus | Vertical Sim / SLMC | |
DAMAGE_TYPE_REPAIR | 101 | Negative damage from repairing an object or something mechanical, welding torch or wrench on a vehicle/robot/mech, etc. Positive damage can be due to mistakes, low skill or sabotage. Intended for generic healing of non-biological nature (e.g. a mechanical tank or an electrical system) | Nexii Malthus | Vertical Sim / SLMC | |
DAMAGE_TYPE_EXPLOSIVE | 102 | Damage caused by an explosive blast, like a grenade | DAMAGE_TYPE_FORCE | Nexii Malthus | Vertical Sim / SLMC |
DAMAGE_TYPE_CRUSHING | 103 | Damage caused by crushing. Such as being crushed by water pressure. More of a constant type of force damage — can be nullified/reduced via diving suit | DAMAGE_TYPE_FORCE | Nexii Malthus | Vertical Sim / SLMC |
DAMAGE_TYPE_ANTI_ARMOR | 104 | Damage caused by anti-tank/anti-armor. Such as from a specialised armor piercing shell, rocket or other munition | DAMAGE_TYPE_PIERCING | Nexii Malthus | Vertical Sim / SLMC |
DAMAGE_TYPE_SUFFOCATION | 105 | Damage caused by suffocation. Usually lacking a breathable atmosphere, such as from drowning or being in the vacuum of space | Nexii Malthus | Vertical Sim / SLMC |