Comics: ‘Powers’ strikes the perfect blend of police procedural and superhero intrigue


Powers is what I always recommend to folks who have grown tired of traditional superhero stories. I have been an avid reader of the ongoing series by writer Brian Michael Bendis and artist Michael Avon Oeming since the title of the first volume, Who Killed Retro Girl? and just finished reading Gods, the 14th volume.

In Powers, detectives Christian Walker and Deena Pilgrim investigate crimes involving individuals with superpowers. It’s a fairly straightforward premise, but this isn’t merely an episodic cop story with amped-up characters. Powers, which launched in 2000, features what can rightly be called an epic storyline, grounded in Walker’s history as a former ‘power’ who has been engaged in battles of one sort or another since before the dawn of humanity.

What drew me to Who Killed Retro Girl? was the idea of a superhero comic starting with the death of a hero. Sure, the death—and subsequent resurrection—of heroes has become commonplace throughout the various comics universes, but I was intrigued by the use of a hero’s death as a jumping-off point for a police procedural—a story about cops working the streets to find the killer.

What has kept me reading is the potent combination of Bendis’ text and Oeming’s art. Comics are driven by dialogue, and Bendis has a penchant for creating long strings of dialogue that give a conversation weight and reality, while also cluttering up a page: Dialogue balloons often pile atop one another and the reader must follow the threads, linking them together to find the source. This can mean reading an exchange a few times to capture the nuances of who says what to whom, but Bendis’ dialogue crackles with wit, and the rereading is nearly always a pleasure.

Of course, the dialogue only works if the story is worth telling, and Bendis’ story—twisting, complicated and revealed in bits and pieces (in part because Walker’s memory isn’t whole)—is a good one. He delves deeply into the questions raised by the notion of superpowers—issues of responsibility and morality, loyalty and self-interest, fear and hope, short-term expediency and long-term necessity. But while all of this is in play, he ensures that the story is fundamentally about the characters. Walker and Pilgrim are people we quickly come to root for, even as they make mistakes and fail to trust one another.

In fact, we become so invested in Pilgrim—who finds herself awash in trouble that even her sarcasm and bravery can’t overcome—that when her character didn’t appear in the book for a number of issues, I was worried my enthusiasm for Powers would wane. Fortunately, Walker’s new partner, Enki Sunrise, brought plenty of drama to the story, and Pilgrim’s return was perfectly timed and executed.

All of Bendis’ narrative is brought to life by Oeming’s distinctive art. In the early going, Powers has a fairly slick, cartoon-like feel. Over time, as the storylines have acquired complexity and the tales have gotten darker, the art has reflected these changes. Certainly, a noir-ish tone has been in play from the very beginning, but the book grows grittier over time. Violence and sex are often graphically depicted, and while Oeming isn’t offering up realism, his stylized vision of Powers’ world is palpable and affecting.

Oeming accomplishes much with his color palette, which, for example, often finds the sky rendered in deep reds or other unusual colors. He also has a gift for facial expressions: A character’s anger, confusion, pain or smugness is easily read, allowing for the creation of moments—sometimes funny, sometimes poignant, sometimes shocking. Even when Bendis’ tangle of dialogue falls away, much is still communicated.

Bendis and Oeming haven’t shied away from risk over the course of the run. The opening issue of the seventh volume, Forever, is set in the deep past as two nearly human creatures battle on a lonely landscape. There is no dialogue beyond some grunts, and it is certainly out of keeping with what has come before. But it is also the launch of Walker’s origin story, and therefore essential to the overall story the creators are telling.

Forever is easily one of the most memorable volumes in the series, and it serves as a sort of pivot point, providing context for much of what we’ve seen in the early stories as well as for much of what is to come.

At the end of Gods, a disaster has struck and our heroes find that their roles—and the rules they follow—are about to change. I’m looking forward to diving into the 15th volume, Bureau, and hope that many more will follow.

Born colorblind and therefore convinced he’d never enjoy graphic forms of storytelling, Rob Cline was first bitten by the comics bug in college. The resulting virus lay dormant for many years before it was activated by the inscrutable work of Grant Morrison. Now Cline seeks out the good and bad across the comics landscape as the Colorblind Comics Critic.

[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='/comics-powers-strikes-the-perfect-blend-of-police-procedural-and-superhero-intrigue/#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' >Comments</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="26"/><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>