There are basically three types of access that someone can have to a sub's Mesmerizer, each of which is controlled differently:
- Channel 99 command access
- Placing the sub in a trance
- Triggering post-hypnotic suggestions
If someone places the sub in a trance, then, for the duration of the trance, they have access that's equivalent to owner-level access, except that instead of using channel 99, they will be given a random channel to use. They cannot use this access remotely - only true Owners can use the sub's Mesmerizer without being within earshot of it (and only if the sub has enrolled in a Hub the owner controls). There are three ways in which someone might place a sub into a trance:
- If they have channel 99 command access and use the hypnotize, hypnotizeac or spiral commands.
- If they use the default "sleep now <name>" trigger.
- If they use a custom re-induction trigger.
sleep now $name = other hypnotizeac
The rule is defined using the other keyword which means that it's triggerable by anyone except the sub. The trigger rule invokes the hypnotizeac command, or "hypnotize with access control". This command will use the access control lists to determine whether the person tying to hypnotize the sub is permitted or prohibited from doing so. The access control lists are initialized from the Access notecard. If the would-be hypnotist is not found in either list, then the sub will be asked if they will allow the hypnosis attempt. They can respond "yes" or "no", or they can choose "never" (which will reject the attempt and add them to the "Denied" list) or "always" which will allow the attempt, and add them to the "Allowed" list.
A custom trigger using the hypnotizeac command will operate in the same way. However, the hypnotize and spiral commands do not check access, so a trigger using these commands will allow even someone on the denied list to induce trance, if they are permitted to use the trigger. In general, therefore, use the hypnotizeac command in public trigger-rules, and keep the hypnotize and spiral commands for use as manual commands, or in trigger-rules restricted to specific people.
As stated above, the access control lists are initialized from the Access notecard. This is a typical Access notecard:
reset
Owner=abcd1234-b9a1-423b-1235-c2128b4af803
Allow=7f1cfe79-71ae-4855-b766-754ec2e38bd7
Deny=*
The "reset" keyword clears the current lists when the Access notecard is read. Without this, entries from the notecard will be added to the existing lists, rather than replacing the existing lists. In general, you should start the notecard with "reset" until you are happy with your access permissions, and then remove it, so that permissions added subsequently via the hypnosis permission popup will not be discarded whenever something is added to the Mesmerizer's inventory (which causes the Access notecard to be re-read).
The above notecard specifies one Owner, and one other avatar who will be able to use the default sleep now trigger. An attempt to use the default trigger by anyone else will be rejected, because of the deny=* line. If the deny=* line were omitted (or identified a few specific avatars instead of using a wildcard), then when anyone else attempted to use the default sleep now trigger, or any trigger that runs the hypnotizeac command, the Mesmerizer would prompt the sub as to whether or not they were willing to succumb to the attempt.
No comments:
Post a Comment