Page 1 of 1

suggestions for a replay-GUI

Posted: 26 Jun 2005, 13:22
by colorblind
I really like replays. Not only are they fun to watch, they're also a good way to learn the weaks spots of yourself and your enemy. But the thing is, I keep switching from side to side with the ".team x" command to see the amount of metal / energy produced by the different teams, and to keep track of the various Lines of Sight. I find this a real pain in the ass.

I'd like to propose something of an replay-GUI, which would have to have at least the following features:
  • On-screen metal / energy bars for every player in the game. They'd probably need to be resized with a bit respect to the current income-bars if you have an 8 player game ...
  • Buttons to switch from the Spectator mode to any one of the teams and back.
  • The standard play-pause-forward-etc buttons you find on any decent mediaplayer, just because the first few minutes usually are quite boring.
I don't know if the latter is possible, because I don't have a clue how the SY programmed the replay format. But the first two shouldn't be a problem. And while we're at it, the following would also be nice:
  • Ability to add commments (e.g. "here player x makes a crucial mistake") to specific times.
  • Bookmarks to speficic times and places (e.g. "jump to the epic battle immediately").
That's all I can think of right now. It would probably make watching replays a whole lot more fun (if not a whole lot easier). Any further suggestions?

Posted: 26 Jun 2005, 13:24
by Min3mat
wow that would rock also i'd really like to have a button which shows the cursors of the players so that you can see what they are doing in detail! :) a replay GUI would be better than (dare i say it) mature cheddar cheese...mmmm...cheese :twisted:

Posted: 26 Jun 2005, 13:56
by Torrasque
# The standard play-pause-forward-etc buttons you find on any decent mediaplayer, just because the first few minutes usually are quite boring.
You can us + and - to set the speed you like.
I would like a "goto" command like in TAdemo Recorder. (because I can't set the game to +10 all the time, or my explode)
* Ability to add commments (e.g. "here player x makes a crucial mistake") to specific times.
* Bookmarks to speficic times and places (e.g. "jump to the epic battle immediately").
That is a really good idea.

Posted: 26 Jun 2005, 14:03
by zwzsg
Auto-skip pause. Especially the pause at the start when waiting for other players. Haven't tested with latest version, but last time I replayed a game where I had been waiting for 15mins to someone to join by IP, there were 15mins of idleness at the beginning of the replay.

Posted: 26 Jun 2005, 19:49
by SJ
Replays havent really received any work at all, they are just possible as a byproduct of how the network format works. But sure it would be good if someone would improve that part (personally I have other stuff i prioritize more)

idea: keyframes

Posted: 07 Jul 2005, 13:36
by colorblind
From what I can figure a replay is nothing more than the whole networkbuffer written to a file. As Spring replays this file, it simply executes the commands that are in that network buffer. Am I right?

Now, if you want to forward the replay to, say, from 1 to 30 minutes, Spring would have to execute all commands given in those 29 minutes to get to the new situation. That would mean a lot of (wastefull) calculation, and would take a long time (I'm only guessing here, correct me if I'm wrong).

This is a lot like the MPG file format: it only stores the changes in the situation in order to get a compact file size. In MPG the forwarding-issue is aptly solved by introducing keyframes: every 10 seconds or so the whole image is stored, not only the changes from the old to the new.

So if we were to have an effective replay-GUI, the Spring replays would probably also need to have some keyframes in them. These keyframes are then simply a saved set of the situation (all units, buildings, projectiles, resources, etc): in short, a savegame.

This is just an idea, and I'm not a C++ programmer. Would anybody be so kind as to see how feasible this idea is? Imho it would certainly kick ass ...