^ {{:touchbound_system:conditioner.png?nolink}} ^ | Chat Conditioner | ====== Supported TouchBound functions ====== * [[touchbound_system:locking_unlocking|Locking/unlocking.]] ====== Supported locks ====== * The chat conditioner uses an universal keyhole * Any TB compatible Key can be used to lock and unlock it. ====== Touch functions ====== * Touching the cover cap will open/close the chat conditioner. * If unlocked, it will also unfold the central core. * The central core is used for [[touchbound_system:locking_unlocking|Locking/unlocking.]] * The 3 leftmost buttons are used to select a conditioner preset. * The rightmost button is the configuration button. ====== Configuration ====== {{ :touchbound_system:conditioner-popup.png}}By clicking the configuration button, you will be presented with 3 options: LOAD: Used to load a new configuration notecard. This is done by supplying a notecard UUID, which you can get by right-clicking the notecard in your inventory and choosing "copy asset UUID". GET SAMPLE: If you do not have the sample configuration card, this will allow you to receive a copy of it. CLEAR: This will clear the loaded configuration. **If someone else than the wearer loads a configuration card, the wearer will be locked out of using the buttons until someone uses the "CLEAR" option.** The chat conditioner will show a **red** symbol on the configuration button when this happens. ====== Presets ====== {{ :touchbound_system:conditioneranim.gif}}The Chat Conditioner can hold a total of 4 presets, each with their own button icon. In practice however, there are only 3 buttons, the 4th preset is engaged when NONE of the buttons are pressed down. Buttons can only be accessed when the chat conditioner core is unlocked. ====== Capabilities ====== * The "force list" adds a list of words that have to be used in each chat line to be allowed to talk (at least one has to be used) * Blacklist a selection of words that are not allowed in chat. * Whitelist a selection of words to be the only words that the wearer is allowed to use. * Whether the wearer's name is allowed regardless of any other filter. * How many capitalized words are allowed to bypass filtering (useful to allow the wearer to call people by their name) * Restrict the wearer to a maximum number of syllables per word. * Restrict the wearer to a maximum number of words per chat line. * Rename the wearer. * Completely prevent chat. * Restrict emote length. * Block emotes. * Force text to lowercase. * Convert chat messages to microscript ᵐᶦᶜʳᵒˢᶜʳᶦᵖᵗ. * Force the wearer to whisper. * Replace a set of words by another. * Whether disallowed words should be muted individually or if the entire chat line should be blocked. * Trigger keywords and word sequences can be added to automatically switch preset even when locked. //Note: The triggers are picked up from avatars and objects in local chat, excluding the wearer and any object owned by the wearer.// ====== The configuration file ====== //Note: The configuration file may take a while to be parsed by the chat conditioner. You can speed it up by removing most of the comments and empty lines once you designed a configuration that you like.// When you wish to load a specific configuration in the chat restrictor, you do so by providing it with the **UUID** of the notecard. **The notecard does NOT have to be in the Chat Conditioner's inventory. The UUID of a notecard will change everytime it is saved. ===== Sample ===== ////////////////////////////////////////////// // KDC Chat Restrictor configuration file // // Copyright 2016 KDC: Kyrah Design Concept // ////////////////////////////////////////////// //>All lines starting with "//" are comments and ignored. //>All wordlists are separated by commas and in lowercase. //>LSL notecard lines can't be read past 256 characters, use multiple entries if you run out of space. //Word blacklist: If enabled, those words cannot be used by the user. BLACKLIST_ADD=shit,fuck,bitch //Word whitelist: If enabled, only those words can be pronounced by the user. WHITELIST_ADD=yes,no,please,thank,you //Word forcelist: If enabled, at least one of those words MUST be used in each chat line. FORCELIST_ADD=sir,madam FORCELIST_ADD=miss,mister //Word substitution: If enabled, any word found in the SOURCE list will be replaced by the matching word in the REPLACE list. SOURCE_ADD=mew,reasonable REPLACE_ADD=woof,ludicruous //Renamer: Which name will be used by the chat restrictor //Will use the wearer's username if left blank. //You can set it to anything you want, but remember that scripts //Cannot use special characters for names. //You can also use the following special codes (without quotes): //"DISPLAYNAME" : Will use the wearer's display name instead of their username. //"BLANK" : Will not use a name at all. NAME= //Syllable counter: You can limit allowed words based on how many syllables are in them. //Note that the syllable counter is designed for the english language and is not 100% accurate. SYLLABLES=5 //Uppercase allowance: Because it isn't possible to reliably detect when someone is using a name instead of a word, this option determinates how many words are allowed to bypass all filters if they start with an uppercase letter when WHITELIST is active. ALLOWUPPERCASE=5 //Maximum word count: if MUTEWORD is enabled, this will limit the number of words the wearer can use in a single chat line. MAXWORDCOUNT=10 //Radio frequency: If RADIOONFAIL is enabled, a radio message will be sent on this frequency. //valid frequencies go from 88.1 to 108.1 RADIO=98.7 //The following key words can be useds for each preset: //BLACKLIST: Enables the word blacklist. //WHITELIST: Enables the word whitelist. //FORCELIST: Enables the forced word list. //RENAME: Will use the renamer. //SYLLABLE: Will enable syllable limits. //MUTE: The wearer will only be able to say "...", no chat at all. //MUTEEMOTE: The wearer cannot emote. //CUTEMOTE: The wearer emotes will be limited. //ALLOWNAME: The wearer's name will not be filtered out. //-------------output formatting options--------------- //MUTESYLL: Will mute the entire sentence if one word is over the syllable limit, otherwise, only the offending word will be muted. //MUTEONFAIL: Will mute the entire sentence if the blacklist/whitelist is triggered, otherwise, only the offending word will be muted. //RADIOONFAIL: If the blacklist/whitelist/wordlimit/syllable limit is triggered, can be used to trigger an OpenRC device (The KDC shock collar for instance). //LOWERCASE: Will lowercase the final text output. //WHISPER: This will force the wearer to whisper. //WORDLIMIT: Will limit the number of words per chat line. //MICROSCRIPT: This will reformat the wearer's text to use microscript (warning, this is almost unreadable). //SUBSTITUTION: This will automatically substitute words in the substitution list by the matching replacement word. //Each buttons and the default (no buttons engaged) can be configured to enable 0 or more of the filters. //In this example configuration, the default setting has no restrictions, and the buttons are progressively more restrictive. DEFAULT_OPTIONS= BUTTON1_OPTIONS=FORCENAME,BLACKLIST,CUTEMOTE BUTTON2_OPTIONS=FORCENAME,WHITELIST,FORCELIST,MUTEEMOTE,WHISPER BUTTON3_OPTIONS=MUTE,MUTEEMOTE //textures can either be UUIDS or in the object's inventory and are the button labels. //Entering no value here will default to "blank.button" //The available defaults are: button-blank button-bad button-bubbledots button-chat button-cog button-cross button-exclaim button-forbidden button-lips button-maid button-options button-power button-question button-radio button-umbrella button-circle button-circle-hollow button-square button-square-hollow button-triangle button-triangle-hollow BUTTON1_TEXTURE=button-exclaim BUTTON2_TEXTURE=button-swear BUTTON3_TEXTURE=button-bubbledots //All the filters are executed in a specific order: //MUTEEMOTE,CUTEMOTE,MUTE,(ALLOWNAME),(ALLOWUPPERCASE),FORCELIST,SUBSTITUTION,WHITELIST,BLACKLIST,SYLLABLE,WORDLIMIT,MUTEWORD,MICROSCRIPT,RADIOONFAIL //Presets can be automatically changed using trigger messages said in local chat even when locked. //triggers can contain spaces but have to be in lowercase. Multiple triggers can be defined by separating them with commas. DEFAULT_TRIGGER=reset,default PRESET1_TRIGGER=load preset 1,set 1,engage PRESET2_TRIGGER= PRESET3_TRIGGER= ===== Default button icons ===== {{:touchbound_system:button0.png?nolink}} {{:touchbound_system:button1.png?nolink}} {{:touchbound_system:button2.png?nolink}} {{:touchbound_system:button3.png?nolink}} {{:touchbound_system:button4.png?nolink}}