When you are writing the rules to your game, think very hard about every exception you add.
Any given person only has a certain amount of brain-space to devote to games, and you will only ever get a small percentage of that space. Don’t waste it with overly complex rules with unnecessary exception and clauses.
Writing a rule in the form “If X happens, then you do Y” is fine. You can have lots of these rules, each one is individually simple, and doesn’t take much effort to learn.
Rules that are more complex “If X happens, then you do Y, unless A is in play, so do one of B or C” are a lot harder. The cognitive load is far greater, as the player has to consider far more objects at once, and they have to remember to check for the existence of A, and that they can do B or C.
Some complexity is required, else the game can be too simple. Too much is not, as no-one will bother to learn the rules, and the few that do will all learn and remember a slightly different set, leading to arguments over the rules, rather than allowing people to play.
Whenever you use words like ‘unless, ‘except’ and so on, stop and think hard about the exception you are creating, the complexity and difficulty it will add, and weigh it against the value the rule adds to the game. If the difficulties outweigh the benefits, then get rid of the rule, and you’ll probably have a better game.