Automated Doors - v2.5
Download v2.5 from Armaholic
What?
For each player on the map, this script creates and removes triggers on nearby buildings which open the door if a player intends to walk through it and closes it again, when he walks away. This script is configurable and customizable on both server and client side.
Features:
all doors open and close automatically
usable in Singleplayer (client side) or in Multiplayer (server side only)
support for dynamic locations where this script should only work
support for side specific locations, where this script only works for players of the respective side
actions for the following features:
enable/disable automatically closing doors
enable/disable "Automated Doors" completely
irreversibly* remove all actions related to "Automated Doors"
globally force doors to stay open, no matter what the player's actions say
can be terminated and restarted without trigger-leftovers or action-leftovers
minimized server load due to need-based dynamic object management
available as script and as addon
*) Actions will be available again, if you rejoin the server (MP) or restart ArmA (SP) respectively
Supported maps:
Altis/Stratis (combined in one file)
Chernarus
Takistan
Zargabad
Utes
Why?
At some point, I got annoyed of having to walk really close to a door and sometimes even having to scroll, if my default action is something different, to get the right action to finally open it. Maybe there's some people out there feeling similarly.
How?
Download the script here. (Armaholic, same link as above)
execVM "automatedDoors.sqf"
If you use Automated Doors on a map which is not listed above, but has buildings from one or more of these maps or if you want to override the script's default behavior, paste the respective map name(s) as parameter into the script like this:
[["Altis", "Chernarus", "Takistan"]] execVM "automatedDoors.sqf"
If you don't do so, the script will automatically take into account all maps.
Singleplayer:
Using the script: Execute the above line once upon mission start - that's it.
Using the addon: Start ArmA 3 with startup parameter -mod=@automatedDoors - that's it.
Multiplayer:
Execute this script server side once upon mission start. Client side execution is prevented by "isServer" check.
After joining a mission running this script, it might take a few seconds until it actually works for you as new player, because the sever runs the "scan loop" regularly, not taking into account JIP or just spawned players.
Further Information
"Automated Doors" has two optional parameters:
maps -> (optional, default: "all") defines the buildings to be taken into account by this script
-> e.g. ["altis", "chernarus"] means, all buildings from Altis and Chernarus will be taken into account
doorsStayOpen -> (optional, default: false) global definition of door closing behavior
- if true, doors will have to be closed manually, player action "Don't keep doors open" has no effect
- if false, doors will close automatically, player action "Keep doors open" has an effect
You can easily customize important values, like the size of the area of the door triggers, the time between each scan for surrounding buildings or the area to scan on each loop. Do that by changing the defines at the beginning of the file (after the comment block).
Define locations:
If you want this script to only work in certain areas, create locations of type "Name" and set their name with the prefix "doors". This script will check on each scan loop if such locations exist. If so, it will only manage these areas. If all "doors" locations are deleted, this script will handle the whole map again.
Side specific locations:
If you create a location as described above and setVariable ["locationSide", any side here] to it, the doors inside that location automatically open and close only for players of that side.
Have a nice Play!
Changelogs: