Bug #10581

Intermittent bug: HALO Parachute seems to be deleted at 50-60m and you die.

Added by ViperMaul almost 5 years ago. Updated over 4 years ago.

Status:Closed Start date:05/09/2010
Priority:Immediate Due date:
Assignee:HomerJohnston % Done:

100%

Category:Script
Target version:1.2
Component:ace_sys_eject Affected Version:
Close Reason:

Description

I was trying to wait for some solid reproduction steps and a good location, however it is too intermittent.
It is almost like the same bug that BIS claims to have fixed in Arma1 that effected both steerable parachutes and motorbikes. However once BIS claimed they fixed it, I never experienced that bug again.

Here in Arma2 / ACE2 I am reading reports of the issue coming back.

Reference: http://www.arma-tow.com/forums/project.php?issueid=110

A couple of quotes:

Your HALO and pull the chute and it opens. So far so good.
But at a height of let's say 60 meters suddenly the chute disappears and you fall to the ground and die.

and

I can confirm this happened today to most of my fireteam at different points using MC5 chutes.
In addition none of us got an option for the reserve chute (which does exists) It occurred even when opening at 60~40.

It should be noted that these comments and experiences where based on ACE build 335.

mission.sqm (2.4 kB) TheBlessedPig, 06/03/2010 17:48

ace_sys_eject.pbo - For Testing Only - ace_sys_eject Revision 51a9329b (2.7 MB) ViperMaul, 06/03/2010 21:24

Associated revisions

Revision 174d2066
Added by Xeno almost 5 years ago

safety height check, probably fixes #10581

Revision ab4eee6a
Added by Xeno almost 5 years ago

smooth parachute steer, get rid of the call function call next function with sleep operations, refs #10581

History

Updated by Nou almost 5 years ago

getPos/getPosATL vs. getPosASL issue?

Updated by Xeno almost 5 years ago

Never experienced it (and I did quite a lot of HALO jumps with the MC5 while playing online last saturday, different locations, over cities, hills, forrest...).

Are you using any other addons beside ACE in ATOW ?
Are there any scripts (mission) running that might cause problems concerning the time limit per frame or probably remove a chute ?

Updated by Sickboy almost 5 years ago

  • Assignee set to HomerJohnston

Updated by ViperMaul almost 5 years ago

Xeno wrote:

Never experienced it (and I did quite a lot of HALO jumps with the MC5 while playing online last saturday, different locations, over cities, hills, forrest...).

Sounds like we should update to latest version of ACE and try again.
We have been using v335
HomerJohnston said some of zGuba fixes may have resolved this. He is not for sure.

Are you using any other addons beside ACE in ATOW ?
Are there any scripts (mission) running that might cause problems concerning the time limit per frame

Yes we are using addons that govern Rally Points, Objective Capture Rules, AutoSpawn Pads, Shacktac HUD.
Had 50+ players in our normal 3 hours sessions each Sunday. Our server FPS is normally 8-10 FPS. But why would FPS delete a parachute, if indeed this is what is happening (parachute being deleted about the same altitude)?

or probably remove a chute ?

We have no mods that would delete or remove a chute. Certainly not approximately the same distance above the ground.

Updated by Xeno almost 5 years ago

ViperMaul wrote:

Had 50+ players in our normal 3 hours sessions each Sunday. Our server FPS is normally 8-10 FPS. But why would FPS delete a parachute, if indeed this is what is happening (parachute being deleted about the same altitude)?

Well, low FPS or script lag can cause troubles sometimes when checking for heights. Saw something similiar this weekend while playing, but it's more about clients.

I hope those 8-10 server FPS are with AI :-)

Updated by Sickboy almost 5 years ago

ViperMaul wrote:

Sounds like we should update to latest version of ACE and try again.
We have been using v335
HomerJohnston said some of zGuba fixes may have resolved this. He is not for sure.

Please don't report problems you have not yet reproduced with the latest version, it makes no sense.

Updated by rocko almost 5 years ago

Never happened to me and I used HALO a lot in the last time ;)

Updated by rocko almost 5 years ago

  • Target version set to Planned (Needs Contributors)

Updated by PeaceDoctor almost 5 years ago

I think here again like the "multiple headshots" it happens to me only in MP. So I this is more on the servers' fault than the mod's I guess.

