Definitely! I won't get into specifics, but during the summer we spent a great deal of time trying to figure something out in the Programming department, and after months of work, it turned out to be pretty much useless. It was and is certainly the best way to go about doing what we want to achieve, but in order to get to where we want, we have to do a LOT of work ourselves because we were taking an uncharted but mandatory route. Anyway, because it was leading us nowhere, we decided to take a different course of action, and may return to the "better" route sometime in the future, when it is better developed for our needs. The way we solved this problem is by taking an alternate course which isn't the best way to do it, but it is all we can do. I guess the lesson learned is the best way to do something isn't always the easiest way, and you have to realize the the best way may not even be an option.
That was more about an issue with the game itself being a setback, but there have also been setbacks caused by people. You can trust too much in people, believing that they can get jobs done and would make a good team member. A few months later, the person abuses that trust and believes the game is dependant on his schedule and whenever he feels like working on it. I've been making allowances because their reasons were legit, but as a result, the game as a whole suffers. One person's assignment may not always be directly related to another's, but they are related in the sense that they are ultimately needed for this game to be completed.
Lesson learned? Trust is something you can earn, but once broken it can be very difficult to rebuild. Only rely on people you trust the most, but even then don't assume you can rely on them forever.