sethduda / AdvancedUrbanRappelling

Advanced Urban Rappelling (Arma 3)
https://forums.bistudio.com/topic/192925-advanced-urban-rappelling
23 stars 17 forks source link

Advanced Urban Rappelling

Created by Duda w/ custom animations by Mcruppert

Features:

Directions:

Walk to any edge that's 4-5m high. Using your action menu, either rappel yourself or your AI units.

Once rappelling, here's what you can do:

There are a few ways to rappel AI units:

Installation:

  1. Subscribe via steam: https://steamcommunity.com/sharedfiles/filedetails/?id=730310357 or download latest release from https://github.com/sethduda/AdvancedUrbanRappelling/releases
  2. If installing this on a server, add the addon to the -serverMod command line option. It's required on the server side and is optional for clients. It's recommended to put the addon's key in your server's key directory so clients can optionally enable the addon. If clients have the addon enabled, they'll be able to shoot while rappelling and will have custom animations and sounds.

Notes for Mission Makers:

If you want to script AI to rappel, you can use the AUR_Rappel_Unit function. Place the unit next to the edge they should rappel.

Then, via scripting (e.g. using trigger activation) call this function:

[UNIT] spawn AUR_Rappel_Unit;

Params: UNIT = The unit that should rappel

The unit will then rappel down the edge.

If you want more control, you can use the optional parameters:

[UNIT, ROPE_LENGTH, ANCHOR_POSITION, RAPPEL_DIRECTION] spawn AUR_Rappel_Unit;

Params:

ROPE_LENGTH = Rope length in meters (Optional, defaults to 1.3x height above ground) ANCHOR_POSITION = Position ASL where the rope should attach (Defaults to edge next to unit if not specified) RAPPEL_DIRECTION = Unit vector direction that the unit should jump off when starting rappelling (e.g away from the building). If the unit is facing the direction they should jump off, you can get this via the command vectorDir UNIT.

Not working on your server?

Make sure you have the mod listed in the -mod or -serverMod command line option. Only -serverMod is required for this addon. If still not working, check your server log to make sure the addon is found.

FAQ

This addon is only required on the server - is it going to slow down my server?

No - while this addon is server-side only, it installs itself on all clients without them downloading the addon. Most of the time, the rappelling code actually runs client-side, even though you installed the addon only on the server. Magic!

Battleye kicks me when I try to do xyz. What do I do?

You need to configure Battleye rules on your server. Below are the files you need to configure:

setvariable.txt

Add the following exclusions to the end of all lines starting with 4, 5, 6, or 7 if they contain "" (meaning applies to all values):

!"AUR_"

setvariableval.txt

If you have any lines starting with 4, 5, 6, or 7 and they contain "" (meaning applies to all values) it's not going to work. Either remove the line or explicitly define the values you want to kick. Since the values of the variables above can vary, I don't know of a good way to define an exclusion rule.

Also, it's possible there are other battleye filter files that can cause issues. If you check your battleye logs you can figure out which file is causing a problem.

The rappelling action appears while in a heli, but do nothing when I select them. How do I fix that?

Most likely your server is setup with a white list for remote executions. In order to fix this, you need to modify your mission's description.ext file, adding the following CfgRemoteExec rules. If using InfiStar you should edit your cfgremoteexec.hpp instead of the description.ext file. See https://community.bistudio.com/wiki/Arma_3_Remote_Execution for more details on CfgRemoteExec.

class CfgRemoteExec
{
    class Functions
    {
        class AUR_Hint { allowedTargets=1; }; 
        class AUR_Hide_Object_Global { allowedTargets=2; }; 
        class AUR_Enable_Rappelling_Animation_Global { allowedTargets=2; }; 
        class AUR_Play_Rappelling_Sounds_Global { allowedTargets=2; }; 
    };
};

Issues & Feature Requests

https://github.com/sethduda/AdvancedUrbanRappelling/issues

If anyone wants to help fix any of these, please let me know. You can fork the repo and create a pull request.

Special Thanks for Testing & Support:


The MIT License (MIT)

Copyright (c) 2016 Seth Duda

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.