Ducking with several buses

At the moment, the game I’m working on uses ducking on sfxs and NPC-dialogue through code, but we want to use compressors and sidechaining in FMOD instead.

They way it’s set up in code is:
Player speaking -> side kick, NPCs and sfx are being ducked
Side kick speaking -> NPCs and sfx are being ducked
NPC’s speaking -> sfx are being ducked

When the main character, the side kick and an NPC are speaking at the same time, sfx are compressed the same amount as when only the player is speaking.
How should I go about setting this up with compressors and sidechains on groups in the mixer?
I don’t want to end up with the sidechains working on top of each other since that might result in NPCs and sfx being way too quiet.

This behavior can be achieved with four group buses and three compressor effects.

  1. Ensure that your player dialogue, sidekick dialogue, NPC dialogue and sfx dialogue are each routed into a different group bus.
  2. Add a compressor effect to each of the sidekick dialogue, NPC dialogue, and SFX group buses.
  3. Add a sidechain to each of the player dialogue, sidekick dialogue, and NPC dialogue group buses. Ensure that the sidechains on the sidekick dialogue and NPC dialogue buses are positioned to the right of the compressor effects on those buses.
  4. Set the sidechain input of the compressor on the sidekick dialogue group bus to the sidechain on the player dialogue group bus. Set the sidechain inputs of the compressor on the NPC dialogue group bus to the sidechains on the player dialogue group bus and the sidekick dialogue group bus. Set the sidechain inputs of the compressor on the SFX group bus to the sidechains on the player dialogue group bus, the sidekick dialogue group bus, and the NPC dialogue group bus.

When a compressor effect has multiple sidechain inputs, those sidechain inputs are mixed before being used by the compressor effect. Because there is only one compressor on each bus, this guarantees that none of those buses will be double- or triple-compressed.

Thank you, your reply was super helpful!