The difference between flawed and bad writing
Sometimes people defend certain characters' actions with "well, it's a human" or "well, it's flawed", but this is a double-edged sword.
Sure, none of us like characters who are 100% perfect without fail, but one thing is making a character flawed on purpose, another is making bad writing decisions that can affect negatively the perception of the character.
A human may not be logical as a robot, but humans are individuals. Each of us makes decisions (good or bad) based on our personality or experiences, not just because we are humans. This is why the "it's just a person" doesn't always work, because it depends on what kind of person we are talking about. For example, Homer Simpson would do something stupid because the writers made him that way, but if Lisa Simpson does something stupid, it wouldn't make sense because it would be out of her character.
And this is the problem with many of Vivziepop's characters: they are not flawed, but negative by accident. We are supposed to see them as good with no fail, and their arcs just don't feel fitting for their characters.
I already pointed out all the problems with Charlie, so I don't want to be repetitive, but for those who haven't read the rant, here's the link and the link of another problem with character writing.
So, I'll give you a better example of a flawed character and how to develop it properly.
Itou Kaiji from Kaiji Ultimate Survivor. (SPOILER ALERT)
Kaiji is a 21-year-old man who struggles to find a well payed job, but he's also a gambler who gets in trouble from the loan sharks of Teiai.
His character is: gambler, kind, resilient, smart and weak-willed.
His gambling is a problem because it causes him to be in debt for the whole story. Being kind is good, but people take advantage of him. He doesn't give up because he's resilient. He uses his intelligence to win at gambling by thinking out of the box. His weak-willed side causes him to lose the money he needs (more relevant in the Underground Chinchiro Arc where he spends the money he needs to get out of the underground by buying great food).
Kaiji is not a perfect person, just like all of us, he has his weaknesses.
Kaiji develops while also remaining coherent with his character. The most important evolution of him comes in arc 1 of season 1.
Kaiji is in debt and gets invited on a cruise by Teiai (a criminal organization that operates under the facade of a financial consulting firm), where he has to win a rock-paper-scissor card game to get out of his financial situation. Logically, Kaiji is unprepared and naïve, not considering how he and the other participants of the game are literally on the same boat.
The other participants are also in debt, and because of the situation where is a win-or-lose, anyone would betray anyone just to save themselves. Kaiji gets betrayed twice, first by a participant who low his chances of winning the tournament, second by his two teammates at the very end.
Kaiji still finds a way out, thanks to his resilience, but this situation was traumatic enough to make him more careful about his alliances.
While you despite his teammates for their betrayal of him after all the help he gave to them, you also keep in mind that everyone was in a tournament about going back home with some debts clear or an unknown, terrifying fate, and Kaiji should have expected a betrayal at the very last moment.
So, Kaiji becomes more careful about trusting because of his betrayal experience in arc 1. Kaiji got betrayed because they all were in a win-or-lose situation. Kaiji trusted the wrong people because he's naïve.
Kaiji may be very smart to even know how to win at pachinko, but he's not unstoppable.
Kaiji's kindness, however, is not gone, he remains as such. He's just more careful this time. In later arcs, he still tries to help some participants and refuses to lose his humanity. He wants to win, but he doesn't want others to be left behind. That's coherent with him. He knows where to draw the line with some, but that doesn't mean that he'll be the perpetrator.
However, Kaiji is not only flawed, those flaws are more intended to be his obstacles. But do you remember when I mentioned that he's resilient and smart?
He has proven since arc one those strengths as he found a way to know how to win rock-paper-scissor.
The more balanced the character is between flaws and strengths, the more easy it is to feel satisfaction for his victory.
A great example is during his game against Tonegawa (one of the higher ups of Teiai). Kaiji had to wear a small device attached to his ear, which, every round he loses, a drill gets closer and closer to his eardrum. As he panics, he realizes Tonegawa is winning because he's monitoring Kaiji's heartbeat with his watch, which is connected to the device on Kaiji's ear. So, how's Kaiji gonna outsmart Tonegawa?
Now, that is how you write a flawed badass character.
Another interesting aspect is that while you do enjoy his moments of victory, that doesn't mean that the narrative is fully on his side. He gets punished when he gets too cocky, he gets punished when he trusts the wrong people, and his gambling addiction is a problem even when it leads him to the story.
Heck, at the end of season 2, a Teiai employee lends him some money out of pity because Kaiji's gambling addiction caused him to lose some and now he doesn't have the courage to meet the friends he just saved from the underground.
Kaiji works thanks to the environment he's in, the obstacles he needs to overcome, his goals, the other characters around him, what kind of character he is, and how he fits into this world.
In Hellaverse, very few of these characters like Blitzo and Angel Dust are flawed, but not enough to make them look coherent. As for other characters? Well, not in a very good light. Charlie is not flawed, because every time someone calls her out, gets villanized or is simply wrong about her. And the same goes for many other characters that get cuddled by Vivziepop like Stolas, Lucifer, Loona, Verosika, ect.
Kaiji participates in dangerous gambling games because he needs money. Teiai exploits gamblers like him because they are loan sharks. Kaiji wins thanks to his cleverness and resilience. Kaiji loses because of his naivety and weak-will. Teiai thinks lowly of the participants because of their mental weaknesses (wanting more in life, materialism, weak-will ect.). Kaiji refuses to lose his humanity or betray others because he was betrayed before. Some participants side with Kaiji because of his intelligence and his loyalty.
Charlie believes that everyone can be redeemed because...? Adam is mean because...? Charlie wants to save the sinners specifically because...? Charlie wins because....? The sinners should follow her because...? It's everyone's else fault when Charlie lose because...? The Heavens are in the wrong about the sinners because...? Charlie is ok on killing the angels without any second thought or moral conflict because...?