ID:137588
 
In Tanks, the players list is sorted after each kill to place the highest scores at the top. The players statpanel displays the list by walking through the list, so it should change as soon as the list order changes. If you leave the players panel open and someone scores a kill, the order won't be updated until you switch to another panel and back again.

The Stat() code, in case it is helpful.
if(statpanel("Players"))
stat("Player",playheader)

for(var/obj/display/C in players)
C.suffix = "Score:[C.score] \nDeaths:[C.death]"
stat(C.tag,C)

This is a problem in the way stats are organized. Currently, if the first argument to stat is a text string, this serves as an index into the stat list, allowing you to modify the same value afterwards (like in a Stat() override specific to some special object type). To my knowledge, this behavior has not proven useful to anyone, so we may get rid of it at some point.

Anyway, I should be able to fix your problem without any drastic changes. Thanks for the report.

--Dan
In response to Dan
Heh, that feature got me once before too. I keep forgetting about it.