On a surface level, Heat works perfectly as a heist movie.
The armored car robbery in the film's opening runs like a stopwatch: a two-minute-fifty-second response window, a getaway vehicle swapped for a clean one four blocks later. The centerpiece bank job is one of the finest set pieces ever in the genre. If you only wanted to study Heat as a blueprint for staging a robbery on the page, you'd walk away with a semester's worth of lessons.
That's exactly what most writers do when they study this movie: they focus on the mechanics and treat the heist as the story engine. But when you look deeper at the film and how it operates, the heist is the byproduct of something quieter: two men's decisions about how to live.
Michael Mann's screenplay for Heat is one of the best examples of something I've often promoted: character as the engine. The plot, however elaborate, is a result of the dual protagonists, LAPD Detective Lieutenant Vincent Hanna (Al Pacino) and professional thief Neil McCauley (Robert De Niro). Every crime Hanna's unit investigates, and every score McCauley's crew pulls off, exists because of who these two men are: their complicated personalities and overriding obsessions.
The DNA is all there, and before a single gun is drawn.


A Career Spent Building the Same Man
Mann had been building toward his magnum opus for over a decade. He originally wrote Heat in 1979 as a 180-page spec script and would rewrite and rework it throughout the 1980s (sometimes as a screenplay, other times as a proposed TV series); always failing to get it off the ground.
While this was happening, many of the ideas and characteristics of Heat would appear in his produced film and TV projects. Frank (James Caan) in Thief is a master safecracker who constructs an entire domestic life the way he plans a robbery, then dismantles it himself the moment attachment threatens his control. Will Graham (William Petersen) in Manhunter is defined by his ability to think like the men he hunts, a skill that costs him his own peace every time he uses it. And the show that made Mann's name, Miami Vice, follows two undercover cops (Don Johnson and Philip Michael Thomas) whose professional and personal identities are dangerously intertwined.
By the time Mann finally got Heat into production, the obsessive, self-contained professional had become his signature protagonist. As a result, he could confidently build his epic around two such characters.
Two Versions of the Same Man
Once Vincent Hanna catches the case, the real architecture of Heat surfaces. Hanna and McCauley are built as mirror images down to the smallest detail, and Mann tells us this in the writing before either man says a word to the other.
McCauley's introduction on the page spells out his governing rule directly: he keeps "no steady woman or any encumbrance," his life arranged so there's "nothing he couldn't walk from in 30 seconds flat." It's the thesis statement for his entire arc, planted on page one.
Hanna's version of the same wound is telegraphed through domestic failure rather than a stated code. After a late night on a homicide, he snaps at his wife over an overcooked dinner, then catches himself: "There's three dead bodies in an alley off Adams... I'm really sorry the lamb got overcooked." Justine doesn't respond. She merely rises from the table and goes to their bedroom. Despite regretting what he said, Hanna doesn't go after her; he watches TV instead. The writing is on the wall for their marriage.
McCauley and Hanna both define themselves entirely through competence at a job that consumes every hour they have. Romantic relationships are transitory: mere distractions if not outright obstacles.
Building From One Image and Central Scene
Mann has said the script was constructed backward from its final image: Hanna kneeling beside McCauley, holding his hand in the final moments. Once he had that ending, everything before was created to earn it, and the pivot making it possible is the coffee shop conversation roughly halfway through the script, the only scene where both men drop the professional posture they wear for everyone else.
McCauley tells Hanna flatly, "I do what I do best. I take scores," and Hanna doesn't argue, because he's doing the same thing chasing him. A few lines later, asked if he'd walk out on the woman he loves without even saying goodbye, McCauley answers in three words: "That's the discipline." Neither man is performing for the other.


This is internal conflict and external conflict running through the same four pages of dialogue; it's the difference between a scene that just moves the plot and one that also moves people. The external situation is simple: a cop and a thief, face to face, each capable of ending the other. The internal conflict is what actually charges the scene, because both men are confessing, in the middle of that situation, that the choice they've made about how to live has cost them the thing most people spend their lives protecting.
Neither backs down from the choice they've made. That refusal is what makes the scene a character study versus a stock "cat and mouse" exchange, and it's the moment that shows screenwriters how to write a revelatory scene without either character blinking.
And understanding these two men, every turn from the bank job onward hits differently.
Character Generates Plot
The clearest proof that character generates plot in Heat happens after McCauley has gotten clear with Eady, his lover (Amy Brenneman), headed for the airport and a new life. McCauley has broken his own thirty-second rule exactly once in the entire film, letting himself fall for Eady. His middleman calls with Waingro's location: a homicidal recruit who brought heat on McCauley and his crew after he turned their armored car theft into a bloodbath. Now McCauley is faced with a choice: get on the plane, or go settle his score. He knows better, and yet…
He goes anyway.
This single decision dictates McCauley's fate and forces him to walk away from the woman he loves. It also draws Hanna back into the frame for the final showdown and the closing image on that airport runway. Mann allowed his characters to take him to the ending: the final image that inspired it all.


Chris Shiherlis (Val Kilmer), McCauley's loyal but reckless safecracker, gets the same treatment in miniature. His wife Charlene (Ashley Judd) has agreed to help the police catch him, and at the last second, in a single, silent gesture, she waves him off the trap instead of walking him into it.
Earlier in the script, Chris tells McCauley he'd rather "go ten rounds with Jesus Christ" than deal with her, but that she and their son "save my life, man, every day." That confession is the whole marriage in one line, and it's why Charlene's wave-off lands as character logic instead of a plot convenience. Mann earned it earlier.
Building Your Own Multi-Character Engine
Want to write a script that tracks multiple characters with strong emotional through lines?
Start by giving your main characters, whether they're protagonists or antagonists, a worldview and one defining rule for how they live. It doesn't need to be spoken as concisely as McCauley's thirty-second rule, but it should be specific enough to state in one sentence and flexible enough that it can be tested later on.
Plant the rule early, and give it to the reader directly, the way Mann does in McCauley's introduction. Also convey it through behavior and a beat of self-aware regret, like the scene with Hanna and the overcooked lamb. A rule stated in the description is just information. A rule conveyed through character, how they react to something, becomes a through-line the reader tracks without being told to.
Then write a scene, ideally near your midpoint, where your main character finally says the cost of that rule out loud to the only other person who'd understand it. That scene becomes the spine everything else hangs off, the way the coffee shop scene is the spine of Heat.
From there, build your plot's biggest turns out of a character breaking their own rule under pressure, and make sure the break costs them something specific to who they are, not something generic to the genre. And ask yourself: if a different but competent character stood in your protagonist's shoes at the climax, would the story end the same way?
If yes, your plot is driving your character. If only this character, carrying this specific burden, would make this specific choice…
Your character is driving your plot.