SGFs playback by move time

Is there any program which can take an SGF with move time data (eg. from KGS) and play back the moves at the original speed?

I found the idea being discussed as early as 2005.

If not, then perhaps a new function for BesoGo?


I vaguely remember this being discussed not so long ago, on another thread. My faulty memory says @Vsotvep mentioned something about seconds stored in the sgf and it went from there, but I don’t remember any more details, sorry…


On issue is the most SGF files do not store time per move, but rather instead the time left on each player’s clock. In some cases, depending on the timing system, it is possible to work out how much time was spent on each moves, but sometimes it is ambiguous.

However, this is only the case for previous SGF file formats (version 4 and earlier). In version 5, which I think is still under development, I believe there is a proposal to record the time actually spent on each mode.

Does KGS currently record the actual time spent in their SGF files?

By the way, are you currently using BesoGo often? If so, glad to hear it. Let me know if you have other suggestions as well.


Time / move how it’s displayed on GoKibitz when GoKibitz receives an SGF from KGS.

Whether or not GoKibitz is processing the SGF data for display I don’t know. I doubt it.

Here’s an example, admittedly not the best since it records a blitz game.

1 Like

It’s quite possible that KGS is writing the SGF file in a non-standard way, and GoKibitz is aware of and taking advantage of that. It’s quite common to find non-conforming SGF usage.

Do you happen to have an SGF from KGS on hand?

1 Like

My own KGS SGFs went down with my last laptop.

I have my Corona tournament games, I think @yebellz had to re-upload them on OGS because something was off.

I started using it a bit because I read there was some issues with the latest sabaki and I had some trouble installing it also.

I was debating about whether having a toggle for move numbers would be useful, either for the entire game say the main variation, or say move numbers since the last branch for variations.

1 Like

I still use Drago since it’s what I’m used to.

I’ll probably try out BesoGo and perhaps Sabaki as well pretty soon, though.

1 Like

That SGF is recorded in the standard SGF fashion, tracking time left for each player. GoKibitz must be processing that data to determine how much time was spent on each move. This is possible during the simple (main) timing portion of the byo-yomi system.

However, for other systems, like Fischer (when spilling time), or byo-yomi during the overtime periods), it becomes a bit ambiguous to work out precisely how much time was spent on each move, if only “time left” is recorded.


Yes, I highly recommend BesoGo. Best SGF editor, viewer, and Go software ever! Definitely no conflicts of interest here


I’m not sure I understand the exact reason why time spent can’t be reliably extrapolated from time remaining. Could you perhaps give an example or two?

And I’d expect any ambiguity to be addressable with a time system tag, even if nonstandard.

1 Like

There is already a tag for specifying the timing system particulars, but ambiguity can remain, even when you are aware of the time system used.

Suppose you are using Fischer timing, and have 10 minutes to start, 10 minutes maximum, and +1 minute increment per move.

Let’s say you have 9:35 left on your clock at the beginning of a particular turn (which is recorded on your previous move). If you take 35 seconds or less on your current move, you will have 10:00 left on your clock after that turn (recorded for that move). If that’s all that is recorded, you cannot determine from the record whether it took you 5 seconds or 30 seconds to play that move. You can still infer some information from the record, especially when you are not maxing out your clock, but it is at a reduced level of precision. I guess software could instead provide the possible limits in this case (like saying “time spent was between 0 and 35 seconds”).

During the overtime periods of byo-yomi, I think that all that would typically be recorded is how much overtime periods you have left. In this case, the time spent inference is effectively quantized to multiples of the byo-yomi period length.


So, was there a conclusion to this discussion? Does KGS do weird things with the sgfs, or is it just an estimate? That could be wrong as discussed above. I don’t play on KGS so I can’t check. But I heard that’s one of nicer feature KGS has that OGS doesn’t have yet.

I confirm that during byo-yomi, KGS only records the number of byo-yomi periods left.

1 Like