By Dustin Rowles | Film | October 7, 2025
Shane Black (Kiss Kiss Bang Bang, The Nice Guys) is a good director — I’m sure of it — but there’s very little evidence of that in his latest, Play Dirty. He’s also a great screenwriter (Lethal Weapon franchise), so good that even his bad films (Last Action Hero, The Long Kiss Goodnight) have managed to earn cult followings.
What Black has almost always had to elevate those scripts, however, were skilled actors with great timing — Robert Downey Jr., Ryan Gosling, Sam Jackson, and even Mel Gibson at the height of his career. In Play Dirty, he has Mark Wahlberg at the phone-it-in stage of his career and LaKeith Stanfield at the cashing-big-paychecks stage of his. He also once had real movie studios behind his films; now, with Play Dirty, he has a tech company (Amazon), and it shows in the special effects, which feel both artificial and gloopy.
That might have been easier to overlook if Play Dirty weren’t essentially one long, exhausting action sequence stitched together by a nonsensical plot and banter that might have come off as more playful had it not been delivered by two indifferent actors with zero chemistry. Robert Downey Jr., Val Kilmer, Ryan Gosling, and Russell Crowe were magic together. Mark Wahlberg and LaKeith Stanfield feel like they’re shooting their scenes from different rooms.
Based on the Parker book series by Donald E. Westlake (the same Parker played by Mel Gibson in Payback and Jason Statham in Parker — both better films than Play Dirty), Wahlberg plays Parker, a professional thief who’s in it for the art of the steal. In the film’s first heist, he and his crew pull off a big score, but one of the crew members, Zen (Rosa Salazar), escapes with the loot after shooting everyone else dead, except Parker, who narrowly survives.
Parker is determined to get revenge on Zen, but before he can, she convinces him to assemble another crew for a massive job that ties into a vague political and corruption scandal, pitting him against the Outfit, a rival syndicate run by Tony Shalhoub’s Lozini. Parker agrees and recruits a new crew: Grofield (LaKeith Stanfield), Stan (Chai Hansen), and Ed Mackey (Keegan-Michael Key). What follows is a string of chaotic action scenes, shootouts, a heist with a twist, and a double-cross before the dust settles like an inch-thick AI film.
None of it is particularly engaging. The banter lacks zing, the jokes fall flat, and it’s often hard to tell what’s happening in the action scenes. Despite its lengthy runtime, it still feels like whole chunks are missing. And that’s the gravy on top of the sh*t biscuit: Play Dirty isn’t just bad, it’s bad and overlong.
Play Dirty is a dud, and not even the fun kind of bad that Shane Black has occasionally pulled off (see The Long Kiss Goodnight or even The Last Boy Scout). That’s largely because I’m not sure Mark Wahlberg knows how to have fun. People who wake up at 4 a.m. to deadlift, eat mostly protein, and even moderate their cheat meals are not generally known for their sparkling personalities. Shane Black writes in Dad-joke speak, and you need someone like RDJ, Gosling, or even peak-era Mel Gibson who can deliver that with a twinkle, wink, and a little deadpan. Wahlberg, on the other hand, is just a dead pan — a cast-iron skillet when you need a wok. He has the blunt-force charm of a pickaxe, and Play Dirty is not only worse for it, but it extends Wahlberg’s decade-long streak of crap.