• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 01:25
CEST 07:25
KST 14:25
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Team Liquid Map Contest #21 - Presented by Monster Energy5uThermal's 2v2 Tour: $15,000 Main Event14Serral wins EWC 202549Tournament Spotlight: FEL Cracow 202510Power Rank - Esports World Cup 202580
Community News
Weekly Cups (Aug 4-10): MaxPax wins a triple5SC2's Safe House 2 - October 18 & 195Weekly Cups (Jul 28-Aug 3): herO doubles up6LiuLi Cup - August 2025 Tournaments5[BSL 2025] H2 - Team Wars, Weeklies & SB Ladder10
StarCraft 2
General
#1: Maru - Greatest Players of All Time RSL Revival patreon money discussion thread Team Liquid Map Contest #21 - Presented by Monster Energy Lambo Talks: The Future of SC2 and more... uThermal's 2v2 Tour: $15,000 Main Event
Tourneys
SEL Masters #5 - Korea vs Russia (SC Evo) Enki Epic Series #5 - TaeJa vs Classic (SC Evo) ByuN vs TaeJa Bo7 SC Evo Showmatch Global Tourney for College Students in September RSL: Revival, a new crowdfunded tournament series
Strategy
Custom Maps
External Content
Mutation # 486 Watch the Skies Mutation # 485 Death from Below Mutation # 484 Magnetic Pull Mutation #239 Bad Weather
Brood War
General
ASL20 Pre-season Tier List ranking! ASL Season 20 Ro24 Groups BSL Polish World Championship 2025 20-21 September BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion
Tourneys
KCM 2025 Season 3 [Megathread] Daily Proleagues Small VOD Thread 2.0 [ASL20] Online Qualifiers Day 2
Strategy
Simple Questions, Simple Answers Fighting Spirit mining rates [G] Mineral Boosting Muta micro map competition
Other Games
General Games
Stormgate/Frost Giant Megathread Total Annihilation Server - TAForever Nintendo Switch Thread Beyond All Reason [MMORPG] Tree of Savior (Successor of Ragnarok)
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread Vanilla Mini Mafia
Community
General
Bitcoin discussion thread Russo-Ukrainian War Thread The Games Industry And ATVI US Politics Mega-thread Things Aren’t Peaceful in Palestine
Fan Clubs
INnoVation Fan Club SKT1 Classic Fan Club!
Media & Entertainment
Anime Discussion Thread [\m/] Heavy Metal Thread [Manga] One Piece Movie Discussion! Korean Music Discussion
Sports
2024 - 2025 Football Thread TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion
World Cup 2022
Tech Support
Gtx660 graphics card replacement Installation of Windows 10 suck at "just a moment" Computer Build, Upgrade & Buying Resource Thread
TL Community
TeamLiquid Team Shirt On Sale The Automated Ban List
Blogs
Gaming After Dark: Poor Slee…
TrAiDoS
[Girl blog} My fema…
artosisisthebest
Sharpening the Filtration…
frozenclaw
ASL S20 English Commentary…
namkraft
from making sc maps to makin…
Husyelt
StarCraft improvement
iopq
Customize Sidebar...

Website Feedback

Closed Threads



Active: 428 users

Replay Rewind - a second look - Page 3

Forum Index > SC2 General
Post a Reply
Prev 1 2 3 4 5 6 7 Next All
Nitro68
Profile Blog Joined December 2007
France470 Posts
March 31 2009 20:14 GMT
#41
It's a little bit off topic but how does a replay work with random things ? Like, if you have 30% chance to hit against upperground units, how can a replay works everytime ? The random "seed" is in the replay ?
tec27
Profile Blog Joined June 2004
United States3700 Posts
Last Edited: 2009-03-31 20:15:42
March 31 2009 20:14 GMT
#42
On April 01 2009 03:44 SonuvBob wrote:
Show nested quote +
On March 31 2009 23:17 tec27 wrote:
On March 31 2009 19:48 HnR)Insane wrote:
On March 31 2009 17:08 tec27 wrote:
On March 31 2009 16:17 SonuvBob wrote:
On March 31 2009 16:09 araav wrote:
one thing that would be possible though, is create check-points in the game when nothing fancy is taking place, where everything essential is recorded. then rewinding would just jump through to these points.

CS's "viewdemo" does this. Probably wouldn't be too hard to create it as a plugin for SC.

Man I wish I understood SC's replay format better...

.rep itself is pretty well understood (except, so far as I know, the algorithm used for calculating the checksum). What you really need is to be able to read information about game state and write an entirely new game state on command.
Writing something to process the replays at accelerated speed and then store the checkpoints seems exponentially harder, as you'd be rewriting the SC engine yourself from scratch. (unless it's possible to hack it so that you can use speeds even faster than x16, but not sure how feasible that is!)

