GreuhZbug / greuh_liberation.Altis

Liberation for Arma 3
https://trello.com/b/FfUXrHn1/liberation-dev
MIT License
43 stars 40 forks source link

HALO jump and permissions #30

Closed serialtasted closed 9 years ago

serialtasted commented 9 years ago

Hi, you have a problem with your HALO jump and the air vehicle permission. In the vehicle_permission.sqf file you should change it to:

if ( (vehicle player ) isKindOf "Air" && ( driver (vehicle player ) == player || (vehicle player ) turretUnit [0] == player ) && !((vehicle player ) isKindOf "ParachuteBase") ) then {

Plus, it fixes players being kicked of the turret position when they don't have permission to use Air vehicles. It can make players being killed in middle air when they try to move to a turret. The script now only looks for the pilot and copilot positions.

PS: I have a heavly modified version of your mission, made to be compatible with ACE. I have been following the development of this mission and updating my modified version every time you commit something. That's why I detected the error. Keep up the excelent work! I'm in love with this mission.

GreuhZbug commented 9 years ago

Haha good catch, however I'll make a different correction. The goal of the permissions is to prevent random people who join public servers from griefing, and I really don't think giving free access to any vehicle turret whatsoever is a good idea. If you trust a person with a gunship turret then you might as well give them permission to use all the seats. So to correct both the HALO issue and people being kicked from turrets in flight, I'd rather add a condition so that permissions are only checked when the vehicle is touching the ground.

GreuhZbug commented 9 years ago

And I still have to make an exception for parachutes so that the permissions message doesn't pop up uselessly upon landing. The other check will still fix the issue of people being kicked out of flying choppers.

serialtasted commented 9 years ago

But that's going to create an exploit. People can still use the turret when the heli is up in the air. What you should do is move the player back to a passenger position. Even when the heli is on the ground, to simplify the process. (Add me on steam pls, same nickname as it is here)

serialtasted commented 9 years ago

Or, lock the turret usage. People can still go to the turret position, but can't fire it

GreuhZbug commented 9 years ago

The only point of the permissions system is to prevent randoms from operating vehicles on their own. If someone already has permission to fly an helicopter and someone else in the back switches to a side turret I don't see that as a problem. Forcibly moving people in vehicles can cause issues depending on the locality of the vehicle and possible desync, which is why the feature of spawning inside the huron has been removed a long time ago.

As the original issue is resolved (people being kicked out of their parachute), I'm closing this