"Sin City" creator Frank Miller obviously has a love for unstoppable badasses who soldier on despite multiple gunshot wounds, missing limbs and near beheadings. So it's no surprise that he found his historical mother lode in the legendary tales of ancient Sparta: an entire society built on raising nothing but unstoppable badasses. Their maniacal love of battle is at the heart of Miller's blood-caked graphic novel "300" and director Zack Snyder's ("Dawn of the Dead") film adaptation, a green-screen war orgy that only half works.

Though inspired by the Battle of Thermopylae in which 300 Spartan soldiers and a few volunteers from other Greek states stood against the vast armies of the Persian Empire, this is no history lesson. "300" is built on an embellished, storyteller's vision of history, in which warriors leap 100 feet in the air like superheroes and the villainous armies are populated with actual monsters.

When the movie focuses on the warriors, it's dazzling. As in "Sin City," computer animation replicates Miller's stark artwork, creating an otherworldly landscape where the thrilling slow-motion-enhanced battles unfold. Spartan King Leonidas (Gerard Butler, "Tomb Raider") is an ancient Greek Terminator, charging nearly naked into battle with fervor and skill that would shame "Gladiator"'s Maximus and "Troy"'s Achilles.

The problem with "300," however, stems from Snyder's need to color outside Miller's lines. Since the graphic novel is barely 80 pages long, the film fills time with a subplot involving Leonidas' wife, Gorgo (Lena Headey, "The Brothers Grimm"), and a shady politician named Theron (Dominic West, "The Wire"). It's a jarring bit of palace intrigue that feels like a rejected storyline from HBO's "Rome" and is tonally out of place against the rest of the movie's hyper-reality.

It's asking a lot to switch gears from a dull political debate to a scene involving Persian King Xerxes (Rodrigo Santoro, "Lost"), who appears to be 10 feet tall and speaks with a voice deeper than James Earl Jones' in the morning. It's also frustrating to hear characters repeat exactly the same dialogue delivered only moments before in the film's voice-over narration, which happens multiple times here.

At least "300" offers enough visceral thrills to make its failings bearable. Sure, you'll find yourself checking your watch and waiting for the action to switch back to Leonidas and his men. But when it does, it's worth it.

Copyright © 2014, Los Angeles Times