For general explanations, it's better to see the posts you and Darius (in his comment) mentioned. Here I focus on specific issues.
Summary:
- 最後に立っていたものが勝者だ
Who was standing at the end {is / will be} the winner.
or Who {is / will be} standing at the end {becomes / will become} the winner. .........(*1)
- 最後に立っているものが勝者だ
The winner {is / will be} who {is / will be} standing at the end.
or Who {is / will be} standing at the end equals to the winner. .........(*2)
- 最後に立ったものが勝者だ
Who stood up last {is / will be} the winner.
Discussions:
There are two factors you should take care of.
First, the verb 立つ
means "to stand up", not "to stand". The "standing" (立っている
) sense is only possible as its result. That's why your third example is the odd one out. What I imagined was a chicken game sitting on hot chair as long as possible.
Your first and second examples both could translate the English sentence, "The last one standing is the winner." So, what's the difference? It's very subtle, but put shortly, the first one is what you'd typically say when you think: "If someone's standing alone, then he/she wins.", while the second one is typically used when you think: "I'll know who's the winner by seeing someone's standing alone".
The difference eventually comes from that Japanese "past tense particle" -た
doesn't exactly means what happened in past, but what was confirmed in past. In the first sentence, you first judge there's only one person standing, and in the next step, you judge that person wins. Thus I chose verb become in my translation (*1). On the other hand, the second one insists that the two judgments are possible in a overlapped time range. Usually the interpretation has no problem, like 立っているものが勝者だ
sounds perfectly natural, but in this specific case, 最後に
"at the end" inevitably evokes the feeling that the only timing to judge the "standing" is the very moment a match ends, therefore you couldn't shake off some unnatural ring except you're telling a solid, universal fact (*2).