Optimus Prime from the first movie struck that balance pretty well IMO. He was true to his core G1 character in terms of being the heroic messiah-like saviour archetype... willing to sacrifice himself to destroy the AllSpark, and even when Sam pushed the Cube into Megatron's chest he shouted,
"No, Sam!" and then lamented over the death of Megatron saying,
"You left me no choice, brother." This exemplifies the deep spring of compassion that we know G1 Optimus Prime for. But the new element that the movie brought to Optimus Prime was that he was not hesitant to quickly dispense of Decepticon combatants in battle, such as the way that he beheaded Bonecrusher on the highway. This was not done out of malice, anger or vengeance, but out of necessity (the needs of the many outweigh the needs of the few). Bonecrusher's attack was threatening the lives of human civilians -- a whole bus load of people were already dead. Optimus Prime had no choice but to kill Bonecrusher in order to save human lives. A more G1-accurate Optimus Prime would have been more likely to abstain from finishing off Bonecrusher, allowing him to
escape and endanger more lives. If you look at all the criticism that the first film received, nobody ever complains about the way that Optimus Prime was portrayed. Some people complain about his cosmetic looks, such as
being a long nose truck or
a Prime with chopper flames, but these are just superficial elements (much like Deadpool's costume). What really matters is his persona, which I think the first movie did pretty well (they kept it simple and it worked).