Actually, now that I think about it, you could probably abuse the save game functionality to save out game states while watching. And you could very likely run SC at speeds faster than x16, as all those update speeds are stored in memory and you could just change their timing values. I guess the major issue there is that game saving may take some time, and that would definitely slow down the process.

do it do it do it do it do it do it do it do it!

Maybe doable, the max speedup I can see getting (for caching the replay initially) is about 1.4 seconds per minute of gameplay (since each fastest frame is 42ms, and therefore the max we can speed the game up is to 1ms per frame). I guess thats reasonable, now I just need to figure out the optimal way to save game states

On April 01 2009 05:14 Nitro68 wrote:
It's a little bit off topic but how does a replay work with random things ? Like, if you have 30% chance to hit against upperground units, how can a replay works everytime ? The random "seed" is in the replay ?

Correct.
Can you jam with the console cowboys in cyberspace?
stk01001
Profile Joined September 2007
United States786 Posts
Last Edited: 2009-03-31 20:18:35
March 31 2009 20:16 GMT
#43
i know nothing about programming, all I do know is that your wrong, rewinding replays is not as easy as you say. If you understand how replays work, how starcraft works and have any logical thinking ability then it's pretty obvious your wrong..
a.k.a reLapSe ---
CharlieMurphy
Profile Blog Joined March 2006
United States22895 Posts
March 31 2009 22:09 GMT
#44
Wait , when did Drone drilling get removed? Wtf ?
..and then I would, ya know, check em'. (Aka SpoR)
404.Nintu
Profile Blog Joined May 2007
Canada1723 Posts
March 31 2009 22:46 GMT
#45
On April 01 2009 05:16 stk01001 wrote:
i know nothing about programming, all I do know is that your wrong, rewinding replays is not as easy as you say. If you understand how replays work, how starcraft works and have any logical thinking ability then it's pretty obvious your wrong..

A great post.

"I don't know if you're right or wrong, but I do know you're wrong and lack any logical thinking ability."

The concept of rewinding replays is simple, it's the technical aspect that makes it difficult. You seem like you're just trying to sound intelligent by flaming someone for being wrong, when you don't know how or why they're wrong. lol@TLstreetcred
"So, then did the American yum-yum clown monkey also represent the FCC?"
DeathSpank
Profile Blog Joined February 2009
United States1029 Posts
March 31 2009 22:47 GMT
#46
i can rewind your replays for you...
just reopen the replay and ultra fast fwd! XD
I win!
yes.
prOxi.swAMi
Profile Blog Joined November 2004
Australia3091 Posts
April 01 2009 01:12 GMT
#47
You've tried to simplify an extremely complex problem. It would be much easier to implement a "go to time x:xx" which would solve the problem by simply presenting the user with a "loading" animation while the replay actually goes back to the start, and fast forwards quickly to that position, and then shows you from that point.

