Captain Colter Stevens (Jake Gyllenhall) comes to on a rolling train. The woman opposite him (Michelle Monaghan) thanks for him for the good advice. What good advice? Who is this girl? Within 8 minutes, he and the hundreds of others on their train are killed by the cascading explosion from a bomb in their cab. He awakens in a dark chamber where an Air Force official on a monitor (Vera Farmiga) prods him to go back. And so he does.
To describe much more of Source Code‘s plot would spoil the whole adventure, but know that director Duncan Jones (Moon) sets up another good puzzle. We saw what a film based on a time loop does to an audience – see the dreadful Vantage Point – but the film pulls it off, sending Stevens on a very different route from the second opportunity. He’s in the Source Code, the replication of the last few moments of an accident, in this case the terrorist’s bomb on the train, and his superiors implore him to find the bomber to prevent a future attack. It’s unfortunate that despite the (if I may) explosive premise, there’s little tension in the story – the film sails forward much like the train it’s set on while the inevitable explosion at the end of each eight-minute cycle feels like a distraction. For the film’s purposes it is, but it robs from the satisfaction a bit.
Comparisons to the ethereal Moon are inevitable, but know this: it’s a move to the mainstream. This is a not a mind-bending adventure, but the twists are genuine. Chris Bacon’s score swells up like a misplaced arrangement from a Shyamalan film while the special effects are passable at best, but you’re not here for the window dressing, you’re here for the ticking puzzle at the center of it all. Stevens, puppeting as a dead man, falls in love with a dead woman — a ghost falling in love with a ghost. It’s futile for him to try and associate, but the simulation becomes real to him. He has to keep trying.
Worth the trip, but in the end you wind up with a clever film that finishes a little too clean on a story line that’s a little too thin.