When I look at the pattern of failures, I am reminded of something I learned from software engineering: planning fails when the complexity of the problem exceeds the capacity of the planners to reason about it. And the complexity of real-world planning problems almost never rises linearly; it tends to go up at least quadratically in the number of independent variables or problem elements.
Recognition of complexity is a reason we humans rely on morality to inform our actions. Existence is too complex for us to predict the future; too complex for us to predict all consequences - think of the "Butterfly Effect".
When we reject morality, we fail to respect the complexity of existence. We believe, at least temporarily, that we can adequately control results and consequences. We believe we are quite powerful, indeed.