• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 11:23
CEST 17:23
KST 00:23
  • 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
Serral wins HomeStory Cup 2914Serral wins Maestros of the Game 243ByuL, and the Limitations of Standard Play3Team Liquid Map Contest #22: Results and Winners7Code S Season 2 (2026): RO4 and Finals Preview12
Community News
PIG STY FESTIVAL 8.0! (13 - 23 August)8Neeb returns to progaming; rejoins ONSYDE14Weekly Cups (July 20-26): Early returns on 5.0.16b8IntoTheTV X SOOP SC2 League : Weekly & Monthly5Clem: "I don't have that much hope in Blizzard"9
StarCraft 2
General
SC4ALL II: StarCraft 2 Player Announcement 1/8 Balance hotfix patch 5.0.16b (July 16) Neeb returns to progaming; rejoins ONSYDE Clem: "I don't have that much hope in Blizzard" Weekly Cups (July 20-26): Early returns on 5.0.16b
Tourneys
SC4ALL II: StarCraft 2 Official Announcement PIG STY FESTIVAL 8.0! (13 - 23 August) IntoTheTV X SOOP SC2 League : Weekly & Monthly Crank Gathers Season 4: BW vs SC2 Team League RSL Revival: Season 6 - Qualifiers and Main Event
Strategy
[G] Having the right mentality to improve
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 536 Railroad Switch The PondCast: SC2 News & Results Mutation # 535 Assembly of Vengeance Mutation # 534 Burning Evacuation
Brood War
General
Making an Online Broodwar Manager Game BW Drama: Terror's Debt Incident + C9 disbanding BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion ASL22 General Discussion
Tourneys
Escore Tournament - Season 3 [Megathread] Daily Proleagues 2v2v2v2 Tournament Small VOD Thread 2.0
Strategy
Fighting Spirit mining rates Odyssey Mineral Stack Saturation Simple Questions, Simple Answers PvT advise for noobs
Other Games
General Games
Nintendo Switch Thread Path of Exile ZeroSpace Early Access is Now Live! Stormgate/Frost Giant Megathread General RTS Discussion Thread
Dota 2
Looking for a Dota Mentor Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish TSM pausing esports and CLG Dead
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Community Thread TL Mafia Power Rank NeO.D_StephenKing vs This Guy From 1 Million Dance
Community
General
Canadian Politics Mega-thread Artificial Intelligence Thread Russo-Ukrainian War Thread US Politics Mega-thread European Politico-economics QA Mega-thread
Fan Clubs
The IdrA Fan Club The HerO Fan Club!
Media & Entertainment
Movie Discussion! Anime Discussion Thread Series you have seen recently... [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread 2026-27 Football Thread placeholder TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Simple Questions Simple Answers FPS when play League Of Legend on laptop
TL Community
Northern Ireland Global Starcraft The Automated Ban List
Blogs
What is a Gamer?
TrAiDoS
Hello guys!
LIN1s
ASL S22 English Commentary…
namkraft
Poker (part 2)
Nebuchad
An Exploration of th…
waywardstrategy
Customize Sidebar...

Website Feedback

Closed Threads



Active: 4549 users

1.16.1 repfix (pause/chat)

Forum Index > BW General
Post a Reply
1 2 3 Next All
Python_Max
Profile Joined November 2007
Ukraine51 Posts
Last Edited: 2009-01-27 08:40:07
January 25 2009 16:14 GMT
#1
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)
fusionsdf
Profile Blog Joined June 2006
Canada15390 Posts
Last Edited: 2009-01-25 16:18:32
January 25 2009 16:17 GMT
#2
foreign community: 26
blizzard devs: 2

----
nice work, thanks :D
SKT_Best: "I actually chose Protoss because it was so hard for me to defeat Protoss as a Terran. When I first started Brood War, my main race was Terran."
GTR
Profile Blog Joined September 2004
51665 Posts
January 25 2009 16:25 GMT
#3
Nice!

Uploaded onto TL webspace because host sites suck!

Here!
Commentator
Racenilatr
Profile Blog Joined August 2008
United States2756 Posts
January 25 2009 16:26 GMT
#4
very awsome. Thanks!

Btw:Mega Upload doesn't suck that badly
Python_Max
Profile Joined November 2007
Ukraine51 Posts
January 25 2009 16:27 GMT
#5
On January 26 2009 01:17 fusionsdf wrote:
foreign community: 26
blizzard devs: 2

Sorry don't get this :D
freelander
Profile Blog Joined December 2004
Hungary4707 Posts
January 25 2009 16:29 GMT
#6
On January 26 2009 01:27 Python_Max wrote:
Show nested quote +
On January 26 2009 01:17 fusionsdf wrote:
foreign community: 26
blizzard devs: 2

Sorry don't get this :D