I experienced this "bug": it varied from a server to another. Some did show that bug randomly, some only if I "wiggle" the chute too much and some none at all. With the same ACE mod version.

I think before posting try the bugs both in SP and MP. Most real bugs happen both online and offline.

Updated by ViperMaul almost 5 years ago

We updated to v352 and it happened again.
I would guess typically it happens during these conditions:
  • 20+ players
  • Server FPS less than 20
  • More than 2 or 3 players in the air doing a Halo at the same time.

Interesting as I write this. It makes me wonder if we might have some missing private variable declarations going on here.

Updated by Xeno almost 5 years ago

Somebody should take a look at the scripts.

I don't like that call thingie to block the script execution and some functions should get moved outside parachute_steer.

Basically it's fnc_init_chute_steer which calls:
[_vehicle, _para_unit] call FUNC (parachute_steer);

then in parachute_steer:
call FUNC (ChuteMain);

and in ChuteMain:
[] call FUNC (ChuteSteer);

which has a loop with a sleep.

init_chute_steer gets started from the parachute EH:

class EventHandlers {
    Init = "_this execVM 'x\ace\addons\sys_eject\fnc_init_chuteSteer.sqf'";
}; 

It's not a locality problem as there is a locality check done in init_chuteSteer.

Though I might be completely wrong here.

Updated by ViperMaul almost 5 years ago

I agree with you Xeno. Seems to be very well written in that regard of locality.
Hmm...

Look at this...

Line 234 of fnc_parachute_steer.sqf

// if player is low, end control and goto chuteDelete
        if ((((position (_chute) select 2) < 4) AND ((_dT/50 * _spd) < (_dZ - 0.05))) OR ((position (_chute) select 2) < 1)) exitWith {_chute setVelocity [0,0, -1];_jumper setVariable ["ChuteOpen", 3];};
        _OldDam = Damage _jumper;
        _z = (getPosASL _chute select 2);
        _oldPos = (position _chute);
        _t1 = time;
        if (_jumper == player) then {    sleep 0.01; } else { sleep 0.2; };
        _dZ = (getPosASL _chute select 2) - _z;
        _dPAct = (position _chute) distance _oldPos;
        _dPTheo = ([_Fwd*_HdgX,_Fwd*_HdgY,_Descent] distance [0,0,0]) * _dT/50;

        _diffPos = (_diffPos/2 + (_dPTheo - _dPAct)/2);

        _dT = 50*(time - _t1);

        _NewDam = Damage _jumper;

Just like Nou suggested.

getPos/getPosATL vs. getPosASL issue?

this is worth investigating and testing.
This code for determining when to delete the chute seems to be based on ASL and it would seem it should be based on ATL. ATL is a faster function anyway right? Or is there something missing terribly here?

Some good debug and testing might be in good order right?

Updated by HomerJohnston almost 5 years ago

Does anyone know when this issue was first noticed?

the getposASL snippet mentioned by Viper is used to detect if the player is hitting the ground. What happens: when landing on steep slopes, the "contact" height is different than on flat land. My workaround: if player's altitude is lower than 4m, check if their actual positional change is less than (velocity*time). This shouldn't be our culprit, since it only occurs if the chute is < 4m above ground. Although if anyone has knowledge of getpos functions being 1000% inaccurate, I would love to know about it! :o

without fully remembering how it works, I would say the script used on the chute's init (fnc_init_chute_steer.sqf) could be a suspect. Viper, do you have any idea if this might have been occurring exactly (approximately) 5 seconds after pulling the ripcord?

Updated by ViperMaul almost 5 years ago

HomerJohnston wrote:

Does anyone know when this issue was first noticed?

the getposASL snippet mentioned by Viper is used to detect if the player is hitting the ground. What happens: when landing on steep slopes, the "contact" height is different than on flat land. My workaround: if player's altitude is lower than 4m, check if their actual positional change is less than (velocity*time). This shouldn't be our culprit, since it only occurs if the chute is < 4m above ground. Although if anyone has knowledge of getpos functions being 1000% inaccurate, I would love to know about it! :o

without fully remembering how it works, I would say the script used on the chute's init (fnc_init_chute_steer.sqf) could be a suspect. Viper, do you have any idea if this might have been occurring exactly (approximately) 5 seconds after pulling the ripcord?

