Iowa’s own Aquaman finally gets his standalone: Does it sink or swim?

Jason Momoa: from Norwalk to Atlantis. — video still

DC movies have had quite the rocky road recently. Batman v Superman, Man of Steel, Suicide Squad and Justice League have all been met with extremely divisive reactions from both the critics and the fans. The one beacon of hope for DC was Patty Jenkin’s Wonder Woman. Most everyone — myself included — really enjoyed that movie. Gal Gadot (as Diana Prince) and Chris Pine (as Steve Trevor) brought amazing performances and an incredibly strong dynamic to the film. Ever since its release, people have wondered when we were going to get the next strong showing from DC.

Aquaman, directed by James Wan and starring Jason Momoa in the title role, is definitely a step in the right direction.

In the past, I always thought of Aquaman as the superhero I couldn’t really take seriously. He was a guy that could talk to fish among a pantheon of heroes like Superman, Batman and Wonder Woman. With this movie though, everything has changed. Norwalk, Iowa’s Momoa brings a certain coolness to the title role, along with an assortment of admirable traits. Momoa’s Aquaman/Arthur Curry is a highly trained fighter, has super strength — and is incredibly charming.

The supporting cast of this movie is nothing to scoff at either. Nicole Kidman, Willem Dafoe, Patrick Wilson and Dolph Lundgren are all veterans of their craft. The newer blood — Amber Heard, reprising her Justice League role as love interest Mera, and The Get Down’s Yahya Abdul-Mateen II as antagonist Black Manta — offer fresh and exciting takes on those DC characters as well. Of all these performers, Abdul-Mateen was the standout for me; he also had an arc in the film that really fleshed out his character.

Yahya Abdul-Mateen II, of ‘The Get Down’ and ‘The Greatest Showman,’ as rising supervillain Black Manta. — video still

As far as the plot goes, that is where things start to get a little less impressive. The main story of the movie (without spoilers) is that King Orm (Wilson) wants to become the Ocean Master and will stop at nothing to do it. This pits Aquaman and Orm against each other, but before Aquaman can take Orm down he must get the Trident of Atlan and prove himself a worthy king.

The problem is that there is so much lore and background information that the film tries to explain, it ends up becoming too much and too muddled to make sense of. There are so many scenes that act as exposition dumps. Good storytelling in movies follows the general rule of show and not tell; this film tends to do a lot of telling.

Wan does a decent job of directing, but at times, his signature active-camera visual style makes the experience headache-inducing. Also, this movie must have about 15 giant action set pieces; as time went on, I started to become a little numb to them — not really enjoying them, but not truly hating them either. I do think Wan does bring some great performances out of the actors, especially Momoa and Heard. Their dynamic really worked, although what happens with their arc seemed a little bit rushed and at moments contrived.

Another thing that didn’t really work for me is the tone — it was all over the place. There are many scenes where the one-liners that happen do not work at all, mostly because the scene has a more serious tone. On the flip side, the movie at times becomes extremely corny and almost impossible to take seriously. Just in case you were wondering: Yes, there is an octopus playing the drums in this movie.

The most impressive thing about this movie are its visual effects. It’s on par with the scale of James Cameron’s Avatar, although there really is no other movie that looks like this. A majority of the runtime of the film takes place underwater, and it really does feel like you’re exploring new territory and are on a great, sweeping adventure.

Underwater effects in ‘Aquaman.’ — video still

Yes, Aquaman has it’s slew of problems, but that certainly didn’t stop me from enjoying myself. There were many times watching this movie where I found myself grinning ear to ear because it made me feel like a kid watching his favorite TV show.

So the big question: What does this movie do for DC? The answer will definitely vary from person to person, but I say that Aquaman is the correct route DC should be following for their future superhero flicks. If they continue to put an emphasis on developing strong characters and really fleshing out their stories (without putting the extended universe first) then their lineup of movies will start to become something people will always remember in a good light.

