It is important to have rules and guidelines in any community. If all or most your members are not happy with certain rules, then see if they can be accommodated without giving them a free pass to do what they want.
One thing that I have found to be effective is creating places for specific behaviors and types of posts that are common, but often against the rules.
For example, throughout the forums, we prohibit any type of marketing or promotion. But to provide an outlet for good members that have something to promote, we created some specific forum areas just for those types of posts. This keeps the main areas clear of promotions, while creating an outlet for it. We still ban spammers, but spammers are easy to spot since they never contribute to the site, and post crappy looking messages. And to our surprise, people actually visit the promotional posts.
Another example is our rule that topics need to be on-topic and relevant to the forum areas they are posted in. This caused issues when members started posting "Word Association Game" type posts and other posts meant to increase one's post count and keep busy on the site. So we created an area specifically for these types of posts, and then made it so that posts there do not count towards their post count.
We also made sure that we created an area for off-topic posts, which allows almost any topic as long as it is not promotional, not adult and not harmful to the community (harassing, threatening, etc.).
Other rules, like those related to treating other members well, we don't bend on. If someone cannot respect others, then they are not a good addition to the community anyway.
Listen to your members, and see what works for your community. If necessary, create specific areas for specific things. That allows people who want to participate to participate, and those who do not to ignore that entire section of the site. Best of both worlds.