Valerian and the City of a Thousand Planets is one of those odd curiosities of film, one that works spectacularly in some respects only to fail spectacularly in others. Writer-director Luc Besson is a cinematic auteur who has proved time and again to be a visionary in his science fiction and action films like The Fifth Element and Lucy, but he also proves time and again to be a much better visual storyteller than a director of actual human beings with written dialogue. Valerian is essentially an encapsulation of Besson’s greatest strengths and weaknesses, both cranked to their furthest extremes in a manner that is sure to frustrate those who can’t accept its faults and astonish those who can.

Hundreds of years in the future, humanity has united a singular species and has made contact with many others from among the stars. Earth’s Space Station Alpha consequently grew in size and population to accommodate Earth’s growing diplomatic ties, and this eventually give birth to a multicultural hub that functioned as its own autonomous city that set sail through the emptiness of space. However, an unspecified threat has been discovered at the center of the metropolis that might destroy Alpha, and it is up to human agents Valerian (played by Dane DeHaan) and Laureline (played by Cara Delevingne and curiously denied a title credit even though she is a co-protagonist).

Valerian is a visually splendid film, populated with diverse and unique locales both within and outside the titular city, with those locales populated with dozens of unique alien species. At times, Valerian will whisk you from one setpiece to another without much frontloaded explanation, but so much of the film’s fun is in sitting back and letting the alien experience wash over you. Even when you don’t fully understand what’s going on, the experience is completely engrossing in its bizarre realization of alien cultures through almost serialized encounters. This eventually culminates into a moving treatise on the role of immigrants and refugees in a multicultural society and the ways in which imperialism doubles down on its mistakes to attempt to erase those same mistakes. It offers a surprising amount of depth to what appears to a point to be an otherwise light adventure romp. To dive deeper would be to spoil the more interesting surprises Valerian has in store, but the journey to get there involves a jellyfishing trip with a wacky pirate (Alain Chabat), a visit to an especially weird pimp (Ethan Hawke), and an unlikely alliance with a shapeshifting stripper (Rihanna), so you certainly won’t be bored on the way to the eventual thematic heft.

That is, except for every time that Valerian and Laureline open their obnoxious mouths. The two characters seem to have no defining personality traits beyond their penchants for sarcasm and a cat-and-mouse attraction for each other that neither actor convincingly portrays. It doesn’t help that DeHaan and Delevingne are both absolute anathemas to screen presence or charisma, and the flat affect with which they have been directed to deliver their lines does neither them, nor the lackluster dialogue, any favors. Character motivations and ethos will sometimes shift in between shots, never mind scenes, all for the sake of convenience so that our point of view characters can push the plot forward to the next bizarre spectacle.

But if you are able to tolerate the leads as abysmally shallow characters and enjoy them instead as vessels for sci fi wonderment, Valerian and the City of a Thousand Planets has a lot to offer on visceral and thematic levels. The screenplay is at times utter garbage, but the aspiration of the computer generated production combined with the grander political messaging at play make the poor dialogue, if not excusable, then at least forgivable. Though Luc Besson’s usual failings have been amplified by his ambition, that ambition is worth seeing for the extremity of the spectacle alone.