score
And all is illuminated.
IzzyCraft
Profile Blog Joined June 2007
United States4487 Posts
January 25 2009 16:32 GMT
#7
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.
Cloud
Profile Blog Joined November 2004
Sexico5880 Posts
January 25 2009 16:34 GMT
#8
Like... its a JOKE dude, dont take it so seriously..
BlueLaguna on West, msg for game.
MasterReY
Profile Blog Joined August 2007
Germany2708 Posts
January 25 2009 16:34 GMT
#9
wow great THANKS !
https://www.twitch.tv/MasterReY/ ~ Biggest Reach fan on TL.net (Don't even dare to mention LR now) ~ R.I.P Violet ~ Developer of SCRChart
TL+ Member
MasterOfChaos
Profile Blog Joined April 2007
Germany2896 Posts
January 25 2009 16:37 GMT
#10
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.
LiquipediaOne eye to kill. Two eyes to live.
Doso
Profile Joined March 2008
Germany769 Posts
January 25 2009 16:37 GMT
#11
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.
Python_Max
Profile Joined November 2007
Ukraine51 Posts
Last Edited: 2009-01-25 16:43:27
January 25 2009 16:41 GMT
#12
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
Python_Max
Profile Joined November 2007
Ukraine51 Posts
January 25 2009 16:42 GMT
#13
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...
tec27
Profile Blog Joined June 2004
United States3702 Posts
Last Edited: 2009-01-25 17:10:19
January 25 2009 17:09 GMT
#14
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)
Can you jam with the console cowboys in cyberspace?
imBLIND
Profile Blog Joined December 2006
United States2626 Posts
January 25 2009 18:31 GMT
#15
i don't think you can use this online cause he modded the code of starcraft...
im deaf
MasterOfChaos
Profile Blog Joined April 2007
Germany2896 Posts
January 25 2009 18:36 GMT
#16
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.
LiquipediaOne eye to kill. Two eyes to live.
liger13
Profile Blog Joined February 2008
United States1060 Posts
January 25 2009 18:36 GMT
#17
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 +
might take a month and 1/2 instead of two
I feel like pwning noobs
Python_Max
Profile Joined November 2007
Ukraine51 Posts
January 25 2009 18:53 GMT
#18
UPDATE: v. 0.0.0.2 should work online now.
prOxi.Beater
Profile Joined December 2008
Denmark626 Posts
January 25 2009 19:06 GMT
#19
You can't use this fix online, but it's still nice to have for offline use.
Nobody beats the Beater
Python_Max
Profile Joined November 2007
Ukraine51 Posts
January 25 2009 19:17 GMT
#20
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?
1 2 3 Next All
Please log in or register to reply.
Live Events Refresh
Next event in 37m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
XaKoH 121
ProTech71
RushiSC 22
StarCraft: Brood War
Britney 39085
Calm 7980
Shuttle 1342
firebathero 1138
Mini 794
Stork 372
hero 320
Tasteless 270
Larva 269
Soma 199
[ Show more ]
Mong 173
Snow 85
Rush 59
Barracks 39
ToSsGirL 38
Pusan 37
sSak 31
NaDa 27
scan(afreeca) 26
sorry 25
Rock 22
Terrorterran 10
Dota 2
Gorgc8332
qojqva1927
420jenkins152
Counter-Strike
fl0m5001
Other Games
B2W.Neo1049
hiko997
Lowko702
FrodaN646
Liquid`VortiX137
crisheroes124
TKL 117
ToD114
QueenE65
Mew2King36
Trikslyr25
Organizations
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 14 non-featured ]
StarCraft 2
• intothetv
• AfreecaTV YouTube
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• C_a_k_e 2402
• masondota2425
League of Legends
• Jankos1779
• TFBlade1136
Upcoming Events
Big Brain Bouts
37m
Spirit vs sOs
GgMaChine vs Percival
Serral vs MaxPax
OSC
7h 7m
Replay Cast
8h 37m
Afreeca Starleague
12h 37m
RSL Revival
17h 37m
ByuN vs SHIN
Solar vs Lambo
WardiTV Summer Champion…
19h 37m
Afreeca Starleague
1d 12h
RSL Revival
1d 17h
Clem vs Serral
herO vs Rogue
WardiTV Summer Champion…
1d 20h
WardiTV Weekly
2 days
[ Show More ]
Sparkling Tuna Cup
3 days
PiGosaur Cup
4 days
Replay Cast
4 days
Kung Fu Cup
4 days
Replay Cast
5 days
The PondCast
5 days
Replay Cast
6 days
IntoTheTV X SOOP
6 days
Liquipedia Results

Completed

Proleague 2026-07-30
SCTL 2026 Spring
Eternal Conflict S2 Finale

Ongoing

CSL 2026 Summer (S21)
KCM Race Survival 2026 Season 3
Escore Tournament S3: W5
RSL Revival: Season 6
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026

Upcoming

ASL Season 22: Qualifier #1
ASL Season 22: Qualifier #2
K-JUNGMAN
Acropolis #5
Escore Tournament S3: W6
Escore Tournament S3: W7
Escore Tournament S3: W8
HSC XXX
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
PiG Sty Festival 8.0
Light Tournament 2026
ESL Pro League Season 24
Stake Ranked Episode 4
Logitech G Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #5
BLAST Open Fall 2026
Esports World Cup 2026
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 © 2026 TLnet. All Rights Reserved.