So part of the reason I tend to GM in tabletop games is that I like playing villains over heroes. They're a good medium for exploring subjects like fear and it's effects, and how otherwise good people are twisted to do terrible things. Heroes are just less interesting to me, but I do think that part of creating an interesting character is adding depth. Show how they could have been a villain, but didn't follow that path. Give them motivations that are easier to achieve through nefarious means. Tempt them. I think that helps.