Jump to content
Heeeere's johnny!

Automated Doors - v2.5.a2 - doors open and close automatically

Recommended Posts

Automated Doors - v2.5.a2 (ArmA 2 version)



Download v2.5.a2 from Armaholic

This is a backport of Automated Doors for ArmA 3 to ArmA 2.

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.


  • 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

*) Actions will be available again, if you rejoin the server (MP) or restart the mission (SP) respectively

Supported maps:

  • Altis/Stratis (combined in one file)
  • Chernarus
  • Takistan
  • Zargabad
  • Utes

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.

Download the script here (Armaholic, same link as above). You need at least the following files:

  • automatedDoors_a2.sqf or automatedDoors_a2oa.sqf
  • removeAllActions.sqf
  • setVariable.sqf
  • one or more file(s) starting with "doors..."

Execute one of the following lines depending on which file you're using:

execVM "automatedDoors_a2.sqf"
execVM "automatedDoors_a2oa.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:

[["Chernarus", "Takistan", "Zargabad"]] execVM "automatedDoors_a2oa.sqf"

If you don't do so, the script will automatically take into account all maps.

Execute the above line once upon mission start - that's it.

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
Note that there are two files, one compatible with ArmA 2 v1.06 or later and another one compatible with ArmA 2:OA v1.63 or later.
The ArmA 2 version also works with OA, but not the other way around.
Be aware that the version for OA is more efficient (faster) than the one for ArmA 2, so I'd recommend to use the version for the "normal" ArmA 2 only if necessary.

"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.
Changelogs will be posted in the original thread.

Have a nice Play!

Share this post

Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in

Sign In Now