Horror’s in a tricky spot right now. It’s one of the last surviving genres where original material can still thrive, yet only when there’s a sense that what we’re being sold isn’t just a film, but a sensation – an invitation into a truly unmissable cultural moment. It wasn’t enough that Longlegs had Nicolas Cage falsetto singing in wild plastic surgery makeup. That 2024 film, we were repeatedly warned, was evil down to its atomic structure, as if it were a bit of satanic coding penned by the Zodiac Killer himself.
Weapons, which centres on the eerie disappearance of a class of schoolchildren, has similarly tried to latch onto the feel and aesthetics of true crime, focused on the conflicting testimonies of a grieving parent (Josh Brolin’s Archer) and the class’s teacher Justine (Julia Garner). It’s a wildly effective ad campaign. Yet I can’t help but think audiences are being slightly misled here. Zach Cregger’s follow-up to the monstrous Airbnb hijinks of 2022’s Barbarian is easily as weird, wicked, and fun – what it’s not, however, is the chilly, nightmare headf**k we’ve been told it is.
Cregger has a background in sketch comedy, having once been in the acclaimed troupe The Whitest Kids U’Know, and maintains an intuitive sense of how a scare should be structured (the same as a joke: set it up, string it out, land the punchline). He also knows exactly when to puncture the tension. When Justine is being chased around a gas station store by something manic and threatening, you hear a cashier’s voice in the background yelp, “Get out of my store!” Without a beat, she barks back: “F***ing HELP me.”
Weapons is split into chapters, illuminating each character’s perspective on the event and its aftermath. Cregger has cited Paul Thomas Anderson’s Magnolia as an influence, yet it feels more in practice like something Stephen King might cook up, as small-town troubles and the more phantasmagorical happily rub shoulders. Archer suspects Justine knows something she’s not telling the authorities. After all, it happened so suddenly and yet seemed so carefully orchestrated. Every one of Justine’s class, save for one little boy named Alex (Cary Christopher), got out of bed at 2:17am, walked out of their front door, and ran into the dark with their arms outstretched like a moth pinned to a board.
Everyone’s a detective under such unfathomable circumstances: Alex, Archer, Justine, cop Paul (Alden Ehrenreich), the school principal Marcus (Benedict Wong), and James (Austin Abrams), a local drug addict. And none of them are particularly likeable, save the kid. Justine has a history of professional overreach. Paul is outright pathetic, in a way Ehrenreich captures with laser accuracy. Marcus is a Disney adult.
Cregger isn’t too interested in bearing the heavy hand of trauma metaphor down on his audience. But Weapons doesn’t need it, since its scares are rooted largely in the incongruous nature of what we’re being shown – all eventually neatly explained by its final reel. Whether it’s the answer you want is hard to say, but I was more than happy with it, largely because it hints at how deeply rooted Cregger’s work is in the classics of Seventies horror cinema.

At the same time, he’s been upfront about how the odd way these children run is subconsciously influenced by the Vietnam war photograph known as “Napalm Girl”, and that barbaric loss of innocence feeds into the film’s very darkest corners. There are echoes of the Satanic Panic, the mass hysteria in which teachers just like Justine were falsely accused of the ritualistic abuse of their students, and the community fallout after a mass shooting. Yet, its climactic image is a pointed, and unexpectedly funny, act of intergenerational warfare that reveals Weapons’s true message: no one’s ever really thinking about the children.
Dir: Zach Cregger. Starring: Josh Brolin, Julia Garner, Cary Christopher, Alden Ehrenreich, Austin Abrams, Benedict Wong, Amy Madigan. Cert 18, 128 minutes.
‘Weapons’ is in cinemas from 8 August