Review: 'Trap' quickly dives off the cliff from disappointment to disaster

The plot has more holes than a Swiss cheese eating contest.

August 2, 2024, 1:15 PM

I don't blame M. Night Shyamalan fans for wanting to get a taste of his latest film, "Trap", in the hope that the director might return to the glory days of "The Sixth Sense," "Unbreakable," "Signs" and even "Split" and make a classic thriller again.

But I hold this truth to be self-evident: It's bad mojo when a studio refuses to advance screen a movie for critics (think of "Snakes on a Plane"). For a hot minute, I hoped that Shyamalan might beat the jinx with "Trap," now in theaters hoping to lure in audiences before the wretched word gets out, but "Trap" quickly dives off the cliff from disappointment to disaster.

For starters, the so-called master of the "twist" ending gives away that game almost immediately as we realize that Cooper (Josh Hartnett), the doting dad taking his daughter Riley (Ariel Donoghue) to a pop concert, is really "The Butcher," an infamous serial killer, and that the law has set up this concert to trap him in the act of... I still can't figure it out. How do you keep an eye out among 20,000 people?

To enjoy "Trap" you not only must suspend disbelief but beat it on the head until it loses consciousness.

Ariel Donoghue and Josh Hartnett in M. Night Shyamalan's "Trap."
Courtesy of Warner Bros. Pictures

Read no further if you want to see "Trap" knowing nothing -- a blissful state impossible to achieve since Shyamalan gives away the killer's ID in the trailer and the first few minutes of the film.

That's when we see Cooper check his cell phone to make sure his latest living victim (he's already butchered a dozen) is still trapped in a suburban basement, perhaps to use as a hostage in case the cops actually do nab him.

Back in the day, Shyamalan could have built suspense by contrasting the onstage action starring superstar singer Lady Raven with the killer's activities behind the scenes. The concert itself, seemingly made to mirror the Taylor Swift Eras Tour (they wish, we wish) is performed by the writer-director's daughter, Saleka Shyamalan, who actually wrote the songs she sings. What a shame her father has trapped her in the cross-cutting so that her performance fails to register. Ditto the tension.

Saleka in M. Night Shyamalan's "Trap."
Courtesy of Warner Bros. Pictures

The plot has more holes than a Swiss cheese eating contest. So much happens by luck or synchronicity that belief flies out the window, never to return.

As daddy wanders the halls looking for a way to escape, he meets souvenir seller Jamie (a terrific Jonathan Langdon), who tells him the cops are setting a trap and that the password for insiders is "Hamilton."

Want more? When Cooper needs to get backstage, he just happens to run into a producer, played by Shyamalan himself, who offers him a chance to have Riley cameo onstage with Lady Raven thus ensuring exit access. Psycho dad is so lucky he should buy a lottery ticket.

The cops are totally inept, including the chief police profiler played by beloved former child star Hayley Mills (remember "The Parent Trap"?), now 78 and aging gracefully, though Shyamalan ungraciously sticks her in a role that defines incompetence.

I pause here to praise the one element of "Trap" that does work, and that is the performance of Hartnett, 46, a former teen idol who took a break from acting before returning in such roles as nuclear physicist Ernest Lawrence in the Oscar-winning "Oppenheimer."

Ariel Donoghue and Josh Hartnett in M. Night Shyamalan's "Trap."
Courtesy of Warner Bros. Pictures

Don't bet on Oscar talk for "Trap," though Hartnett performs miracles in making Cooper a serial butcher and a devoted family man living in the same body. You believe him, which is a trick Shyamalan otherwise fails to achieve as this misfire builds to a sequel-begging climax that ups the ante on shameless.

The laughs are unintentional in "Trap," but its failure to thrill is dead serious.

You don't need a sixth sense to know that Shyamalan is running on empty.