It is worth looking at again. I did put a short amount of thought about that section of the code last week. But moved on. I do know that players are trying to pull the ripcord at the last minute stating, and I quote "So I don't give it enough time in the air for the bug to happen."

I ask our players to consider this and I will look at your code again and figure out ways to test it.

I would like to run a special sys_eject pbo that will spit out debug in the RPT file any time the Parachute is deleted with a readout of the conditional param values and the heights etc. That way I can have each and every player send in their client RPT files and we can have a look.

When did this start happening? LOL. It is hard enough to get them to report bugs in the first place. They complain but they did not report 4 - 6 weeks ago. However, they are doing a great job of reporting now. The reports have been going on for at least 5 weeks now but could be longer. That would be about v335.

Updated by ViperMaul almost 5 years ago

The bug was caught on tape!
Advance to Time Index 1:07 and play.
At Time Index 1:13 you will see the victim lose his parachute.
I found out the players name and I can get more info from him if needed.

Ukrainian HALO Jump from Battleday #4 ;)

http://www.youtube.com/watch?v=KCkpO_8AmhU
Watch it in HD!

Updated by Darkhorse almost 5 years ago

It's actually at 1:13 when the chute goes "bye bye". ouch, had to hurt. It happens to me & the guys in my group alot. Originally thought it was local to Duala, but it has happened on Chernarus, Panthera, and others.

Updated by HomerJohnston almost 5 years ago

Ouch. Darkhorse, can you confirm if it seems to happen 5 seconds after opening your chute or is it completely random? I'm going to just make a couple of changes to suspect pieces of code early next week, and we'll have to solve it by trial and error at this point...

Updated by rocko almost 5 years ago

  • Priority changed from Normal to Urgent

Updated by Xeno almost 5 years ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

Updated by Xeno almost 5 years ago

  • Category set to Script
  • Status changed from Resolved to Feedback
  • Priority changed from Urgent to Normal
  • Target version changed from Planned (Needs Contributors) to 1.2
  • % Done changed from 100 to 50
  • Component set to ace_sys_eject

Beside optimizing some parts of the scripts yesterday I have added some kind of safety check.

If the position command returns a wrong height value the steer script won't bail out. Hopefully fixes it. Please test.

Updated by ViperMaul almost 5 years ago

Initial tests are good so far.
But have to wait for full server test with 40+ players for 3 hour session.
Testing it this Sunday.

Updated by Mercenary2112 almost 5 years ago

Honestly I think this "bug" should be kept but lowered to 21 meters. Quite frankly a parachute needs at a very minimum 21-22 meters to open and inflate properly. Opening any lower then 50, it might take too long. Very possible to be killed or severely injured, on the landing.

Updated by Xeno almost 5 years ago

?

Are we talking about the same bug ?

The chute in the video simply disappeared while he was in the chute.

Updated by ViperMaul almost 5 years ago

Mercenary2112 wrote:

Honestly I think this "bug" should be kept but lowered to 21 meters. Quite frankly a parachute needs at a very minimum 21-22 meters to open and inflate properly. Opening any lower then 50, it might take too long. Very possible to be killed or severely injured, on the landing.

Sounds like you meant to reply to this bug report instead
http://dev-heaven.net/issues/10761

But if you actually meant this bug report...
I might be able to see where you are going with this. However, there is already a feature written in the code where the could be a first parachute failure. And when it happens you are given a chance to pull again for your second chute. So when your chute fails you are still have a chute pack on your back and have a chance to do something about your failed chute.

The thing about this bug, is it is intermittent. We don't have control over the bug to say, hey bug, only happen randomly at X altitude. To do what you ask we would have to fix the bug and then add more code per your design. Assuming we agree with your design suggestion. Which I think there is enough realistic failure opportunity already built in by developer.

Updated by Xeno almost 5 years ago

1 day left...

Otherwise move to 1.5.0

Updated by rocko almost 5 years ago

Wheres the whip?

Updated by ViperMaul almost 5 years ago

40+ will be testing tomorrow Sunday for 3 hours.

Updated by rocko almost 5 years ago

Results?

Updated by ViperMaul almost 5 years ago

I was away after the game ended so I couldn't pull immediate feedback.
Still waiting on more responses.
One person responded so far saying he only saw it once but believes it wasn't a bug.
Give me another 6 hours.

