• Log InLog In
  • Register
Liquid`
TeamLiquid Liquipedia LiquidDota LiquidLegends
EST 13:44
CET 19:44
KST 03:44
  • 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
[TQ] Best of the Best Tour W3 Recap5IEM Katowice RO24 - Group D Preview7IEM Katowice - A Totally Unbiased Trap Preview49IEM Katowice - RO24 Group B Preview9IEM Katowice 2021 - RO24 Group A Preview14
Community News
IEM Katowice 2021 - 4 players advance to the RO827IEM Katowice 2021 - Playoff bracket57IEM Katowice RO24 - Group B & C results18BSL Season 11 - RO24 Group Stage - 26, 27 & 28 Feb22IEM Katowice - TY, Maru, Clem advance from Group A20
StarCraft 2
General
IEM Katowice - A Totally Unbiased Trap Preview IEM Katowice 2021 - 4 players advance to the RO8 IEM Katowice - TY, Maru, Clem advance from Group A IEM Katowice 2021 - Playoff bracket IEM Katowice RO24 - Group B & C results
Tourneys
[IEM 2021] Katowice World Championship - Quarterfinals 2021 NA Contender Season 2 [IEM 2021] Katowice World Championship - Round of 12 2021 StarCraft 2 BJ Destruction Season 1 Challenger's Cup
Strategy
[G] PvZ Cheese: PartinG's "Adios Amigo" Build Simple Questions Simple Answers HuShang Tutorials Select Larvae + Morph unit Rapidfire
Custom Maps
Nexus Wars 2021 GUIDE Re-created map Ghost Tower Re-created map Wasteland
External Content
Mutation # 253 World on Fire Mutation #252 Triple Threat Mutation #251 Burning Legion Mutation #250 Out of Order
Brood War
General
2021 ACS Season 1 Announced BGH auto balance -> http://bghmmr.eu/ BW General Discussion [StarCastTV] Update Thread Think Quick: Best of the Best Tour
Tourneys
Jeez Weekly 2021 Small VOD Thread 2.0 [ASL11] Map Test Tournament #3 [BSL11] RO24 - Group C & D - Saturday 18:30 CET !
Strategy
Simple Questions, Simple Answers Defusion by terrain – interesting Mine behaviour Sorry's TvP lategame Ghost strategies? More Brood War "Mysteries" explained
Other Games
Heroes of the Storm
HotS: WP and Funny Moments Welcome to the Heroes of the Storm forum! [HotS] 2020: A Year in the Nexus
General Games
Diablo 2 thread Genesis Rivals Invitational! CSGO Genshin Impact - Coop RPG Nintendo Switch Thread FF7 remake for PS4 announced
TL Mafia
TL Mafia Community Thread [M][N] Mafia Mafia: Mafia Edition {FlaSh}[Mini] Raceday [M][N] I'm a cop you idiot! - Round 4
Hearthstone
Is Hearthstone Gambling?
LoL General
LoL Tournaments
LoL Strategy
Community
General
US Politics Mega-thread Trading/Investing Thread Coronavirus and You Ask and answer stupid questions here! European Politico-economics QA Mega-thread
Fan Clubs
The TY Fan Club INnoVation Fan Club Cure Fan Club
Media & Entertainment
Comic Books [Manga] One Piece Korean Music Discussion [Manga] Shingeki no Kyojin Anime Discussion Thread
Sports
2020 - 2021 Football Thread 2020 NFL and College Football Corona Season NHL 21: Tony DeActivito Did Nazi That Coming UFC/MMA Discussion Thread Formula1 2019
Tech Support
Computer Build, Upgrade & Buying Resource Thread How do you decide if mobo/cpu dead? Stutter feeling...
TL Community
Ask TL Staff Anything The Automated Ban List
Blogs
Have it your way: a …
waywardstrategy
Balance Discussion
NonY
Yucatán Peninsula Travel Highl…
Tak3r
Singing "publically" for the…
JieXian
A Look Back At GSL Sea…
TheRealNanMan
A decade of Starcraft 2: 201…
Nakajin
IsoRTS Code
ChristianS
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1595 users

Who the hell coded 1.16?

Blogs > R1CH
Post a Reply
1 2 3 4 5 6 7 8 Next All
R1CH
Profile Blog Joined May 2007
Netherlands10032 Posts
December 16 2008 10:18 GMT
#1
So I finally got around to taking a look at the lag issues in 1.16. Seems someone at Blizzard thought it would be a good idea to throw a 10ms delay into the game loop AND a 5ms delay after processing the Windows message queue. 15ms of delays in a game that previously has 0ms of delays can mess up quite a few things, as evidenced by the problems the early versions of CPU Savior had. For a game with a pro scene like Starcraft, this really should never have made it past QA, if there even was any.

Why 15ms? Who knows. The most you need is 1ms to stop 100% CPU usage, which is what CPU Savior uses. They also added some delays onto the bnet screens (the game loop isn't run on the bnet screen, so the 15ms delays wouldn't work), very similar to the comments I made in the CPU Savior source code - except instead of delaying on infrequently-used parts of the code, there is a 5ms delay on code that is run very often - hence why the bnet screens feel so sluggish.

So what happens now? I could make a patch to fix the lag issues in 1.16, but what would that achieve? Iccup already is remaining on 1.15.3, KeSPA has shunned 1.16 and I would hope Blizzard already realizes what a disaster of a patch 1.16 is. Why are they taking so long to fix what I could do in a few hours? And who is responsible for this mess in the first place?

****
AdministratorTwitter: @R1CH_TL
TL+ Member
Carnac
Profile Blog Joined December 2003
Germany16614 Posts
December 16 2008 10:19 GMT
#2
random interns doing the patches now huh
ModeratorHi! I'm a .signature *virus*! Copy me into your ~/.signature to help me spread!
Plexa
Profile Blog Joined October 2005
Aotearoa38209 Posts
December 16 2008 10:23 GMT
#3
First step in making SC obsolete in preparation for SC2
Administrator~ Spirit will set you free ~
Bockit
Profile Blog Joined November 2004
Sydney2287 Posts
December 16 2008 10:23 GMT
#4
So when is Bliz hiring R1CH and taking him away from us?
Their are four errors in this sentance.
Plexa
Profile Blog Joined October 2005
Aotearoa38209 Posts
December 16 2008 10:24 GMT
#5
Fuck what we need is a huge petition -.-;
Administrator~ Spirit will set you free ~
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
December 16 2008 10:24 GMT
#6
"Eyes in the sky."
R1CH
Profile Blog Joined May 2007
Netherlands10032 Posts
December 16 2008 10:25 GMT
#7
On December 16 2008 19:24 Plexa wrote:
Fuck what we need is a huge petition -.-;

I'm sure they are very aware of the problem - if KeSPA aren't using 1.16 they surely have some contacts there to figure out why.
AdministratorTwitter: @R1CH_TL
TL+ Member
stenole
Profile Blog Joined April 2004
Norway858 Posts
December 16 2008 10:29 GMT
#8
Patch 1.16.1 is something we can all put on our christmas wishlists. I would want latency changer on the patch too, but I'm scared the programmers would mess that up also.
R1CH
Profile Blog Joined May 2007
Netherlands10032 Posts
December 16 2008 10:30 GMT
#9
As far as I'm aware there are already 1.16 versions of latency changer and other MoC plugins, but you have to download them manually.
AdministratorTwitter: @R1CH_TL
TL+ Member
freelander
Profile Blog Joined December 2004
Hungary4089 Posts
December 16 2008 10:33 GMT
#10
r1ch

I am just a beginner programmer so to say, how could you know the exact numbers of delaying?
I am curious
And all is illuminated.
stenole
Profile Blog Joined April 2004
Norway858 Posts
December 16 2008 10:35 GMT
#11
True, but having it part of the standard package would be a bonus (if it worked like it was supposed to). Some of us enjoy playing random public games now and then and it would be nice to have these be closer to a LAN experience.
Nyovne
Profile Joined March 2006
Netherlands18896 Posts
December 16 2008 10:35 GMT
#12
Decompiling?

Nice blog btw R1CH, and Plexa it's all a conspiracy!!
ModeratorFor remember, that in the end, some are born to live, others born to die. I belong to those last, born to burn, born to cry. For I shall remain alone... forsaken.
SpiritoftheTunA
Profile Blog Joined August 2006
United States6008 Posts
December 16 2008 10:38 GMT
#13
amen
posting on liquid sites in current year
R1CH
Profile Blog Joined May 2007
Netherlands10032 Posts
Last Edited: 2008-12-16 10:42:34
December 16 2008 10:41 GMT
#14
On December 16 2008 19:33 freelander wrote:
r1ch

I am just a beginner programmer so to say, how could you know the exact numbers of delaying?
I am curious

I used OllyDbg to disassemble BW while it was running and added breakpoints on Sleep until I found the main culprits:

CPU Disasm
004D1B69 6A 05 push 5
004D1B6B |. FF15 0CE14F00 call dword ptr ds:[<&KERNEL32.Sleep>]

This one is right after the Win32 message loop, so I'm assuming its some kind of delay executed when there are no pending messages. The above ASM code is equivalent to Sleep (5) in C.

CPU Disasm
004D92AB |. FF15 C4E04F00 call dword ptr ds:[<&KERNEL32.GetTickCount>]
004D92B1 |. 8B15 4C636D00 mov edx,dword ptr ds:[6D634C]
004D92B7 |. 8BC8 mov ecx,eax
004D92B9 |. 2BCA sub ecx,edx
004D92BB |. 83F9 0A cmp ecx,0A
004D92BE |. 73 16 jnb short 004D92D6
004D92C0 |. B8 0A000000 mov eax,0A
004D92C5 |. 2BC1 sub eax,ecx
004D92C7 |. 3D C8000000 cmp eax,0C8
004D92CC |. 73 07 jnb short 004D92D5
004D92CE 50 push eax
004D92CF FF15 0CE14F00 call dword ptr ds:[<&KERNEL32.Sleep>]
004D92D5 |> C3 retn

This is the nasty code - it checks how much time has passed since the game last checked the time (GetTickCount). If it's less than 10ms, it sleeps for whatever duration is needed to make 10ms with some kind of sanity check where it won't sleep for more than 200ms.
AdministratorTwitter: @R1CH_TL
TL+ Member
Ganfei
Profile Blog Joined August 2008
Taiwan1439 Posts
December 16 2008 10:46 GMT
#15
I'm glad someone knowledgeable looked at this patch and can actually say what is wrong with it. It has totally killed bnet for me and I resent the fact that Blizzard could be so irresponsible as to release such a crappy patch without apparently having any review or testing of it.
You are crushing me like a cheese sandwich
Nyovne
Profile Joined March 2006
Netherlands18896 Posts
December 16 2008 10:56 GMT
#16
It's a kind of magic.
ModeratorFor remember, that in the end, some are born to live, others born to die. I belong to those last, born to burn, born to cry. For I shall remain alone... forsaken.
Hot_Bid
Profile Blog Joined October 2003
Braavos36172 Posts
December 16 2008 10:56 GMT
#17
hahah i like reading r1chs posts its like another language
@Hot_Bid on Twitter - ESPORTS life since 2010 - http://i.imgur.com/U2psw.png
Hypnosis
Profile Blog Joined October 2007
United States2061 Posts
December 16 2008 11:00 GMT
#18
How the hell do you learn all this..

sick
Science without religion is lame, Religion without science is blind
IzzyCraft
Profile Blog Joined June 2007
United States4487 Posts
December 16 2008 11:03 GMT
#19
Yup he sees something that more or less no one else does apparently including the blizz people that coded it.
I have ass for brains so,
even when I shit I'm droping knowledge.
Doso
Profile Joined March 2008
Germany747 Posts
December 16 2008 11:04 GMT
#20
The scary part is, i can read some of that assembler code. Although i've never disassembled any x86 code - just had basic 8081 assembler in university.

Anyways ... hope for 1.16.1 - I am noot and play bnet so 1.15.3 isnt an option.
1 2 3 4 5 6 7 8 Next All
Please log in or register to reply.
Live Events Refresh
ESL Pro Tour
13:55
IEM Katowice: Quarterfinals
Zest vs Clem
ESL.tv33897
OGamingTV SC2 11414
Liquid`Crank 4548
Maincast Studio 3189
ALGaming 1926
ESL.tv PL 1568
TaKeTV 1450
EnkiAlexander 782
CosmosSc2 397
Robzki 21
LiquipediaDiscussion
BeAsT Cup
17:30
semi pro 5800 MMR/ 25 Dollar
Liquipedia
BSL
17:30
Round of 24 / Group C & D
Avi-Love vs StRyKeR
KwarK vs Cross
Sziky vs Ziggy
g0rynich vs Dandy
ZZZero.O428
SouL)Z(Silver28
LiquipediaDiscussion
PSISTORM Gaming Misc
15:00
PSL Open #3
KarlJayG
LiquipediaDiscussion
Epic.LAN
12:00
Epic.32
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Liquid`Crank 4548
CosmosSc2 397
Ryung 75
Rail_sc2 6
StarCraft: Brood War
Britney 22439
Calm 1562
Horang2 1504
Larva 1452
Shuttle 930
EffOrt 784
Mini 529
ZZZero.O 428
ggaemo 165
Zeus 103
[ Show more ]
Hyuk 65
Rock 29
PianO 20
Heroes of the Storm
Khaldor1435
Liquid`Hasu54
Counter-Strike: Global Offensive
XANTAREScN9997
Other Games
MaximusBlack2118
Happy384
Trikslyr190
Hui .147
QueenE79
PainUser31
RuFF_SC226
PewPewU10
Organizations
Counter-Strike: Global Offensive
ESL CS:GO125648
Other Games
BasetradeTV229
StarCraft 2
SC2 Vod Archives37
Blizzard YouTube
[ Show 18 non-featured ]
StarCraft 2
• printf 19
• ZERG-TV 6
• D4rkn0ob1k 6
• intothetv
• Genesis Gaming
• Kozan
• IndyKCrew
• AlphaB_SC2
• aXEnki
• LaughNgamez Trovo
• Laughngamez YouTube
• Alpha X_
• Matiz_pl
StarCraft: Brood War
• Deathfate 17
• sscaitournament3
• Surfer4life 1
• AfreecaTV YouTube
Other Games
• itshafu7485
Upcoming Events
Best of the Best Tour
3h 17m
DragOn vs StRyKeR
kogeT vs TerrOr
Dewalt vs OyAji
OSC
4h 17m
AfreecaTV Starcraft Tea…
13h 17m
Afreeca Challengers Sta…
15h 17m
Epic.LAN
15h 17m
ITaX Trovo Weekly
15h 17m
Solar vs Hurricane
SpeCial vs DongRaeGu
ESL Pro Tour
19h 17m
Reynor vs Maru
PartinG vs TBD
Korea Lite Cup
20h 17m
BSL
22h 47m
trutaCz vs Tech
Michael vs SneazeL
Casper vs Yugox
Hawk vs DragOn
BSL
1d
[ Show More ]
Alpha Pro Series
1d
Starkiller vs Garitos
BWCL
1d 2h
SouL) vs dM-
The Pizza Pie
1d 4h
OlimoLeague
2 days
IntoTheAlphaX Pro Circuit
3 days
Trap vs TY
INnoVation vs Zest
KCM Race Survival
3 days
The NA Apprentice
4 days
PSISTORM Gaming Misc
4 days
OSC
4 days
KCM Ladies Race Survival
5 days
Team GP event
5 days
PSISTORM Gaming Misc
6 days
BW Jeez Weekly
6 days
BSL
6 days
BeAsT Cup
6 days
Alpha X Junior Champion…
6 days
Liquipedia Results

