Register


Active : 7046
Logged in : 1869
Time: 02:17 KST

User Streams
84 online (13 live)
Tournament Roundup #3
[OSL] The Quarterfinals
The Liquid Weekly #4
[MLG] Raleigh Recap
[MSL] Summit of the Symphony
[MLG] Raleigh TL Blog
TL Interviews MorroW!
[MSL] Quarterfinals and Se…
Small Vod Thread.
TL.net Ten Commandments
All-Time Pro Scene Music
How would you rank the n…
When a gamer gets old.
Rocket Jump
September Desktop Thread
Japanese model confesses…
Final Fantasy 14: Online
League of Legends
EVE Corporation
[Pokemon Soul Silver] Choo…
So you think you can multi…
Interview to TL community
TL Meetup: NYC - September…
TL Health and Fitness Init…
The Official CellaWeRRa Fa…
London Ontario Community
Computer Build Resource Th…
Can my computer fit a duel…
Launching two instances of…
[SC2] Starcraft II requir…
Using laptop battery the r…
The battle.net authentic…
What is your Starcraft q…
What do you set your lif…
New social network & Tea…
Demuslim gonna Cast the …
Trick to spot obervers w…
[ESL] Go4SC2 Final (August)
[GSL] About GSL Streams an…
Showmatch: HuK vs MorroW
"Caster Cast Themselves" T…
[UK&Ire]Minis!
Blink vs Charge
[D] TvT No Gas all in
Roaches! Perfect counter t…
[D] PvZ: Stargate/TC => DT…
Fake 2 gate into fast colo…
Brood War Units
Q: Space station bottom el…
(2) Vast Venue (Giant 1v1 …
[Doodad Hunt] Official Ope…
The Star Strikers (a very …
Secret Achievement?
all in - hard difficulty (…
Lost Viking - Hardest Achi…
Post your Easter Eggs (pur…
Tychus - Why? [Spoiler]
[Update] Latest in KeSPA…
[Interview] Korean Air O…
New Map! Tantrum Obs
Awesome/confusing BM
Question regarding map-m…
SKT1 Players Perform Gir…
[OSL] Semi-Final A Jaedong…
ICC Who is Who Season 14
[MSL] Grand Final
[R&S] WCG USA 2010 Qualifi…
ICC Who is Who Season 13
[Q] TvT problem
[G] TvP U-238 Build
! [G] Stylish's FPVods [06…
[Q] PvZ scouting vs. hydra…
ToSsGirL - Legend
Sse[KaL] - Siz)Kal
Dream.t)Marine - chobo]1st[
-Really.Mass- - Winners.IcaruS
TLAF-Liquid`Tyler - KoreanSupreme
Website Feedback

Closed Threads

IRC Chat (1530 users)
irc.quakenet.org #teamliquid

IRC Web Client

Vent: 65 users

New to Team Liquid? Register here!

1.16.1 repfix (pause/chat)

Forum index > Brood War 1 2 3 Next All
  Python_Max   Ukraine. January 26 2009 01:14. Posts 51Profile # 
RepFix is a BWL/ChaosLauncher plugin which fixes StarCraft's (1.16.1) crash when watching a replay with chat text recorded while game was paused.

Download v. 0.0.0.4: http://depositfiles.com/files/wk71bm2ie

The bug itself seems to be very old.
Basically replay action processing looks like:
1) read the actions for next tick and copy actions data to the buffer
2) wait until that tick comes, read actions from the buffer and execute

When game is paused the tick remains unchanged, so every chat message written while game paused has been recorded with that tick when game was paused.
The problem is in that the buffer in which actions are copied for execution is too small. I believe about 12 messages are enough to make it overflow. And when overflow happens the data overrides neighbor memory areas in which are other variables located.The consequences can be very different and depend on amount of messages has been recorded during pause.

What I did is a replacement of static buffer with dynamic one.
1) when copying actions to the buffer:
1.1) when overwrite - allocate new buffer, write data to the new buffer
1.2) when append (multiple actions for a single tick) - append to the previously allocated buffer increasing its size if needed
2) when reading from a static buffer - return a pointer to the dynamic buffer instead of static

Plugin patches StarCraft's code, so use it on your own risk!

I will be very appreciated for any testing/bugreports.
Later I will merge this fix into ICCup Launcher.

EDIT: It has nothing to do with saving a replay, it just fixes a playback
You need this only when watching a replay not playing a game.

Thanks.


PS: I believe the main mistake of BW developers was to count chat text as game action. I would rather record/read it in a different way. But I'm not the one who decide ^^

EDIT: http://www.iccup.com/starcraft/forum/general_forum/starcraft_forum_/50888.html?1232900679

EDIT2: the bug is old, but it was impossible to produce so many actions for a single tick... before RWT was implemented! Because player was unable to make game actions while game paused. Thats why I believe that text messages should not count as game actions.

UPDATE: v. 0.0.0.2 should work online now.
UPDATE: v. 0.0.0.3 fixed action loss in bnet-mode.
UPDATE: v. 0.0.0.4 fixed activation behavior (when replay starts)
Last edit: 2009-01-27 17:40:07
Old Post

  fusionsdf   Canada. January 26 2009 01:17. Posts 14626Profile Blog # 
foreign community: 26
blizzard devs: 2

----
nice work, thanks :D
Last edit: 2009-01-26 01:18:32
MyDream fan | No longer a savior fan
ᶫᵒᵛᵉᵧₒᵤ. (except savior)
Old Post

  GTR   Oz. January 26 2009 01:25. Posts 28016Profile Blog # 
Nice!

Uploaded onto TL webspace because host sites suck!

Here!
최설리 ♡
밀크쉐이크 바닐라 아이스크림
Old Post

  Racenilatr   United States. January 26 2009 01:26. Posts 2756Profile Blog # 
very awsome. Thanks!

Btw:Mega Upload doesn't suck that badly
 
Old Post

  Python_Max   Ukraine. January 26 2009 01:27. Posts 51Profile # 

On January 26 2009 01:17 fusionsdf wrote:
foreign community: 26
blizzard devs: 2


Sorry don't get this :D
Old Post

  freelander   Hungary. January 26 2009 01:29. Posts 3038Profile Blog # 

On January 26 2009 01:27 Python_Max wrote:

Show nested quote +


Sorry don't get this :D


score
Never compromise.
Old Post

  IzzyCraft   United States. January 26 2009 01:32. Posts 4487Profile Blog # 
Is that 26 really meaning something vs the 2 what is the 2 blizzard gets?
I have ass for brains so,
even when I shit I'm droping knowledge.
Old Post

  Cloud   Sexico. January 26 2009 01:34. Posts 5136Profile Blog # 
Like... its a JOKE dude, dont take it so seriously..
BlueLaguna on West, msg for game.
Old Post

  MasterReY   Germany. January 26 2009 01:34. Posts 2153Profile Blog # 
wow great THANKS !
Get.ReY ~ Going effective together ~ Biggest Reach fan on TL.net (Don't even dare to mention LR now)
Old Post

  MasterOfChaos   Germany. January 26 2009 01:37. Posts 2266Profile Blog # 
nice
Starcraft had(I think it was fixed in 1.15.0) a bug where if the data for a replayframe was >255 bytes the replay got corruped. In that patch they corrected it to start a new replayframe with the same framenumber containing the remaining commands which apparently fixed the problem(PP did it way before blizzard by the way). So I'm surprised that chat cause these problems, while multicommands do not. They generate many commands in one frame and corrupted the replay before the fix.
If you give me a username written by the hand of the most honest of men, I will find something in it which will ban him.
Old Post

  Doso   Germany. January 26 2009 01:37. Posts 499Profile # 
I loaded this into Chaoslauncher.

When I am trying to connect to Battle.net (Europe) with English StarcraftI get an error saying that Starcraft can't verify the application version. A friend of mine has the same problem.
Old Post

  Python_Max   Ukraine. January 26 2009 01:41. Posts 51Profile # 

On January 26 2009 01:37 MasterOfChaos wrote:
nice
Starcraft had(I think it was fixed in 1.15.0) a bug where if the data for a replayframe was >255 bytes the replay got corruped. In that patch they corrected it to start a new replayframe with the same framenumber containing the remaining commands which apparently fixed the problem(PP did it way before blizzard by the way). So I'm surprised that chat cause these problems, while multicommands do not. They generate many commands in one frame and corrupted the replay before the fix.

Each message action is 82 bytes long. I think such amount of data (per tick) as 12-15 messages was not reached yet, until RWT xD
Last edit: 2009-01-26 01:43:27
Old Post

  Python_Max   Ukraine. January 26 2009 01:42. Posts 51Profile # 

On January 26 2009 01:37 Doso wrote:
I loaded this into Chaoslauncher.

When I am trying to connect to Battle.net (Europe) with English StarcraftI get an error saying that Starcraft can't verify the application version. A friend of mine has the same problem.

OMG, I just patch it when started, but seems I should wait until replay starts then patch...
Old Post

  tec27   United States. January 26 2009 02:09. Posts 1878Profile Blog # 
Very nice job, Python But yeah, try to make it wait til a replay is loaded

Offsets I use for that:
006D0F14 - byte, 0 for out of, 1 for in replay
006D11EC - byte, 0 for out of game, 1 for ingame
(You have to use them both, because the replay one will for some reason trigger when you first enter the menu to load a replay (the file selection part). Actually, now that I think about it, using only the first one would probably work fine for this application)
Last edit: 2009-01-26 02:10:19
Current APMAlert2 version: 0.1 (8/10) [Working for most people now]
Old Post

  imBLIND   United States. January 26 2009 03:31. Posts 1380Profile Blog # 
i don't think you can use this online cause he modded the code of starcraft...
im deaf
Old Post

  MasterOfChaos   Germany. January 26 2009 03:36. Posts 2266Profile Blog # 
no it's just that he patches to early and thus fails the revision check. He just needs to patch only during a replay. But of course anybody without this fix who watches the replay with you will still crash.
If you give me a username written by the hand of the most honest of men, I will find something in it which will ban him.
Old Post

  liger13   United States. January 26 2009 03:36. Posts 1060Profile Blog # 

On January 26 2009 03:31 imBLIND wrote:
i don't think you can use this online cause he modded the code of starcraft...

at least it might speed up Blizz's patch ...
+ Show Spoiler +
I feel like pwning noobs
Old Post

  Python_Max   Ukraine. January 26 2009 03:53. Posts 51Profile # 
UPDATE: v. 0.0.0.2 should work online now.
Old Post

  prOxi.Beater   Denmark. January 26 2009 04:06. Posts 512Profile # 
You can't use this fix online, but it's still nice to have for offline use.
Nobody beats the Beater
Old Post

  Python_Max   Ukraine. January 26 2009 04:17. Posts 51Profile # 

On January 26 2009 04:06 prOxi.Beater wrote:
You can't use this fix online, but it's still nice to have for offline use.

Why?
Old Post

 1 2 3 Next All
 
Mo Tu We Th Fr Sa Su
  12345
6789101112
13141516171819
20212223242526
27282930   
TLPD
League Standings:
» Korean Air OSL S2
» Bigfile MSL
Tournament News Coverage
Tournament Brackets/Qualifiers
Tournament Vods
All In The Family
Brave New World
Lamb to Lion: By.Baby
On Waxen Wings
End of the Line
1. Jaedong 6. Bisu
2. Flash 7. Stork[gm]
3. Fantasy 8. Light[aLive]
4. Effort 9. free[gm]
5. Sea[Shield] 10. BeSt[HyO]
   Comments (868)
Will you pay for GOM's GSL stream?

Comments (219)      Older Polls

The Little App Factory

The opinions expressed by our users do not reflect the official position of TeamLiquid.net or its staff.

Advertising Privacy Contact

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2002-2010 Teamliquid.net. All Rights Reserved