I admit to being really skeptical when Warner Bros. announced the SHAZAM! movie. The majority of the studio’s DC Comics slate, at that point, had been really dark and very depressing. That wasn’t going to work for a property like SHAZAM. Of all of the characters in the DC Comics arsenal, this was the one that needed to be bright and cheery, or, at a bear minimum, have a sense of fun and whimsy.

The story of a young boy getting the powers of six ancient gods and becoming a hero needed to be on the light side. It’s the very definition of wish fulfillment. The comparison has been made by pretty much everyone at this point, but it really is a superhero version of BIG, the 1980s Tom Hanks film where a teenager became an adult.

Thankfully, the days of dour and cynical movies featuring DC Comics characters seems to be over. And the crown jewel of the new and improved direction for the studio is going to end up being SHAZAM!

The film takes a lot of its cues from the Geoff Johns revamp of the character during the publisher’s NEW 52 initiative that started back in 2011. The main character, 14-year-old Billy Batson, is a foster kid who has either runaway from or been kicked out of homes throughout Pennsylvania as he searches for his birth mother. His latest home is a collection of oddball kids in Philadelphia. Even though his new foster parents (played by Cooper Andrews from THE WALKING DEAD and Marta Milans) are caring and understanding, Billy’s instinct is to run.

When his new foster brother, Freddie Freeman, is being bullied at school, he runs away again, but ends up being transported to the Rock of Eternity, where the Wizard SHAZAM! tells him that Billy is needed to be the Wizard’s champion.

What follows – Billy learning what his powers are with the help of Freddie – is an amazingly fun series of scenes that feels so authentic. What else would a 14-year-old kid do if he suddenly looked like an adult and got the powers of gods? You’d test them out and show off as much as possible. Zachary Levi and Asher Angel play the dual sides of the character, and the transition is pretty seamless. Angel’s Billy acts too old for his age, while Levi’s superpowered hero has the enthusiasm – and the rebelliousness of youth.

Billy’s interaction with the Wizard isn’t the first time we see him, though. His meeting with Billy is a make-good for one that happened decades before. A young boy name Thaddeus Sivana entered the Rock of Eternity and was tested, but failed, in a heartbreaking scene that opens the movie. Sivana spent his whole life trying to get back to the Rock of Eternity, and when he finally does, he releases the avatars for the Seven Deadly Sins, who empower Sivana and eventually set him on a search for the Wizard’s new champion.

Mark Strong’s Dr. Sivana is a significant departure from the way the character is depicted in the comics – much small in stature and maniacal as opposed to the deliberate and methodical madness in the film – but it’s a perfect fit for the movie. Strong, who played Sinestro in the 2010 GREEN LANTERN movie, brings the perfect level of evil as he tries to bring the new hero down and take his power by any means necessary.

Moving away from SHAZAM!’s more well-known nemesis, Black Adam, was the right move here – though the Wizard definitely teases Black Adam’s existence while meeting with Billy to set up Dwayne Johnson’s eventual starring role. Using Sivana allows for Billy to use the Wisdom of Solomon a little more than he would going toe-to-toe with an evil mirror image of himself. Though we are introduced to another classic villain over the course of the movie, so the sequel has a few directions where it can turn.

SHAZAM! has a lot of fun with the character’s lack of a name. Originally conceived in the 1940s as Captain Marvel, DC Comics was forced to move away from that name when they lost the rights to Marvel Comics decades ago, only using Captain Marvel within stories and not as a title for their comic books. Back in 2011, the publisher completely abandoned the Captain Marvel name to the competition, leaving the hero without an actual moniker. He can’t call himself SHAZAM!, because then he would turn back into Billy Batson. So instead, the film makes light of the situation, with Freddie calling his new foster brother various different names throughout the film, including the Red Cyclone and Captain Sparklyfingers. That one is my favorite.

The movie also has a lot of fun with the larger universe in which it resides, referencing the other heroes who have come before. Batman, Superman and Aquaman all loom large over Billy and Freddie’s lives as Billy learns about his role as a hero. There’s even a (sort of) cameo at the end! When the music swells with that familiar score, a chill ran up my spine.

With all that SHAZAM! has going for it, it’s easy to fall in love with the movie. Part of me, though, also wants to hate it, because it proves that Warner Bros. is capable of making a great DC Comics movie, filled with hope and fun and everything that is good about superheroes. Why, oh, why couldn’t they do this six years ago with MAN OF STEEL? I’ll get over that particular gnawing issue in my brain, though, and just go see SHAZAM! in theaters again!