The Last Jedi, Rian Johnson’s entry in the third trilogy of the Star Wars franchise, has an interesting relationship with the past. There are plenty of visual connections to the original films — particularly The Empire Strikes Back — and the saga-wide themes of hope, good versus evil, redemption, and destiny are all here. This film, however, offers its own thoughts on these epic-anchoring ideas to great effect. The Last Jedi isn’t perfect, but it does offer more than enough intriguing concepts and good, old-fashioned thrills to be worth your time.

We start off by simplifying a lot of things left muddled by 2015’s The Force Awakens. The sinister First Order is immediately established as the reigning military force in the galaxy, keeping our ragtag group of heroes on their heels despite their climactic victory in the previous installment. While this may leave something to be desired in the way of exposition, Johnson strides forward with confidence, rejecting the silly notion that it’s his responsibility to pick up another film’s slack. Instead, he focuses on character development with superb results. Rey (Daisy Ridley), Finn (John Boyega), Poe Dameron (Oscar Isaac), villainous Kylo Ren (Adam Driver) and even Luke Skywalker (Mark Hamill) have character arcs, changing and growing over the film’s generous 2 1/2 hour run-time. Johnson’s script plays with traditional ideas as Rey and Ren question their respective devotions to heroes of yesteryear and the paths they follow today. Finn struggles with his own devotion to the greater good of the Resistance. His  selfish cynicism is personified by the quirky and duplicitous DJ (Benetio Del Torro, underused). The most fascinating turn goes to Luke, brought low not by the Dark Side but his inability to live up to the ideal of perfection thrust upon him by every character and audience member. It makes for great storytelling and invites the viewer to rethink the ideas Star Wars  films have consistently pushed since their debut in 1977.

Despite this, the film does have its flaws. Plot holes abound, particularly in the Finn and Poe Dameron subplots. The military tactics of the First Order are questionable at best. An early sequence involving Princess Leia (the late Carrie Fisher) stretches suspension of disbelief as far as it can possibly go. Also grating is the Disney brand of humor, pioneered by Robert Downey Jr.’s Iron Man; every good guy is capable of snappy one-liners and most evil henchmen are the victims of socially awkward situations. I had hoped this kind of corporately mandated humor would be restricted to the Marvel Cinematic Universe, but alas. Producer Kathleen Kennedy’s influence also pulses neon whenever screen time is given to the cuddly, marketable Progs, heir apparent to Return of the Jedi‘s Ewoks.

Perhaps the biggest let-down of the film is Finn’s adventure in a lavish space-casino. Opulence and luxury have never been explored by previous Star Wars films, and this one doesn’t seem to know how to handle them. The scenes here aren’t exactly bad but they aren’t as compelling as they should be. Johnson gets us back to starship battles and lightsaber duels before the lull becomes a slog, but these middle acts are the film’s definitive nadir.

Overall, there’s plenty here that puts this film head and shoulders above the entries of the previous two decades: formerly underused characters are fleshed out, our villain’s motivation is interestingly relatable, a wide use of animatronic creatures makes the galaxy feel more alive than ever, and the references to earlier installments don’t feel like cheap fanboy-pandering. At its core, The Last Jedi has something to say, and says it reasonably well. Despite the occasional artistic decision made to maxamize profit, we’ve got our first Disney-produced Star Wars film with a soul. Hopefully it’s not the last.