This, imo, is the solution. (I didn't read page 2 and 3, sorry if someone alrdy posted this)
Oh no
DeathSpank
Profile Blog Joined February 2009
United States1029 Posts
April 01 2009 02:24 GMT
#48
asshole!
yes.
onmach
Profile Blog Joined March 2009
United States1241 Posts
April 01 2009 03:05 GMT
#49
The problem with playing back a movie of the game you've seen up to that point is not only would you have to save a high res version of the entire map, but you also couldn't interact with it. No selecting units, buildings, etc.

As for randomness, I'd bet that they seed a random based on game time, and perhaps the units id number. So basically it adds up (for example) the number of seconds played + the unique number of the unit that is firing, use that number to generate a random number which determines whether it hits a unit on hire ground. So during the game or during replay, the unit number and attack time will always match up causing the unit to either always miss or always hit, but the player would perceive it as random and be unable to predict such an outcome during a game.

As for what method will be used, they will probably use save checkpoints plus fast forwarding. The reason they'll do this is because they already had to write the save game code anyhow, so they might as well use it, and they already had to write the replay code that could go at any speed, so they'll slap those together in half a day, tweak the snapshot length until they have a happy medium between size and speed and get on with coding the rest of the game.

Of course it may turn out that fast forwarding is all they need, given that the game logic really isn't much more complex that it was in BW, unit pathing aside. So don't worry about it, it is hardly the worst engineering problem this team has had to deal with.
D10
Profile Blog Joined December 2007
Brazil3409 Posts
April 01 2009 03:39 GMT
#50
On March 31 2009 17:25 Bill307 wrote:
Oh yeah, and let's not forget how the game would also have to save the ending times of every single animation in the game.


But can you make it so that you are able to jump to a specific point in time of the replay ?

Lets suppose, and im a complete programming newb, that you are watching a replay and at 7:35 theres 2 battles going on.

Can you watch one battle in 1 place, then jump back to 7:35 (no reverse animatons nor rewind effect just starting it again and going at x60000 speed to that exact time) would it be possible ?

Because if some way of going back in the replay is doable at all, its all that counts, rewind effect for animations and shit are useless, unless you think the only cool thing about it is to grab the handle and see that shot flying in the air.
" We are not humans having spiritual experiences. - We are spirits having human experiences." - Pierre Teilhard de Chardin
Tyraz
Profile Blog Joined September 2008
New Zealand310 Posts
April 01 2009 04:28 GMT
#51
On April 01 2009 05:06 BluzMan wrote:
Hoohoho, no.

As a Java, C++ programmer you should certainly know the concept of hashing which is behind every data integrity check, associative array lookup and many more things. That, itself, is a small part of a larger concept - there are functions that are irreversibly introducing a loss of data, in which the input is not possible to reconstruct from output.

In a hash function, you can not theoretically reconstruct the input even if you know every nook and cranny of the algorithm and the output (trust me, I've tried). It's irreversible, because it implies information loss. While hashing itself doesn't have any use in gamestate chaging, many other irreversible operations do. Examples?

1) Pathfinding. Provided it doesn't calculate the whole path from A to B but updates it as the unit goes along an approximated one, the corresponding path from B to A will be different. Guess what? Pathing algorithms have non-linear computational difficulty, so this will surface up no matter how good the player's computer is. It is bound to happen. Desynch.

2) Physics. StarCraft II will not use animations for explosions and debris, it will use physics, meaning that a piece of scrap metal will behave like a physical object bouncing at landscape impurities. Will you be able to reconstruct it's path back to the origin? Hell no. Desynch or disable animations.

3) Many other fields where information loss happens which could theoretically be made two-way compartible, but that would require tons of work. Will not happen.

I'm sorry, but I doubt your programming credibility now.

+1
physics in particular... Since Havok is middleware i doubt they could 'reverse the physics'... And if they could, then you'd need to reprogram the engine to be able to work in reverse (i.e. negate all movement values including acceleration, velocity)... i suppose it doesn't help that it's 3d and your not working with sprites any more ether for reversing the animation...
100% Pure.
Llamaz
Profile Blog Joined April 2008
Australia90 Posts
April 01 2009 04:47 GMT
#52
Even if you could easily do this, I'd prefer current replay size > double size. It doesn't really make a difference considering how small it is, but I don't rewind my replays. I learn from my replays, and to learn I have to concentrate, which in turn means I understand whats going on and what has been done.
Plutonium
Profile Joined November 2007
United States2217 Posts
April 01 2009 05:03 GMT
#53
If it was that easy, R1ch would have already done it.
IdrA
Profile Blog Joined July 2004
United States11541 Posts
April 01 2009 06:33 GMT
#54
On April 01 2009 07:09 CharlieMurphy wrote:
Wait , when did Drone drilling get removed? Wtf ?

it didnt get removed, workers still stack and stuff, but the path finding and unit behavior is so clean now that they unstack and clear each other so fast that you dont get the same effect.

on the other hand they practically autosurround now so you can still hold off rushes with workers, easier than in sc1 actually.
http://www.splitreason.com/product/1152 release the gracken tshirt now available
Cheerio
Profile Blog Joined August 2007
Ukraine3178 Posts
Last Edited: 2009-04-01 09:06:31
April 01 2009 08:09 GMT
#55
The most simple way of including rewind for blizzard is just to make it possible to play the replay in comp's memory from the start to the point needed and resume it onscrean afterwards. Yes it will take awhile but no more than loading a saved game anyway. They can cut lots of corners (forget about scrapmetal falling down, it does not change the flow of the game so noone will really bother if in a resumed game the battlefield will be clear of blood and scrap) doing it so it will be much faster and less CPU demanding. You don't even need to save states of the replay while it is playing. Actually you do pretty much the same when you exit replay and reload it to the point you need, just the CPU will do this for you much faster with no need to draw graphics.
BluzMan
Profile Blog Joined April 2006
Russian Federation4235 Posts
April 01 2009 09:27 GMT
#56
Well, the man above is somewhat right.

