Felicity Jones in Rogue One: A Star Wars Story.

There is a quick moment in the very first Star Wars (now known as Star Wars: Episode IV—A New Hope) when a character mentions rebels possibly obtaining secrets regarding the Death Star’s vulnerability.

Those rebels get their own movie in Rogue One: A Star Wars Story, a spinoff that is technically another prequel. In fact, it tells a story that leads right up to the point where A New Hope begins. It’s a strong, rousing action-adventure movie that should please both Star Wars geeks and newcomers to the franchise.

It’s also a little different than your typical Star Wars movie in that it doesn’t mainly deal with the Skywalker saga (although a couple of them make notable appearances) and doesn’t prominently feature the John Williams score (although that makes some appearances as well). Director Gareth Edwards (Godzilla) goes for something a little different here, making a tonal shift that reminds of the big change The Empire Strikes Back brought to the saga.

The film starts—sans the long crawl and theme music we’re used to—and goes straight into its story. Galen Erso (Mads Mikkelsen), a renowned scientist, gets an unwelcome visit at his remote farm from the evil Orson Krennic (Ben Mendelsohn). Krennic wants Erso to continue his work on this crazy new thing called the Death Star, but Erso isn’t interested. The whole emerging Empire thing has got him turned off, and he wants no part of it. Bad events ensue, and Erso’s young daughter, Jyn, goes into hiding.

The action picks up 15 years later, and Jyn has grown up to be played by Felicity Jones. Jones brings the same level of competent acting skills that Daisy Ridley brought last year in The Force Awakens (and they both have awesome English accents). Jyn eventually finds herself joining the Rebellion, and becomes a key player in retrieving the Death Star secrets and setting up the events that will become the original Star Wars trilogy.

She gets paired up with a generally grouchy rebel in Cassian Andor (Diego Luna) and his wiseass droid, K-2SO (voiced by Alan Tudyk). They go on that mission mentioned in Episode IV, leading up to an action-packed finale that reminds of the climactic A New Hope battle scene in many ways—some of them truly unexpected and wonderful. (There are some rather surprising cameos.)

Among the returnees from the original trilogy and prequels is Bail Organa, still played by Jimmy Smits, a surprising nod to the prequels that displeased so many. CGI trickery (some of it a little shaky) leads to the return of a major Empire figure that won’t be revealed in this review. Of course, the commercials have already shown that Lord of the Sith, Darth Vader (still gloriously voiced by James Earl Jones) is back in all of his evil glory. That’s a major Star Wars treat.

The score by Michael Giacchino isn’t all that bad. It does riff on the original John Williams themes, leading one to wonder why they didn’t use the original music throughout. There are moments when Giacchino’s music uses the first phrasings of the original score themes, and then goes off in another direction. It feels like a bit of a tease. Understandably, the goal here is to make a standalone Star Wars movie, but this is very much a Star Wars movie, so teasing the original score winds up being somewhat of a distraction.

This year has been a major letdown for big blockbusters (Ghostbusters, Jason Bourne, Independence Day: Resurgence, etc.), so it’s nice to finish the year on such a high note. Rogue One is a blast, and further proof that Mickey Mouse taking over Star Wars responsibilities from creator George Lucas is a very good thing. Star Wars VIII comes to us next year, and a standalone Han Solo origin story comes the year after that.

There was a time when we had to wait years for Star Wars fixes. In this, the New Age of Total Impatience, we get Star Wars every year. The New Age of Total Impatience most certainly has its perks.

Rogue One: A Star Wars Story is playing in a variety of formats across the valley.