Updated by ViperMaul almost 5 years ago

There is not enough information to prove anything.
I think the best answer was this, "didnt survive any jumps to tell if this happened".

Updated by rocko almost 5 years ago

  • Priority changed from Normal to Immediate

Updated by Hitman almost 5 years ago

Quote from AtoW bug report:

"I was lawn-darting on a regular basis. As soon as I tried to steer the chute, the chute would disappear. If I left it alone and didn't steer, then the chute wouldn't disappear.

I am not sure if it was by design and it was related to me trying to steer while still descending too fast."

Updated by Xeno almost 5 years ago

Chutes do not disappear when you simply steer them.

If possible I need the mission and, if used, the names and versions of other custom addons.

I've made a testmission where one script was running that constantly checked nearest objects around the player without a sleep. Allthough there was a lot of stuttering during parachute steer (because of the script mentioned before) I landed safely (tested it on a dedicated server, sys eject version only available in repository)

Updated by TheBlessedPig almost 5 years ago

This happened to me just minutes ago on the Bier AIG server, mission is Coop Domination East Revive 2.10, latest ACE version used. I used an MC-5 chute, started a HALO jump and suddenly at altitude 100m the chute disappeared.

Updated by Xeno almost 5 years ago

TheBlessedPig wrote:

This happened to me just minutes ago on the Bier AIG server, mission is Coop Domination East Revive 2.10, latest ACE version used. I used an MC-5 chute, started a HALO jump and suddenly at altitude 100m the chute disappeared.

Did you use any addons beside ACE ? Did you play with the beta patch or vanilla 1.05 ?

Updated by rocko almost 5 years ago

Jumped 10 times today, not a single parachute lost.
No other addons but ACE.

Updated by Sickboy almost 5 years ago

If we can get more information from people especially which mod combinations, and if it happens when they resort to the minimal addons, we can hopefully narrow the issue down and solve it.
Tomorrow is 1.2.0 RC0, and then soon after hopefully the stable release.

Updated by TheBlessedPig almost 5 years ago

Xeno wrote:

Did you use any addons beside ACE ? Did you play with the beta patch or vanilla 1.05 ?

no addons, nor mods besides ACE, not even server side, 1.05 patch, no beta used...

Updated by Xeno almost 5 years ago

Nice nice, if I were just able to reproduce it. Never had the problem no matter how often I jumped.

Updated by TheBlessedPig almost 5 years ago

Just had the same issue on the 15th MEU server, mission is their own modified version of Domination, but server is using zeus ai skills and R3F artillery and logistics scripts and some object addons in addition.

Updated by ss9 almost 5 years ago

I can confirm this bug. Seemed to start happening after the last build or two. Rare, but sometimes I'll just not be in the chute anymore. Seems like it might also be based on the Dom edit.

Updated by ViperMaul almost 5 years ago

TheBlessedPig wrote:

This happened to me just minutes ago on the Bier AIG server, mission is Coop Domination East Revive 2.10, latest ACE version used. I used an MC-5 chute, started a HALO jump and suddenly at altitude 100m the chute disappeared.

Question for TheBlessedPig,ss9, Darkhorse,PeaceDoctor, and anyone else who experienced this.

I notice this most when the following conditions happen:
  • 20+ players
  • Server FPS less than 20
  • More than 2 or 3 players in the air doing a Halo at the same time.

My question for you is, since this does not happen every single jump can you tell us if any of these conditions where similar to your experience?

XENO, HomerJohnston: I think we need to produce a version of ace_sys_eject that has some RPT diag_log msgs that reports only when significant events occur like

  • Chute Deployed at X altitude for Player Name at position coordinates
  • Chute Failure at X altitude for Player Name at position coordinates
  • Chute Deleted at X altitude for Player Name at position coordinates

That way we can get some useful information by requesting RPT logs.

TheBlessedPig, we are looking forward to your reply.

Updated by TheBlessedPig almost 5 years ago

I cannot agree with you ViperMaul, sorry, on the 15th MEU server there were 3 people including me, and none of the other two were doing the jump. I can't see the server FPS so sorry I cannot confirm nor negate that. I experienced this bug when playing Domination and using the Flag to select a jump location.