Replay rewinding itself is possible (but to a limited extent and probably not online) if the game is making a shadow copy of every second's gamestate while the replay is being played. As soon as you finish the replay, the memory is freed. The player can set the size of the replay backwards cache depending on his system capabilities. Say I have 4 Gb Ram, and in SC II settings I set up the replay cache to 1000 Mb. I will be able to go back as deep as 300 seconds backwards from a given point, that's 5 minutes. That is possible, "true" backwards playing is definetely not.
You want 20 good men, but you need a bad pussy.
meegrean
Profile Joined May 2008
Thailand7699 Posts
April 01 2009 09:53 GMT
#57
I just don't want replays to take up a shitload of space like those Warcraft 3 ones.
Brood War loyalist
VIB
Profile Blog Joined November 2007
Brazil3567 Posts
April 01 2009 15:30 GMT
#58
You guys are really considering recording every unit's position/state/animframe/buffs/debuffs/whateverothervcariable every second (or maybe 60 times per second for a smooth 60fps rewind playback)? You have any idea how much memory that would be?

If you're going that far isn't it better to simply fraps it and play it on a video player?

Blizzard's idea already is to save it once every 3minute'ish so you can jump around (proly even adjustable to even less than that). That's good enough lol
Great people talk about ideas. Average people talk about things. Small people talk about other people.
Day[9]
Profile Blog Joined April 2003
United States7366 Posts
April 01 2009 17:13 GMT
#59
i'd imagine it's possible, but that it would be profoundly difficult.

the main reason Braid hasn't been released on a computer is due to hardware issues. Though the graphics look cartoonish and low level, the game demands such an insane amount of memory due to having to record the game state for that awesome "rewind" function. Without a super tripped out computer, you'd be living in frown town.

That said, I'm still curious how much memory/processing power a rewind function would ACTUALLY demand (because I'm a mathematician and <3 complexity theory hahaha). MIT just came out with a 1000ghz processor. Now they just need to hop on 1000gb of ram hahaha.
Whenever I encounter some little hitch, or some of my orbs get out of orbit, nothing pleases me so much as to make the crooked straight and crush down uneven places. www.day9.tv
lowlypawn
Profile Joined January 2009
United States241 Posts
April 01 2009 18:16 GMT
#60
On April 01 2009 18:53 meegrean wrote:
I just don't want replays to take up a shitload of space like those Warcraft 3 ones.


Hu??? The average 1v1 WC3 replay is 150KB. Most 4 - 6 player FFA games are less then 350KB...
Prev 1 2 3 4 5 6 7 Next All
Please log in or register to reply.
Live Events Refresh
PiGosaur Monday
00:00
#44
SteadfastSC76
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Nina 216
SteadfastSC 76
StarCraft: Brood War
Leta 691
ggaemo 264
Snow 150
sorry 106
JulyZerg 34
ajuk12(nOOB) 26
SilentControl 23
Icarus 6
Bale 6
Counter-Strike
Stewie2K704
Super Smash Bros
C9.Mang0833
amsayoshi35
Other Games
summit1g8692
shahzam718
WinterStarcraft514
ViBE182
Mew2King94
Maynarde91
Organizations
Other Games
gamesdonequick838
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 15 non-featured ]
StarCraft 2
• Berry_CruncH322
• davetesta17
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Rush1990
• Lourlo1236
• Stunt486
Upcoming Events
WardiTV Summer Champion…
5h 35m
The PondCast
1d 4h
WardiTV Summer Champion…
1d 5h
Replay Cast
1d 18h
LiuLi Cup
2 days
Online Event
3 days
SC Evo League
3 days
uThermal 2v2 Circuit
3 days
CSO Contender
3 days
Sparkling Tuna Cup
4 days
[ Show More ]
WardiTV Summer Champion…
4 days
SC Evo League
4 days
uThermal 2v2 Circuit
4 days
Afreeca Starleague
5 days
Sharp vs Ample
Larva vs Stork
Wardi Open
5 days
RotterdaM Event
5 days
Replay Cast
5 days
Replay Cast
6 days
Afreeca Starleague
6 days
JyJ vs TY
Bisu vs Speed
WardiTV Summer Champion…
6 days
Liquipedia Results

Completed

StarCon 2025 Philadelphia
FEL Cracow 2025
CC Div. A S7

Ongoing

Copa Latinoamericana 4
Jiahua Invitational
BSL 20 Team Wars
KCM Race Survival 2025 Season 3
BSL 21 Qualifiers
WardiTV Summer 2025
uThermal 2v2 Main Event
HCC Europe
BLAST Bounty Fall Qual
IEM Cologne 2025
FISSURE Playground #1
BLAST.tv Austin Major 2025

Upcoming

CSL Season 18: Qualifier 1
ASL Season 20
CSLAN 3
CSL 2025 AUTUMN (S18)
BSL Season 21
BSL 21 Team A
RSL Revival: Season 2
Maestros of the Game
SEL Season 2 Championship
PGL Masters Bucharest 2025
MESA Nomadic Masters Fall
Thunderpick World Champ.
CS Asia Championships 2025
Roobet Cup 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.