Q:

A word to describe things that reduce control

I'm writing about the concept of "that which has a chance of preventing the intended or desired result". I refer to it frequently and it's very inconvenient to define it every time so I need to find a phrase or (preferably) single word to use as a label for it.
I've considered terms like "obstacle" or "challenge" but some obstacles can be reliably overcome and the word challenge implies that skill is a factor. So far I've used the word "uncertainty" but I think it's too extensive as it applies to things that have no bearing on the intended or desired result.
Is there a word or phrase to describe that which reduces control or produces the opposite of control?
Edit: I need to use the word consistently in several sentences. So let me give you a paragraph instead: "When a users interact with software there are always X. If you're designing a software tool you want to minimize X to provide the user a reliable tool. But if you're making a game you need X to make it exciting for the player."
If you replace X with "things that which have a chance of preventing the intended or desired result" you get the correct meaning but the sentence becomes incredibly awkward. It's hard to find a word/phrase with a good match since it's so precise. If there's no word like that I'll use the closest thing.

A:

I'd suggest unpredictability. Unpredictability is not good for non-gaming software, but it is desirable while creating gaming software. 
Unpredictability Oxford Dictionary

Meaning: Inability to be predicted; changeability

Usage: "the constant element of unpredictability keeps the show fresh."

Your paragraph:

"When a users interact with software there are always unpredictability. If you're designing a software tool you want to minimize unpredictability to provide the user a reliable tool. But if you're making a game you need unpredictability to make it exciting for the player."

