Turns out I had messed up in the previous files I had uploaded, so I uploaded a new version that fixes what I messed up, but you'll have to delete the old files to use it, sorry. The mod now has autoupdate, at least.
One of the changes made in update 240 was that if voicelines from Bain/contractors/escape drivers (internally just called "dialogue") try to play while another voiceline is currently playing, they will (usually) play after the currently playing voiceline is finished and will play in the order they were executed, while previously those lines just didn't play at all.
This is a good change in some cases, as it can prevent information from being lost and allows for hearing voicelines you otherwise would never have heard. However, there are some heists where the logic was set up in a way that relied on how the dialogue system previously worked to either cover up unnecessary voicelines or to avoid spamming voicelines at you due to sloppy programming.
I have fixed most cases in the game that I know of by messing with some of the dialogue scripting in the heists, it will not alter the actual gameplay of any of the affected heists at all. I have gone through every heist to find these occurrences, but there are a few cases that can't really be fixed due to how the logic is set up, there are some heists I can't load in the BeardLib editor and thus can't check, and it's possible that I've just missed some since I'm actually not the most observant/the best at remembering things. (This was just going to be a fix for Firestarter, but I decided to fix a few other cases I noticed, and then more...)
The scope of this mod is not "disables all annoying voicelines like the objective reminders", since that purpose is fulfilled by the "mute contractor voices" button, this is just to remove voicelines that shouldn't be there normally or are played more than they were supposed to be.
Full list of heists that have been affected:
Spoiler!
- Firestarter day 1: A piece of dialogue logic is set to be executed when another bit of logic tells any enemy spawner to activate. That bit of logic activates multiple enemy spawners at once, so the dialogue gets executed multiple times. So I disabled the dialogue since it doesn't tell you anything that you can't figure out yourself.
- Firestarter day 3 (and Bank Heist): Prevented the tear gas voiceline from being played more than once.
- Framing day 3: Disabled some unnecessary dialogue related to the stealth objectives since you will inevitably be spammed with voicelines. I also fixed the logic that was supposed to disable the dialogue about being unable to access the gold vault instead playing it anyway.
- Rats day 3: Bain no longer partakes in an ungodly amount of yapping while bagging & securing the money.
- Ukrainian Job: The van driver's voicelines being played twice in the beginning was deliberate? Why?
- Watchdogs day 1: Since there happened to be a lot of unused logic sitting around, I managed to reduce voiceline spam from securing multiple bags at once and made it so the game will randomly pick one of the driver's two dialogues for securing all bags instead of executing both. I also tweaked the helicopter reminder loop to make more sense.
- Train Heist: Reduced how much Bain talks when the alarm goes off, the drill is dropped off, and loot is secured.
- GO Bank: Forced the dialogue about the van leaving in loud to only play after the dialogue about the alarm going off.
- Election Day day 1: In loud (lol who even does this loud), when the power is turned off/on, Bain's dialogue where he points that out is executed at the same time as the objective reminder dialogue. I just disabled the reminders since they use the same voicelines and they don't really make sense as reminders.
- Swing Vote: Fixed the dialogue about the camera operator being executed twice if he was killed, and disabled redundant dialogue tied to the stealth escape.
- Big Bank: Disabled dialogue left over from an earlier version where setting up the thermite and igniting it were done separately.
- Hotline Miami day 1: Reworked the logic tied to the sniper warning dialogue so that it only executes once when the game decides to spawn snipers, instead of executing for each sniper spawned. I also fixed the reinforcement dialogue from being played twice in a row.
- Hox Breakout day 2: Prevented the "sent another request" line from playing for the first request sent to the director's computer, as well as if you approve the final request before it starts.
- The Diamond: Disabled redundant dialogue tied to the escape helicopter leaving in loud.
- Dockyard: Disabled some dialogue tied to opening containers to reduce voiceline spam, some redundant dialogue tied to the escapes, and fixed one of the helicopter escape voicelines being played in loud regardless of which escape you chose.
- Forest: Prevented the "wrong wagon" dialogue from playing immediately after starting the heist.
- Hox Revenge: Disabled redundant dialogue tied to the alarm countdown starting and prevented the loud dialogue for the escape from playing in stealth.
- Meltdown: The dialogue logic for Bain's reminders to find crowbars was being executed twice, which resulted in Bain talking more than he should've been, which I fixed. I also fixed the dialogue tied to securing the objective loot to slightly reduce voiceline spam.
- Alesso Heist: Disabled some dialogue related to finding closets & C4 since the logic was set up in a way that relied entirely on the old dialogue system.
- Golden Grin: Multiple changes.
** Forced the dialogue about needing to light a flare to only play after the dialogue tied to finding the vault's weak spot.
** The dialogue logic for connecting the BFD to power sockets, for some reason, was both in the logic in the heist and the logic specifically for the BFD. I disabled the former.
** Picking up the USB will now disable some dialogue that would play after faxing the blueprints to reduce voiceline spam.
** Disabled the "tie him down" voiceline for the keycard civ because it was actually being played as a "sound", which was causing it to overlap with the dialogue about needing to pick up the keycard.
** Disabled the "mask up" dialogue played when you enter the security room in stealth because it doesn't make sense.
** Prevented the loud dialogue for entering the vault, taking the objective loot, and the escape becoming available from playing in stealth. - First World Bank: For some reason, the dialogue logic that plays when you enter the vault is executed twice. I fixed that.
- Slaughterhouse: Disabled an inexplicable area trigger that replayed one of Bain's intro dialogues, prevented the dialogue for shooting the wires from playing if the player already did that, and increased the delay between the objective to lift the gold container and the reminder loop for it.
- Beneath the Mountain: Disabled unnecessary dialogue that was being executed after taking loot from one of the vaults.
- Goat Sim day 1: Bain's voicelines that are supposed to play when you move away from & back to an objective for getting a goat (like the burning apartment) were being played immediately, so I just disabled them.
- Counterfeit: Reworked the reminder loop for opening the water valve so that the dialogue is not executed immediately after the valve is closed.
- Undercover: Multiple changes.
** Disabled the megaphone guy's voicelines that would play after loud starts since it's sort of just a long string of random voicelines.
** Disabled redundant dialogue tied to the saw finishing.
** If you hit the Taxman three times in the front or three times in the back, dialogue for Bain would be executed, but if you hit the Taxman three times in general, he gets knocked out and Bain has dialogue for that as well. I changed the logic for the former so that it executes on the first hit to the front/back since that's how the logic was set up in the original.
** Bain's dialogue where he says, for example, "we are in the jar" was being executed every time the Taxman gave a password. I reworked the dialogue logic so that is instead only executed when the first hack starts, and the dialogue that was being played then ("past the ASIM") instead executes 20 seconds later to make it a little bit more like the original.
** Disabled the dialogue tied to resuming the hack after it was interrupted since it was being executed twice. - Murky Station: Disabled the dialogue executed when you pick up one of the EMP parts so Bain just tells you where the escape vehicle will be.
- Biker Heist day 1: For the objective where you have to bring the two bike parts to the mechanic, Bain would say "that's two" when securing the first part. I fixed this.
- Panic Room: Disabled some unnecessary dialogue related to C4 and the escape.
- Scarface Mansion: Prevented the resuming-the-laptop-hack dialogue from playing twice, prevented the dialogue warning about pagers from playing in loud, and disabled some redundant dialogue tied to the loud objectives.
- Diamond Heist: The dialogue logic tied to the escapes was very sloppily made. My fix was to just prune most of it.
Disclaimer: I don't actually know how to code in Lua I only know a little bit of Lua, I just stole the code base from this mod and figured out how to bodge together this mod from there. I don't know and don't care if what this mod does could be done more efficiently.