edit: Maybe found reason: I made a simple jump mission in the editor, you have a MC5 Chute and jump on Utes from a C-130J, no scripts, just waypoints for the C-130, that's all. Now when you open your chute at a safe altitude (>200m) nothing happens, but if you get bellow the above mentioned safe altitude, the chute will delete. I made the jump several times with the same result above mentioned.

I hope I helped...

Updated by ViperMaul almost 5 years ago

TheBlessedPig wrote:

I cannot agree with you ViperMaul, sorry, on the 15th MEU server there were 3 people including me, and none of the other two were doing the jump. I can't see the server FPS so sorry I cannot confirm nor negate that. I experienced this bug when playing Domination and using the Flag to select a jump location.

This is great feedback TheBlessedPig. Thanks.
I am glad you cannot agree. This means we are taken 1 more step to more detailed experiences.

So it seems it can happen with low numbers.
It seems the server side FPS may or may not influence it.
Also this feedback should give us hope that it is easier to reproduce.

TheBlessedPig,
We need your test mission. Please save us the time and attach the exact mission you tested the (<200m) chute deletion bug.

Looking forward to testing the same mission you used. Thanks

Updated by TheBlessedPig almost 5 years ago

This is the mission I tested it on. It's a mission.sqm, so that you can see what I did.

Updated by Jen almost 5 years ago

This happened yesterday twice in a row for two people. The only info I can provide you is that both had the "Error: no unit" bug. Not even sure what causes that or if it is significant, sorry I can't be of more help.

Updated by Xeno almost 5 years ago

I've tested now with rocko on a server with ~40 players. We landed safely each time we tried.

Addons: only ACE

Mission was Dom ACE with Revive.

If players have "Error: no unit" then their ArmA hasn't connected properly which results in many scripts not running correctly (on that client).

You can easily see who has connected properly or not when the player writes in the chat. No group in front of the player name then.

Old BIS MP bug, happens specially for JIP players (and in combination with revive it happens more often).

Updated by ViperMaul almost 5 years ago

Attached is the latest developer version of ace_sys_eject.pbo for testing only.
This release does not have a signature file with it.

TheBlessedPig, please test. Everyone, please test and report back.

Updated by TheBlessedPig almost 5 years ago

Works for me in SP, in the mission I created with the MC-5 Chute.

Updated by ViperMaul almost 5 years ago

So before it didn't work in that mission. Now it does work with the current PBO.
Well that is good to hear.

Updated by TheBlessedPig almost 5 years ago

Just tried multiple runs, it works for me, the chute opens and I land safely. And yes before the new .pbo it didn't work in m mission with the MC-5 Chute. Now it is OK.

Updated by Sickboy almost 5 years ago

Awesome work here guys, thank you all!

Updated by ViperMaul almost 5 years ago

On Sunday, we will also test it in our 40+ session just like Xeno and Rocko did.
But I have no reason to believe that this is not fixed. Great work. Lets continue to report back with good news throughout the week.

Updated by Xeno almost 5 years ago

Rocko and I did not test with a developer version but with the release from last friday.
But like I wrote, we weren't able to reproduce it.

Though the new version (available today) doesn't have the call call call operations anymore.

If it still doesn't work I have one more idea for a fix.
I get more and more the feeling that it is related to ArmA 2 itself (aka MP bug).

Updated by TheBlessedPig almost 5 years ago

Well I was able to reproduce it in SP, if you don't believe me, than sorry...

Updated by Xeno almost 5 years ago

I believe you, the only thing is that I'm not able to reproduce it which doesn't make it easier for me to resolve it :(

Updated by Sickboy almost 5 years ago

It's fixed right? Am I missing something?

TheBlessedPig wrote:

Just tried multiple runs, it works for me, the chute opens and I land safely. And yes before the new .pbo it didn't work in m mission with the MC-5 Chute. Now it is OK.

Updated by TheBlessedPig almost 5 years ago

Well it worked for me, with the .pbo that ViperMaul posted in here...

Updated by Sickboy almost 5 years ago

  • Status changed from Feedback to Resolved
  • % Done changed from 50 to 80

TheBlessedPig wrote:

Well it worked for me, with the .pbo that ViperMaul posted in here...

Good then, that pbo should be in last Friday's update, and in the soon 1.2.0 RC1 and stable.

Updated by Sickboy almost 5 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 80 to 100

Also available in: Atom PDF