Custom Door Script Kit V2 Mark3
Thank you for your interest or for buying our product :D
Menu Page Content :
- Script Features
- Box content
- Setup Tutorial
- Notecard details
- Internal and External API
- Screenshots of creations
Script Features :
Content :
How to setup / Tutorial:
First you need to build your door, make sure you name all the parts that needs to move the EXACT same way.Optional: Have a (or some) button prim to trigger the door, name them as well all the same (but not the same name as your moving parts)
Then create a prim and link it last with your door parts to make it your "Root" prim.
To select your prims use CTRL + Left Click, to link them use CTRL+L
Linked prims appears blue when selected and root prim yellow. Like shown below.

Green : Root Prim (where core scripts will end)
Orange : Door/Moving parts
Blue : Button part
Once done with creating your object, its now time to put your scripts in but first you need to configure your config notecard.
So first of all, put your 'Config' notecard in the main prim (Root) and open it,
you will see all the parameters that can be configured for the door.
We will focus on the two first now:
DoorPartName:door
ButtonPartName:button
These two defines the name of the object parts the script will be looking for as moving parts and as triggers.
Make sure you write here the same name you wrote for your objects earlier.
Once you've done and saved your changes, you can put your "Door CORE" script next to the notecard.

Root content after putting the core script and after notecard load.
The script will then start loading the notecard and looking for the prims.
Then because its your first 'run' the script will go into Setup mode.
Each moving part with no configuration set will start to glow and ask for the "BEACON" script,
For this part you need to edit your object and enable "Edit linked parts" select the glowing object and put in it the beacon script.

Here you can see the 'Edit Linked' button active in the building window

Content of the moving prim part
Once done, the main script will ask you to put that part at the position, rotation and size as it was in the CLOSED state of the door, when done putting it in place, click the part.
The script will now ask for the same but as the OPEN state of your part, once again, when you finished moving it click it.
You'll be done with that part.
The main script will ask to do the same steps for each and every moving parts he has found.
In the end, when all pieces has been configured the main script will reset and remove all beacon scripts.
>To slower or make faster the door animation you can change the param :
DoorSteps
>To change the sounds check all 'Sounds' lines and use only Sounds UUID (keys)
>To make your door automatically close after opening you can use :
AutoCloseTimer:
(here put in seconds) 0 is
disabledHere is the detail and explained lines of the Config notecard for advanced configuration.
ActivationKey:
< This
line is only for BUILDER edition, to activate the script with your
activation key.
< This is where you
write the object parts name that will move
DoorPartName:door
< This is where you
write your button parts name
ButtonPartName:button
< Number or fractions
that are done for the animation (bigger is slower)
DoorSteps:25
< Seconds that are
waited between each fractions (lower is faster)
DoorSleep:0.05
< Sentence said when
keycard access is granted
Accepted Sentence:Access Granted
< Sound for same above
Accepted Sound:
< Sentence said when
access is denied
Rejected Sentence:Access Denied
< Sound for above
Rejected Sound:
< Same from above but in
case of no response by the keycard
No Response Sentence:
< Same as above
No Responce Sound:
< Sound to play when you
touch the buttons
Touch Sound:
< Sound to play when the
door opens
Open Door Sound:fad33df5-701d-96f0-e96e-06f467773b73
< Sound to play when the
door closes
Close Door Sound:fad33df5-701d-96f0-e96e-06f467773b73
< Sound to play when the
door is locked by Code9 or Quarantine Code
Locked Door Sound:
< Volume settings for
your sound. Cannot be set to 0.0 to mute, write at least 0.05
Volume:1.0
< Make the door say or
not the sentences above
Strings:No
< Developper option,
likely useless for you
Debug:No
< Time in
second before closing automaticly the door, 0 to disable it.
AutoCloseTimer:0
< Enable support for Vk
Labs API
Power & Quarantine Reactive:Yes
< Enable support for OS
Labs Code9
Code 9 Reactive:Yes
Code9 End
Open:Yes
< Automaticly close the
door in case of Code 9
Avatar
Collision Open:Yes
< Opens the
door if an avatar collides with the whole object (no exception)
< You can
write here a list of avatar name seperated by commas to only allow them
to use the door.
Person List:
< This
function is reserved for the use of Keycard, you have to write group
UUID seperated by commas, only avatars wearing the keycards wit hthe
right group tag will be able to use the door
Group Keys:public
< Allows a
keycard user to unlock a door in case of a Code9 or Quarantine lock
down.
Keycard Unlock:No
Keycard will have
different levels of access, so you can have different doors level in
your build
DoorLvL:0 <
Set this to a
diffenrent number to use an external trigger (button) to control the
door. Script API below.
ExtraChannel:0 <
This simple API will allow script creator to add special
effects when the door is working.
If you don't know
what an API is or basic LSL coding, please don't mind
this section.
Here is the script exemple to use the API:
link_message(integer link,integer num,string str,key id)
{
if(num==-804050)
{
if(str=="open_start")
{
//doors start to open
}
if(str=="open_end")
{
//door finished to open
}
if(str=="close_start")
{
}
if(str=="close_end")
{
}
}
}
These messages are sent to the whole link set
As you can see you have multiple messages to use to know the
current state of the CORE script.
If needed we will update the system to add more outgoing messages.
External Control API:
In case you write something in your notecard line
ExtraChannel:
you will be able to create a
button not linked from your door.
To activate the door you just need to send the user key.
Exemple : llSay(external
channel you choose,"10926a74-d8a9-4dcd-946b-c9bc0e7772a1");
Exemple in a script, in touch_start() envent:: llSay(external
channel you choose,(string)llDetectedKey(0));
The script will then respond on the same channel in a shout, "Opened" or "Closed" to let you know its status.
Screenshots of creations using the script: