It’s not easy creating a straight up good hero. We like our heroes that bit more flawed and broken, a reminder of what it is to be truly human. A straight-up good hero usually comes across as unconvincing, cheesy and old-fashioned.
But on the rare occasions when they’re done right, these are some of the most likable characters out there. Think of Captain America. Think of Carrot in Terry Pratchett’s City Watch novels. They aren’t perfect, but their imperfections have an innocence about them. We don’t love them because they have a dark streak. We love them because even their faults are endearing.
The rarity with which this is done right shows just how hard such characters are to write. But they’re something worth looking for as a reader and worth striving towards as a writer. They lighten up even the darkest corners of our lives. They show that we can be flawed, as all humans are, without having to let the darkness in.