Looking back on Star Wars: The Force Awakens, it’s easy to see it as a very safe movie. It’s not a bad film, and it does good work by getting you to care about new characters like Rey, Finn, and BB-8. However, it’s also a film that’s clearly a product of a studio trying to rush out a new Star Wars film and not wanting to upset the fans that felt burnt by the prequels. So we’re left with a film that plays more like a greatest hits album with only a few variations along the way. The Force Awakens is more remake than sequel, but with the demands of both the movie business and fandom being what they are, it was satisfying enough.

But with the first Star Wars spinoff, Rogue One: A Star Wars Story, director Gareth Edwards finally pushes the franchise outside of its comfort zone. It’s unmistakably a Star Wars movie, but the universe has been re-contextualized through a more sophisticated lens. We’re past the point now where we assume Rebellion = good, Empire = bad. Through Rogue One, we see a more recognizable conflict tinged with darkness that feels real rather than darkness that just wants to gritty up the joint so that people will take the movie seriously. While the film suffers from plotting issues that make the narrative feel abrupt and halting at points, what Rogue One accomplishes in terms of tone and concept make up for its deficiencies.

The film opens with Imperial officer Orson Krennic (Ben Mendelsohn) kidnapping scientist Galen Erso (Mads Mikkelsen) to work on a weapon that will give the Empire the power to destroy planets. Galen’s daughter Jyn escapes and is raised by the rebel Saw Gerrera (Forest Whitaker). As an adult, Jyn (Felicity Jones) is on the run, but the Rebel Alliance recruits her to set up a meeting with Saw, who is viewed as an extremist. Working with Captain Cassian Andor (Diego Luna) and re-programmed Imperial droid K-2SO (Alan Tudyk), Jyn makes her way to the planet Jedha where they meet up with former Jedi temple protectors Chirrut Îmwe (Donnie Yen) and Baze Malbus (Jiang Wen) as well as Imperial defector Bodhi Rook (Riz Ahmed). Together, the group goes in search of Galen and the secret to defeating the Empire’s new weapon.

Despite a fairly direct plot—a group of rebels goes on a mission to steal the plans for the Death Star—the movie constantly stutters in its narrative. While this is likely the result of reshoots, Rogue One’s story only works in fits and starts. It’s a film with poor economy of storytelling and things never run smoothly from a plotting perspective. For example, since Jyn is Galen’s daughter, what’s the point of bringing in Saw? It’s a bit of fan service for fans who liked the character in Clone Wars, and it’s a nice detail that even among the rebellion there are people like Saw who are viewed as “extremists”, although what his extremism entails is never really elaborated upon. As it stands, you have a convoluted way of bringing your characters together on Jedha but it’s undermined when it feels like Whitaker put more thought into Saw’s bizarre accent than the writers put into fleshing out the character.

This characterization problem runs throughout the cast as everyone gets neat details, but rarely enough to invest in them as individuals. Jones is a capable actress, but it feels like chunks of Jyn’s arc are missing as she goes from someone who was raised by a freedom fighter to someone who doesn’t care if the Empire rules the galaxy to someone who has a seat at the table in trying to get the rebellion to steal the Death Star plans. Her evolution doesn’t really track, and that’s probably a result of the reshoots. Cassian starts out as an interesting character who’s willing to do some surprisingly ruthless acts for the rebellion, but like Jyn, his transformation isn’t completely fleshed out. Chirrut and Baze make for an endearing pair, but it’s because they’re cool and funny. The movie desperately needs a scene of Bodhi choosing to defect rather than showing up on Jedha as a defector, which drains him of his unique perspective. I have nothing bad to say about K-2SO. He’s the best and people will have worthwhile debates arguing who’s the best droid: K-2SO, BB-8, or R2-D2 (Threepio sucks forever).