[gravityform id="17" title="false" description="false" ajax="true"]
<div class='gf_browser_unknown gform_wrapper your-village-form_wrapper' id='gform_wrapper_17' ><a id='gf_17' class='gform_anchor' ></a><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_17' id='gform_17' class='your-village-form' action='/iowas-own-aquaman-finally-gets-his-standalone-does-it-sink-or-swim/#gf_17'> <div class='gform_body'><ul id='gform_fields_17' class='gform_fields top_label form_sublabel_below description_below'><li id='field_17_7' class='gfield gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below field_description_below gfield_visibility_visible' ><h3 style="font-weight:800; font-size:34px;">Let's get started</h3> <p style="font-size:18px;">Fill out this form and we'll contact you with information about marketing with Little Village!</p></li><li id='field_17_4' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label gfield_label_before_complex' for='input_17_4_3' ></label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name gfield_trigger_change' id='input_17_4'> <span id='input_17_4_3_container' class='name_first' > <input type='text' name='input_4.3' id='input_17_4_3' value='' aria-label='First name' tabindex='2' aria-invalid="false" placeholder='First name'/> <label for='input_17_4_3' >First</label> </span> <span id='input_17_4_6_container' class='name_last' > <input type='text' name='input_4.6' id='input_17_4_6' value='' aria-label='Last name' tabindex='4' aria-invalid="false" placeholder='Last name'/> <label for='input_17_4_6' >Last</label> </span> </div></li><li id='field_17_5' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_17_5' ><span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_5' id='input_17_5' type='text' value='' class='large' tabindex='6' placeholder='Company name' aria-required="true" aria-invalid="false" /></div></li><li id='field_17_3' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_17_3' ><span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_email'> <input name='input_3' id='input_17_3' type='text' value='' class='large' tabindex='7' placeholder='Your email address' aria-required="true" aria-invalid="false"/> </div></li><li id='field_17_8' class='gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_' ><label class='gfield_label' for='input_17_8' >Phone</label><div class='ginput_container'><input name='input_8' id='input_17_8' type='text' value='' /></div><div class='gfield_description'>This field is for validation purposes and should be left unchanged.</div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_17' class='gform_button button' value='SUBMIT' tabindex='8' onclick='if(window["gf_submitting_17"]){return false;} window["gf_submitting_17"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_17"]){return false;} window["gf_submitting_17"]=true; jQuery("#gform_17").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=17&amp;title=&amp;description=&amp;tabindex=1' /> <input type='hidden' class='gform_hidden' name='is_submit_17' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='17' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_17' value='WyJbXSIsIjlmNzc1YTEyZmZjNmYyODk5Mzk0NDM3ZjRlOGYyZDNmIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_17' id='gform_target_page_number_17' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_17' id='gform_source_page_number_17' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> <p style="display: none !important;"><label>&#916;<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="17"/><script>document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );</script></p></form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_17' id='gform_ajax_frame_17'>This iframe contains the logic required to handle Ajax powered Gravity Forms.</iframe> <script type='text/javascript'>jQuery(document).ready(function($){gformInitSpinner( 17, '' );jQuery('#gform_ajax_frame_17').load( function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_17');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_17').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;if(is_form){jQuery('#gform_wrapper_17').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_17').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_17').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_17').offset().top); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_17').val();gformInitSpinner( 17, '' );jQuery(document).trigger('gform_page_loaded', [17, current_page]);window['gf_submitting_17'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_17').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_17').offset().top);jQuery(document).trigger('gform_confirmation_loaded', [17]);window['gf_submitting_17'] = false;}, 50);}else{jQuery('#gform_17').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [17, current_page]);} );} );</script><script type='text/javascript'> if(typeof gf_global == 'undefined') var gf_global = {"gf_currency_config":{"name":"U.S. Dollar","symbol_left":"$","symbol_right":"","symbol_padding":"","thousand_separator":",","decimal_separator":".","decimals":2},"base_url":"https:\/\/\/wp-content\/plugins\/gravityforms-asdf111aasdfffs-nope","number_formats":[],"spinnerUrl":"https:\/\/\/wp-content\/plugins\/gravityforms-asdf111aasdfffs-nope\/images\/spinner.gif"};jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 17) {if(typeof Placeholders != 'undefined'){ Placeholders.enable(); }} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [17, 1]) } ); </script>