? ? ? (out of five stars)Director: Allen HughesCast: Mark Wahlberg, Russell Crowe, Catherine Zeta-Jones, Jeffrey Wright, Barry Pepper, Natalie MartinezRated: R for pervasive language, some sexual content and violenceRunning time: 1 hour, 49 minutesWhat did you think?: Find this review at charlestonscene.com and offer your opinion of the film.Movie review

It’s a filthy place, this “Broken City.” Even the people called “good guys” have their dark side and tragic flaws.

And the “bad guys?” They’re all over New York — a mayor who plays hardball, a guy running against him who’s not above crawling in the mud, a police commissioner too quick to make ethical compromises.

“Broken City” begins with a cop, ably played by Mark Wahlberg, on trial for a shooting that may not be as cut-and-dried as he says. The mayor (Russell Crowe) slaps him on the back, and says, “I like having my picture taken with heroes.” But he and the police chief (Jeffrey Wright) end Billy Taggart’s career, no matter what the judge says.

Cut to seven years later. Billy is a private detective, skulking in alleys, photographing cheating spouses. He’s got a hot actress wife (Natalie Martinez), and his work has made him the jealous type.

Then his old pal, the mayor, calls. Find out who’s sleeping with my wife, Hizzonor says. Do it before Election Day, next week. The can-do mayor is in a two-fisted race with a city councilman (Barry Pepper). The last thing he needs is for word to get out that his wife (Catherine Zeta-Jones) is cuckolding him.

But once Billy has done his job and gotten the incriminating photos, things turn even dicier. The adulterer turns up dead and Billy wonders if he’s been set up.

Director Allen Hughes hides the secrets well and stages a good fight and chase. But what’s most entertaining about Brian Tucker’s script is the lived-in feel it has. The ex-cop is all rough edges, intolerant at times, ill-tempered.

Politicians treat slander with the cavalier disregard of those used to an “any means necessary” style of campaigning.

Working-class cops and politicians have homophobic streaks. Wright’s police chief-turned-commissioner has a simmering resentment that feels righteous, but unsavory. Crowe plays the mayor’s working-class background as a barely hidden resentment, making him menacing even when he’s glad-handing supporters.

There’s a lot of background to pack into every character, and Tucker sets them up as virtuous, pure of motive, only to pull the rug from under them.

But “Broken City” doesn’t have a compelling narrative to pull it along. Wahlberg, playing within his comfort zone, dials back the fearsome, aiming for funny some of the time. It’s a hallmark of this slightly-better-than-average thriller that it is missing some of the requisite thrills.