Completed

Ultimate Battle: Stork vs EffOrt
WardiTV 2021
Rive: Love HotS
BLAST Premier Spring Groups

Ongoing

Best of the Best Tour
KCM Race Survival 2021 Season 1
Deathfate Pro League
Bombastic StarLeague 11
Rogue City Rumble
Shinhan Tank Proleague S4
BWCL Season 52
BWCL Season 52: Div-A
ASTL Season 2
IEM Katowice 2021
Masters Clash Champ. 2021
NGS Storm Division S2
30k/CM Off-S. Tour
ESEA S36 - NA Premier
ESEA S36 - EU Premier
ESEA S36 - AU Premier
Snow Sweet Snow #2
IEM Katowice 2021

Upcoming

BW Jeez Weekly 105
BW Jeez Weekly 104
BW Jeez Weekly 103
BW Jeez Weekly 102
King of Kings 52
2021 ACS Season 1
BW Jeez Weekly 101
DH Masters Summer: Finals
StayAtHome Story Cup #3
DHM Summer: China
DHM Summer: NA
DHM Summer: Oceania
DHM Summer: Asia
DHM Summer: LatAm
DHM Summer: Europe
2021 GSL Season 1
IEM Summer 2021
DH Masters Spring 2021
BLAST Premier Spring Showd.
DreamHack Open Mar 2021
ESL Pro League Season 13
Pinnacle Cup
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.