-
Notifications
You must be signed in to change notification settings - Fork 309
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fed bank need some rework #690
Comments
Haha. I don't think I've ever seen a defuse before. Your suggestion is correct - and checking chargeplaced again after the loop to void further actions 👍 |
Aside from our test I've only seen it once on a server which does not have one of the common rules in place that a fed bank heist has to be announced at least 1h before it starts and that there has to be some equal number of players on both sides. It was just a few rebels managed to successfully break through the gate and the door and already planted the bomb when there were overwhelmed but so many cops at once they just didn't knew who to fire back to first. Anyway, would it be enough just to add the second check if the charge got defused? |
Fixes AsYetUntitled#690 by checking whether the bomb gets defused each frame
* blastingChargeFix Fixes #690 by checking whether the bomb gets defused each frame * Adds ! to condition * Configurable time * Improved for loop * fix _timer ctrlSetText * OCD * eradicate horrific hibernation * Location gathering - beware of privacy laws * I did an oopsie * Include macros * Update information and slight format changes Co-authored-by: DomT602 <32492434+DomT602@users.noreply.github.com>
branch: master
commit: 86f766e
Sorry for not follow issue template this time, but it's to follow for this topic.
So I continued testing with my friends and we tested robbing the bank (I set required cops to 1 for testing). As I also wanted to test the bomb defusal one of us planted the bomb, I defused it, and the bomb was replanted. While the timer still had about 2m to go suddenly the explosion triggered and the safe was opened.
After digging through the involved files I suspect this to be the issue:
File: life_server/Functions/Systems/fn_handleBlastingCharge.sqf
The issue is this:
The timer gets started when the first bomb is planted. It ticks down for the full 5m no matter what else happen on the server. After the 5m is done then it's checked again if in that very moment any bomb is planted, no matter if it's the same or another as the original was defused. If at least some bomb is planted when the first timer hits 0 the explosion is triggered, any other bomb is "disarmed" (so their timers just run out without anything else happening) and the vault is opened.
We didn't tested it, but I suspect that with good timing and a bit of the help of at least one of the cops the bank maybe can be looted twice within that 5m timer interval; although it would require some precise timing and planing. Maybe subject for another test.
How can this be fixed: I'm not sure how well the ArmA3 engine can be manipulated while waiting for something to happen in a not-so-resource-impacting-style, but if possible the timer should be somehow "aborted" when the bomb is defused. Maybe extending the condition to something like this:
waitUntil{(round(_time - time) < 1)||(fed_bank getVariable["chargeplaced",false])};
The text was updated successfully, but these errors were encountered: