One of the common challenges I encounter with many workshop writers and coaching clients is how their characters are motivated. This is a problem for me too in my own writing, make no mistake. It isn't good enough to have them do random stuff willy-nilly.
This is one of those things that's easily missed or ignored, yet critical for bringing characters to life.
What makes your characters do what they do?
When developing your primary characters - protagonist, antagonist, and other major characters - spend a few minutes considering these two questions:
1. What does your character want in an abstract way?
This could be something like self-esteem, love, power, justice, world domination... the idea is there's a fundamental motivator that's part of your character's core being, and this is what drives them in their decision-making.
But abstractions only tell us about our character's core... we still need to understand the character's goal and that brings us to the next question:
2. What does your character want in a concrete way?
This is their story goal, and it must be concrete or else the character and the story start faltering like a wonky donkey. For example, your hero's goal may be something concrete like rescuing the princess, or you're winning the big game, or solving the murder, or marrying the town's only doctor. Those are concrete story goals.
Pulling it together
Once you've clarified what your characters' goals are, then use their abstract motivations to guide their behaviour. If your character wants to save the princess (concrete) but he's motivated by power and lust (abstract), the story is a whole lot different than if he was motivated by love and justice.
See, it's super important to know at all times what both motivators are for your characters. Keeping these in mind will remove a lot of the ambiguity from the characters' actions, and will bring a lot more coherence to your plot.