• Log InLog In
  • Register
Liquid`
TeamLiquid Liquipedia LiquidDota LiquidLegends
EST 15:45
CET 21:45
KST 05:45
  • 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
Super Tournament 1 - RO16 Day 1 Preview (2021)5BSL - Season 1121Trap wins DreamHack: Last Chance 202118DH Last Chance: RO16 Group C Preview8[ASTL2] Power Rank28
Community News
Blizzard Team 1 (SC:R/SC2 Devs) was dissolved/restructured in October100$9,000 WardiTV 2021 - Jan 23-Feb 733Cheeseadelphia Winter Championship $10K Tournament - Jan 23-2451IEM Katowice 2021 to be held online, prize money redistributed61Super Tournament 1 (2021) bracket39
StarCraft 2
General
Super Tournament 1 - RO16 Day 1 Preview (2021) Blizzard Team 1 (SC:R/SC2 Devs) was dissolved/restructured in October New ladder maps for first season of 2021 ? Trap wins DreamHack: Last Chance 2021 Serral and Reynor in AoE2/SC2 crossover showmatch
Tourneys
[GSL 2021] Super Tournament 1 - Day 1 2021 NA Apprentice Cheeseadelphia Winter Championship $10K Tournament - Jan 23-24 The Three-Winged Angel ITaX Trovo Weekly#20 TIME, Rogue, Creator & Patien
Strategy
Select Larvae + Morph unit Rapidfire 4gate robo stalker all in vs T [G] PvZ Cheese: PartinG's "Adios Amigo" Build HuShang Tutorials
Custom Maps
Re-created map Ghost Tower Re-created map Wasteland [Q] BO Practice Custom Map
External Content
Sponsoring a Bo7 between 2 pros of your choice Mutation #249 Dark Ritual Mutation #248 Boom Town New edition of the Dank Templars SC2 newsletter!
Brood War
General
FlaSh on Arm Surgery, Sacrifices & Naivety Battle for Aiur: Bonyth vs Dewalt SC:R bunker command? BSL - Season 11 Blizzard Classic Games "quietly dismantled"
Tourneys
[BSL10] Gosu League [BWCL] Season 52 - Main Page BSL Season 11 - Ladder Tournaments - SIGN UP NOW! [ASTL2] Week 2 Day 2
Strategy
Zerg: Lurkers Vs Vessels FlaSh's TvP Gas FE into 3 Tank Pressure [subbed] What is this new pvt style with no arbiters? PvP Bonyth style 2 gate 3 zealot 21 gas guide
Other Games
Heroes of the Storm
Hots Newbie here HotS: WP and Funny Moments [HotS] NA Stands Supreme
General Games
Path of Exile Genshin Impact - Coop RPG Final Fantasy XIV Final Fantasy I・II・III Fanmade Remake Cyberpunk 2077
TL Mafia
[M][N] Mafia Mafia: Mafia Edition [M][N] I'm a cop you idiot! - Round 4 [M][T] Personality Mafia: Mini Edition Active List of Mafia Games 2.0 TL Mafia Plays: Diplomacy
Hearthstone
Is Hearthstone Gambling?
LoL General
LoL Tournaments
LoL Strategy
Community
General
Coronavirus and You US Politics Mega-thread [H] Real Estate Lawsuit Trading/Investing Thread Ask and answer stupid questions here!
Fan Clubs
The TY Fan Club INnoVation Fan Club NesTea Fan Club
Media & Entertainment
Anime Discussion Thread Korean Music Discussion [Movie] Legendary Picture's Godzilla (2014) [SCIFI Series] The Expanse Dragon Ball Super Discussion
Sports
NBA Season 2019-2020 2020 - 2021 Football Thread 2020 NFL and College Football Corona Season NHL 19-20: Hop Off my Kakko UFC/MMA Discussion Thread
Tech Support
Mac Mouse woes be gone! Locked out of Blizzard Account Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Ask TL Staff Anything Recent Gifted Posts
Blogs
My profession - Being A S…
jameswatts
GSL 2010 Season 1: A L…
TheRealNanMan
hazelynut's "3+1 = 4 pool"…
hazelynut
My fourth semester of colle…
DeNikSSB
TrapGod
EheroSC2
How Do We Improve Su…
waywardstrategy
My iPhone game
GroT
Trekkertent Saor DCF 4-season …
Tak3r
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1127 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
Canada15384 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
49081 Posts
January 25 2009 16:25 GMT
#3
Nice!

Uploaded onto TL webspace because host sites suck!

Here!
CommentatorTwitter: @GTR1H
Stream: http://www.twitch.tv/GTR1H
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
Hungary4089 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
Sexico5650 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
Germany2698 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
Germany747 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 States3449 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?
TL+ Member
imBLIND
Profile Blog Joined December 2006
United States2388 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
ZuKaCup
20:00
Clem vs Denver
zuka 44
Liquipedia
The Three-Winged Angel
17:00
Group B
GunGFuBanDa vs BlyLIVE!
Bly vs souL
IndyStarCraft 824
CreightonOlsen493
3DClanTV 233
maralekos12
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
mouzHeroMarine 1379
IndyStarCraft 824
uThermal 367
UpATree 150
DisKSc2 101
OG.YoGo 70
TKL 58
-ZergGirl 55
Railgan 11
JuggernautJason5
StarCraft: Brood War
Bonyth 123
EG.Machine 35
Terrorterran 0
Heroes of the Storm
Grubby1933
Counter-Strike: Global Offensive
x6flipin5644
byalli1418
Fnx 698
Super Smash Bros
Mew2King300
PPMD166
Other Games
Happy658
MaximusBlack285
Hui .203
StaRiX196
Trikslyr158
nookyyy 140
KnowMe22
ROOTMaSa5
Organizations
Counter-Strike: Global Offensive
ESL CS:GO2107
StarCraft 2
ESL.tv392
OGamingTV SC2 360
SC2 Vod Archives70
Blizzard YouTube
[ Show 26 non-featured ]
StarCraft 2
• Moistchipxx 152
• LilbowSC 110
• angryscii 27
• SCV Rush16
• Drizzs16
• LUISG 5
• Bosshoore 2
• aXEnki
• Genesis Gaming
• AlphaB_SC2
• Migwel
• Matiz_pl
• Laughngamez YouTube
• LaughNgamez Trovo
• Kozan
• IndyKCrew
• intothetv
SC2: Legacy of the Void
• KarlJayG
• PSISTORM Gaming
StarCraft: Brood War
• blackmanpl 53
• 80smullet 28
• Jedy-_-11
• sscaitournament2
• Surfer4life 1
• AfreecaTV YouTube
Other Games
• itshafu8907
Upcoming Events
Coach Pupil League
3h 16m
The NA Apprentice
4h 16m
OSC
5h 16m
GSL Super Tournament
11h 16m
Trap vs Dark
INnoVation vs Solar
sOs vs ByuN
DongRaeGu vs Dream
OSC
12h 16m
ITaX Trovo Weekly
16h 16m
Patience vs TIME
Rogue vs Creator
The Three-Winged Angel
20h 16m
MaNa vs Bee
Lambo vs MarineLorD
MarineLorD vs MaNa
Krystianer vs Lambo
Lambo vs MaNa
Shinhan Tank Proleague
23h 16m
Coach Pupil League
1d 3h
The NA Apprentice
1d 3h
[ Show More ]
The Three-Winged Angel
1d 20h
WardiTV 2021
1d 20h
BWCL
1d 22h
The NA Apprentice
2 days
Shinhan Tank Proleague
2 days
The NA Apprentice
3 days
PSISTORM Gaming Misc
3 days
Showmatch
3 days
PSISTORM Gaming Misc
3 days
The Three-Winged Angel
3 days
OSC
3 days
BSL: Ladder Tournament
3 days
Battle for Aiur
3 days
Bonyth vs Dewalt
Student Starcraft AI To…
3 days
The NA Apprentice
4 days
AfreecaTV Starcraft Tea…
4 days
WardiTV 2021
4 days
Trap vs ByuN
Trap vs Solar
Solar vs MaxPax
ByuN vs MaxPax
Trap vs MaxPax
Creator vs MaxPax
ByuN vs Creator
Trap vs Creator
The Three-Winged Angel
4 days
Platinum Heroes Events
4 days
Student Starcraft AI To…
4 days
ESL Pro Tour
5 days
ESL Pro Tour
5 days
ESL Pro Tour
6 days
AfreecaTV Starcraft Tea…
6 days
OlimoLeague
6 days
Liquipedia Results

Completed

Polish Starcraft League 3
Cheeseadelphia Winter
MCC 2021 Qualifier 1
BLAST Premier Global Final

Ongoing

Ultimate Battle
Shinhan Tank Proleague S4
BWCL Season 52
ASTL Season 2
BW Jeez weekly GF 2020
WardiTV 2021
2021 AfreecaTV GSL Super Tournament 1
MCC 2021 Qualifiers
NGS Storm Division S2 Quals
ESEA S36 - EU Premier
ESEA S36 - AU Premier
cs_summit 7

Upcoming

Bombastic StarLeague 11
Rogue City Rumble
IEM Katowice 2021
Masters Clash Champ. 2021
NGS Storm Division S2 Qual. 7
NGS Storm Division S2 Qual. 6
NGS Storm Division S2 Qual. 5
MCC 2021 Qualifier 2
NGS Storm Division S2 Qual. 4
DH Masters Spring 2021
BLAST Premier Spring Showd.
ESL Pro League Season 13
IEM Katowice 2021
BLAST Premier Spring Groups
DreamHack Open Jan 2021
ESEA S36 - NA Premier
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 © 2021 TLnet. All Rights Reserved.