|
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?
|
Germany / USA16648 Posts
random interns doing the patches now huh
|
Aotearoa39261 Posts
First step in making SC obsolete in preparation for SC2
|
Sydney2287 Posts
So when is Bliz hiring R1CH and taking him away from us?
|
Aotearoa39261 Posts
Fuck what we need is a huge petition -.-;
|
|
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.
|
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.
|
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.
|
r1ch
I am just a beginner programmer so to say, how could you know the exact numbers of delaying? I am curious
|
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.
|
Netherlands19123 Posts
Decompiling?
Nice blog btw R1CH, and Plexa it's all a conspiracy!!
|
|
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.
|
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.
|
Netherlands19123 Posts
|
Braavos36362 Posts
hahah i like reading r1chs posts its like another language
|
How the hell do you learn all this..
sick
|
Yup he sees something that more or less no one else does apparently including the blizz people that coded it.
|
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.
|
Wow, assembly really looks ugly
I'm glad you figured out what was wrong with it, but I wonder how this got through their qa...
I vaguely remember 1.10 having alot of problems, but I'm not entirely sure. That one was rushed for an april fools joke
|
United States40776 Posts
|
thx for the explanation. this is my 3rd semester studying c++, i am making (lame) games with SDL, so i am interested in this stuff where is the good places in the game loop to put delays. i have learnt some microcontroller programming meanwhile so I can understand some part of the assembly
i will check out this ollydbg stuff, I haven't heard about it yet but sounds great
|
On December 16 2008 19:56 Hot_Bid wrote: hahah i like reading r1chs posts its like another language yeah someone translate to english please..:D
|
Yeah I agree. It's not even hard to fix how come a extremely r1ch company like Blizzard hasnt fixed this it blows my mind!!?!
|
CA10824 Posts
R1CH you should somehow get in contact with blizz lol
|
Aotearoa39261 Posts
On December 16 2008 19:25 R1CH wrote:Show nested quote +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. No the petition is for blizzard to hire you roflroflrofl
|
|
thedeadhaji
39472 Posts
On December 16 2008 19:56 Hot_Bid wrote: hahah i like reading r1chs posts its like another language
Assembly Language!
|
On December 16 2008 19:23 Plexa wrote: First step in making SC obsolete in preparation for SC2
|
On December 16 2008 20:53 thedeadhaji wrote:Show nested quote +On December 16 2008 19:56 Hot_Bid wrote: hahah i like reading r1chs posts its like another language Assembly Language! I think it's actually better than interactive C....
anyway, I hope that the guys at blizzard are fixing this problem now..
|
1.16 reminds me of MTGO. If anyone here has ever played that, for most of its now 5+ yrs of existance (wow, it's been a long time), practically every programmy friend I had stated how they could fix some of the ridiculously badly coded and user-UNfriendly design flaws in a matter of hours.. but yet, the billion dollar company sitting on their cash cow that creates money out of thin air with little to no effort involved, they can't do basic crap to improve things.
I just don't get it.
|
Assembler is scary. So is R1CH!
|
So... blizzard tried to fix the cpu hog problem by trying to sleep critical code sections? lol?
is it just me or do people get the feeling that who ever wrote the original sc code must have left blizzard without telling everyone.
|
I'm pretty sure whoever programmed that part of the patch jsut rolled some dice to pick the sleeping time. That's how all the good programmers do it, anyhow
Also, the reason its probably taking so long for 1.16.1 is that they are actually putting it through its QA paces this time, unlike last time Can't release two crappy patches in a row (or can they?)
|
I'm pretty sure they are trying to kill off the SC community before SC2 comes out.
|
On December 16 2008 19:19 Carnac wrote: random interns doing the patches now huh
Yeah I'd guess none of their real programmers want to spend time working on starcraft when they could be working on starcraft 2 or diablo 3, so they just put their interns at work.
|
lol i've only been programming for a few months now, and i also put random 5 ms sleeps everywhere. I feel such a noob when i do so.
|
Definantly some intern who made that patch, i really doubt they have ANY qualified programmers working on starcraft:BW atm. So until this intern/Dustin browders son finds a solution we're stuck on the stable patch ^^
R1CH is a living legend btw.
|
Wow I liked reading this. I also am a bw user that randomly just joins a pubbie but since 1.16 I probably only gamed about 2 games and didn't know if I just sucked now and should quit playing or lots of pubbies gotten better then me. This explains alot....
Oh but I still suck at swallowing...So im fine.
|
On December 16 2008 23:01 tec27 wrote:I'm pretty sure whoever programmed that part of the patch jsut rolled some dice to pick the sleeping time. That's how all the good programmers do it, anyhow Also, the reason its probably taking so long for 1.16.1 is that they are actually putting it through its QA paces this time, unlike last time Can't release two crappy patches in a row (or can they?)
Heh, well, Blizzard has never ceased to amaze me, so What do you know ;D:
|
well, obviously this was not tested in QA before pushing it live. At least this is just a game, same thing happened in the place I work, Production went down for half a day...do you know how much money is that? lol
|
I can't believe how straightforward this is. And like someone mentioned earlier in the thread, it seems exactly like something I would do as well, having zero experience in real time programming.
I'll bet a 1 ms delay never occurred to him/her, either.
Thought process: "Huh. CPU overloaded. What happens if I introduce a 5 ms delay here?" "Nice! It worked! I told my boss it'd take a week, so I think I'll get paid to play the D3 beta for a while."
|
so wait i dont understand. why did the devs put a random 10 msecond delay loop in the middle of their code? was that their solution to removing the 100% cpu usage? so if i understand correctly, their code is less efficient than CPU Savior which only adds 1 msecond delay?
|
On December 17 2008 02:14 Disastorm wrote: so wait i dont understand. why did the devs put a random 10 msecond delay loop in the middle of their code? was that their solution to removing the 100% cpu usage? so if i understand correctly, their code is less efficient than CPU Savior which only adds 1 msecond delay? I don't know any specifics, but my guess is that stuff is ten times as responsive if the sleep lasts only 1ms instead of 10ms. No sleeping at all results in busy waiting and thus 100% load.
|
Germany2896 Posts
Things are not that simple. The delay passed to sleep is a minimum delay. The function only returns at the next tick after the minimum delay has elapsed. On my comp the tick occurs every 16ms, on older comps/OS that interval can be up to 55ms. The tick interval can be changed by a program at global level, affecting the whole system. Afaik CPU-Savior does that. The mistakes blizzard made are not that noobish as some of you thought. The early CPU-Savior versions had similar problems. And the ingame lag does not occur on every comp (or atleast some people like me don't notice it). The main problem is that it passed QA(or was not send to QA at all). The /r bug is a real wtf on the other hand.
|
noobish or not rich/you and not blizzard programmers fixed many of problems like this. maybe you and him could be hired too,bet u would be successful breaking sc2 engine
|
R1CH BRINGING DOWN THE PAIN
|
wow rich i hope i'll be as good programmer as you someday :D
|
I understand how this could happen when CPU savior did the same thing. I even understand not having a ton of testing go into these patches since SC is really old and frankly for it to be updated at all anymore is surprising. What I don't like is that this patch has been out for how long now? There was feedback about how awful 1.16 runs on some peoples computers hours after the patch was released. There's even detailed explanations why from people like r1ch, so why has there not been a followup patch yet to fix this?
|
|
R1CH can see the matrix code... He Is The One!
|
lol I love ur language R1ch! It actually makes sense to me....but even if i tried i would never be able to apply it :D Still all very reasonable though and its easy to follow on.
|
R1ch, single handedly bitch slapping the man with each failed if statement
|
Bill307
Canada9103 Posts
On December 17 2008 02:52 MasterOfChaos wrote: Things are not that simple. The delay passed to sleep is a minimum delay. The function only returns at the next tick after the minimum delay has elapsed. On my comp the tick occurs every 16ms, on older comps/OS that interval can be up to 55ms. The tick interval can be changed by a program at global level, affecting the whole system. Afaik CPU-Savior does that. The mistakes blizzard made are not that noobish as some of you thought. The early CPU-Savior versions had similar problems. And the ingame lag does not occur on every comp (or atleast some people like me don't notice it). The main problem is that it passed QA(or was not send to QA at all). The /r bug is a real wtf on the other hand. The other main problem with this bug is that the programmer did not contact the developers of CPU-Savior to ask them how they implemented it and what kinds of problems they ran into during testing.
Whether this was the fault of the programmer for being ignorant or naive, or the fault of a ridiculous non-disclosure agreement that prohibited him from asking such a harmless question, we'll never know.
As for the /r bug, QA definitely deserves major blame for that one regardless of how WTF-ish the implementation was. Honestly, whoever was responsible for testing that feature is a mediocre tester at best, definitely not the kind of guy you'd expect to be working for Blizzard. A message like ".r test" should have been an obvious test case and it takes about 2 seconds to verify it.
|
On December 16 2008 20:06 freelander wrote:thx for the explanation. this is my 3rd semester studying c++, i am making (lame) games with SDL, so i am interested in this stuff where is the good places in the game loop to put delays. i have learnt some microcontroller programming meanwhile so I can understand some part of the assembly i will check out this ollydbg stuff, I haven't heard about it yet but sounds great
if you're focused on making games, Assembly probably isn't THAT relevant to what you want to do. Assembly is probalby only helpful if you plan on making anti-hacks or something of that sort.
|
Awesome discovery, I been wondering why these problems were occuring however I have to agree with
On December 16 2008 19:23 Plexa wrote: First step in making SC obsolete in preparation for SC2
i believe this is true :/
|
well if iccup adds that 3v3 ladder then screw bnet, don't need it for anything anymore
|
Yea, they really have a tester problem. I bet they don't even test it properly. Guy probably just makes the code and makes sure it works then passes it up (without checking for side effects).
They really need to consult outside programmers like MoC, Tec27(the adv loader guy, sorry i forget ur name :/), and you r1ch.
I was just discussing this with EchoOfRain on bnet yesterday. He said that they changed the ports or something too? I don't think he was right.
|
On December 17 2008 02:52 MasterOfChaos wrote: Things are not that simple. The delay passed to sleep is a minimum delay. The function only returns at the next tick after the minimum delay has elapsed. On my comp the tick occurs every 16ms, on older comps/OS that interval can be up to 55ms. This too was another wtf, they added sleeps without setting the timer resolution to 1ms! So every Sleep could be up to 16ms, however as my test program I posted on my previous blog showed, most people have high timer resolutions to begin with.
|
I know first they start banning chaos; now 1.16, if they short iccup its basically byebye SC...
|
I don't think they are banning for chaos...
|
lol r1ch's 2 blogs are about how shitty 1.16 is/trying to fix it. so pro.
|
R1CH is The One.
When we look at starcraft, we see units, terrain, doodads, and animation. When R1CH looks at starcraft, he sees everything in code. While we try to make expos, R1CH realizes the truth: there is no expo.
|
well at least it doesn't crash...OH and IT'S a Feature!
|
On December 17 2008 12:18 GrayArea wrote: R1CH is The One.
When we look at starcraft, we see units, terrain, doodads, and animation. When R1CH looks at starcraft, he sees everything in code. While we try to make expos, R1CH realizes the truth: there is no expo.
hahah
R1CH pwns
|
Physician
United States4146 Posts
On December 16 2008 19:18 R1CH wrote: Why are they taking so long to fix what I could do in a few hours?
good question - ; hope the question gets read asap
|
On December 17 2008 07:47 b3h47pte wrote:Show nested quote +On December 16 2008 20:06 freelander wrote:thx for the explanation. this is my 3rd semester studying c++, i am making (lame) games with SDL, so i am interested in this stuff where is the good places in the game loop to put delays. i have learnt some microcontroller programming meanwhile so I can understand some part of the assembly i will check out this ollydbg stuff, I haven't heard about it yet but sounds great if you're focused on making games, Assembly probably isn't THAT relevant to what you want to do. Assembly is probalby only helpful if you plan on making anti-hacks or something of that sort.
Yeah, assembly isn't used much at all anymore since compilers do a decent job of optimizing code and cpus are so powerful compared to what they used to work with that optimizing at the assembly level isn't needed except in rare cases on code that gets run a lot.
|
On December 17 2008 17:31 Physician wrote:Show nested quote +On December 16 2008 19:18 R1CH wrote: Why are they taking so long to fix what I could do in a few hours? good question - ; hope the question gets read asap http://r-1.ch/116fixer.zip
Total time: 4 hours, intermixed with DotA. Trickier than my previous hacks since this one needs to modify code in battle.snp, which can only be done after connecting to battle.net. To counter this it hooks an API call that is called soon after loading on battle.net to apply the patch. Haven't really tested this much, more of a proof-of-concept than anything else.
Should fix the battle.net lag, in-game lag and /r and /reply commands.
|
Netherlands19123 Posts
Actually works for me lol, epic shit R1CH, pro .
Cheers~~
|
On December 17 2008 20:27 R1CH wrote:Show nested quote +On December 17 2008 17:31 Physician wrote:On December 16 2008 19:18 R1CH wrote: Why are they taking so long to fix what I could do in a few hours? good question - ; hope the question gets read asap http://r-1.ch/116fixer.zipTotal time: 4 hours, intermixed with DotA. Trickier than my previous hacks since this one needs to modify code in battle.snp, which can only be done after connecting to battle.net. To counter this it hooks an API call that is called soon after loading on battle.net to apply the patch. Haven't really tested this much, more of a proof-of-concept than anything else. Should fix the battle.net lag, in-game lag and /r and /reply commands. R1CH > Blizzard wtf
|
Aotearoa39261 Posts
loooooooooooooool R1CH you are too good seriously
|
Physician
United States4146 Posts
On December 17 2008 20:51 Butigroove wrote: R1CH > Blizzard Word
|
This calls for a
/wizarded
|
gj R1CH. Blizzard should afford to spend some of their wow-cash to get competent people like you.
|
On December 17 2008 10:19 R1CH wrote: I don't think they are banning for chaos... well im not sure actually<_< never had my account banned
|
On December 18 2008 05:41 HeavOnEarth wrote:Show nested quote +On December 17 2008 10:19 R1CH wrote: I don't think they are banning for chaos... well im not sure actually<_< never had my account banned You'd really only get banned for specific plugins, and they'd have to modify memory (that is, hook SC functions, not just write in a value into memory). So I think the plugin under greatest risk of that happening to is in fact APMAlert (oh noes ), but at this point, warden doesn't detect that anyway.
|
R1ch, you are a genius, I'm not sure why programmers aren't as competent, seeing as you were gaming while making the fix. You have deff earned your title as a wizard.
|
|
impressive! VERY GOSU R1CH!
|
|
Someone please give R1CH another awesome icon, beacuse only 1 is far too little.
Ty
|
On December 16 2008 19:23 Plexa wrote: First step in making SC obsolete in preparation for SC2 the scary thing is... this might actually be true.......
|
Roffles
Pitcairn19291 Posts
1.16 is an abomination of a patch.
|
intrigue
Washington, D.C9931 Posts
|
51134 Posts
|
Belgium6733 Posts
|
On December 18 2008 08:02 BalloonFight wrote: Someone please give R1CH another awesome icon, beacuse only 1 is far too little.
Ty
I was just thinking he should get a star too. R1CH is the man. Except it might take away from his cool MTG? icon.
|
more inhumanly sickness ensues... R1CH, you're the man
|
|
|
what do we do with the .bwl?
|
1584 Posts
Teamliquids own Boxer of computers. EPIIIC! thanks!
|
On December 18 2008 16:35 Raithed wrote: what do we do with the .bwl? 1. suck a cock 2. get chaoslauncher if you dont alerady have it 3. suck another cock 4. extract the .bwl to the chaoslauncher directory 5. request a permaban 6. load chaoslauncher, check the box for 1.16 fixer 7. kill yourself 8. run bw with the 1.16 executable through chaoslauncher 9. suck hades' cock in hell
|
On December 18 2008 16:53 SpiritoftheTunA wrote:1. suck a cock 2. get chaoslauncher if you dont alerady have it 3. suck another cock 4. extract the .bwl to the chaoslauncher directory 5. request a permaban 6. load chaoslauncher, check the box for 1.16 fixer 7. kill yourself 8. run bw with the 1.16 executable through chaoslauncher 9. suck hades' cock in hell suck my cock.
|
it works rich
|
On December 18 2008 17:22 Raithed wrote:Show nested quote +On December 18 2008 16:53 SpiritoftheTunA wrote:On December 18 2008 16:35 Raithed wrote: what do we do with the .bwl? 1. suck a cock 2. get chaoslauncher if you dont alerady have it 3. suck another cock 4. extract the .bwl to the chaoslauncher directory 5. request a permaban 6. load chaoslauncher, check the box for 1.16 fixer 7. kill yourself 8. run bw with the 1.16 executable through chaoslauncher 9. suck hades' cock in hell suck my cock. hey at least i alternated it with the actual answer
you didnt even put a thanks in there
assface
|
SHIT this is so incredible awesome!
|
Never had the "ingame" lags. But that fix for the Bnet Interface shure is very nice. Thanks r1ch
|
|
Vatican City State491 Posts
On December 17 2008 10:19 R1CH wrote: I don't think they are banning for chaos...
I think they are doing the same scenario as with Diablo2. They are very slow in creating patches, so that the community will solve the problems on its own, without and blizzard help. This is done on purpose, so that they will be able to ban a lot of the players for innocent programs. If they banned for no-cd loader in diablo 2 (which was used to run 2 copies of the game), then they will definitely ban for anti hack launchers, cpu savior etc. They will just wait till new blizzard game comes out (just like they waited for WoW addom to come out; they banned the diablo players 2 days before it to have more bandwith or something).
Look at the diablo patches - they banned legit players; while the spambots still work, the farcast hack still work, the bots still work and so one. IMO Blizzard should have stopped making patches at 1.09
|
Aotearoa39261 Posts
|
Aotearoa39261 Posts
unless you like the lack of map preview and right click rally
|
Vatican City State491 Posts
On December 19 2008 01:04 Plexa wrote: unless you like the lack of map preview and right click rally
Am I the only one who uses "r" to set rally points? I never use RMB when having a building selected, because Im worried that if I got used to doing that, I would send my units to random parts of the map (which unfortunately happens from time to time ).
Map preview is nice, but well... can live without it. "Shift+tab color switch" was the nicest thing added by patches (apart from replays of course :D)
|
On December 19 2008 00:58 closed wrote:Show nested quote +On December 17 2008 10:19 R1CH wrote: I don't think they are banning for chaos... I think they are doing the same scenario as with Diablo2. They are very slow in creating patches, so that the community will solve the problems on its own, without and blizzard help. This is done on purpose, so that they will be able to ban a lot of the players for innocent programs. If they banned for no-cd loader in diablo 2 (which was used to run 2 copies of the game), then they will definitely ban for anti hack launchers, cpu savior etc. They will just wait till new blizzard game comes out (just like they waited for WoW addom to come out; they banned the diablo players 2 days before it to have more bandwith or something). Look at the diablo patches - they banned legit players; while the spambots still work, the farcast hack still work, the bots still work and so one. IMO Blizzard should have stopped making patches at 1.09 A program which lets you load 2 copies of the game is entirely different than antihack or cpu savior. An antihack or cpu savior do not give any advantage in game, and are entirely supported by blizzard in my opinion, (I'll give Blizzard the benefit of the doubt and assume they are not totally clueless, and know we are using them) unless proven otherwise.
|
On December 19 2008 01:04 Plexa wrote: unless you like the lack of map preview and right click rally
wait wat??
I'm confused. That zip a few pages back is a patch to get rid of 1.shit?
And it takes away right click rally and preview??
edit: Thanks rich!!!!
|
United States17042 Posts
On December 19 2008 04:40 Hawk wrote:Show nested quote +On December 19 2008 01:04 Plexa wrote: unless you like the lack of map preview and right click rally wait wat?? I'm confused. That zip a few pages back is a patch to get rid of 1.shit? And it takes away right click rally and preview??
no, he was responding to the comment that blizzard should have stopped patching at 1.09.
the zip is a file that allows you to fix many of the problems associated with 1.16
It would be nice if the op was updated with the zip. Which is amazing!
R1CH is the man.
|
Vatican City State491 Posts
On December 19 2008 03:59 Butigroove wrote:Show nested quote +On December 19 2008 00:58 closed wrote:On December 17 2008 10:19 R1CH wrote: I don't think they are banning for chaos... I think they are doing the same scenario as with Diablo2. They are very slow in creating patches, so that the community will solve the problems on its own, without and blizzard help. This is done on purpose, so that they will be able to ban a lot of the players for innocent programs. If they banned for no-cd loader in diablo 2 (which was used to run 2 copies of the game), then they will definitely ban for anti hack launchers, cpu savior etc. They will just wait till new blizzard game comes out (just like they waited for WoW addom to come out; they banned the diablo players 2 days before it to have more bandwith or something). Look at the diablo patches - they banned legit players; while the spambots still work, the farcast hack still work, the bots still work and so one. IMO Blizzard should have stopped making patches at 1.09 A program which lets you load 2 copies of the game is entirely different than antihack or cpu savior. An antihack or cpu savior do not give any advantage in game, and are entirely supported by blizzard in my opinion, (I'll give Blizzard the benefit of the doubt and assume they are not totally clueless, and know we are using them) unless proven otherwise.
I wouldnt call it a cheat, but rather a way of saving electricity; I could just put two computers at my desk in order to run both of my copies of diablo - I actually tried it few times, but alt tab was more eco-friendly In addition, after I got banned I heard that it is possible to run two copies of diablo by means of two Windows fast user switching, or something like that...
|
They also banned people who used my spam filter in D2.
|
On December 19 2008 06:32 closed wrote:Show nested quote +On December 19 2008 03:59 Butigroove wrote:On December 19 2008 00:58 closed wrote:On December 17 2008 10:19 R1CH wrote: I don't think they are banning for chaos... I think they are doing the same scenario as with Diablo2. They are very slow in creating patches, so that the community will solve the problems on its own, without and blizzard help. This is done on purpose, so that they will be able to ban a lot of the players for innocent programs. If they banned for no-cd loader in diablo 2 (which was used to run 2 copies of the game), then they will definitely ban for anti hack launchers, cpu savior etc. They will just wait till new blizzard game comes out (just like they waited for WoW addom to come out; they banned the diablo players 2 days before it to have more bandwith or something). Look at the diablo patches - they banned legit players; while the spambots still work, the farcast hack still work, the bots still work and so one. IMO Blizzard should have stopped making patches at 1.09 A program which lets you load 2 copies of the game is entirely different than antihack or cpu savior. An antihack or cpu savior do not give any advantage in game, and are entirely supported by blizzard in my opinion, (I'll give Blizzard the benefit of the doubt and assume they are not totally clueless, and know we are using them) unless proven otherwise. I wouldnt call it a cheat, but rather a way of saving electricity; I could just put two computers at my desk in order to run both of my copies of diablo - I actually tried it few times, but alt tab was more eco-friendly In addition, after I got banned I heard that it is possible to run two copies of diablo by means of two Windows fast user switching, or something like that...
There's plenty of ways to do it, I used a virtual machine on two computers to run 4 bots at once before I got bored within a month of restarting and quit again.
Blizzard's antihack measures are ineffective largely because the factors that they use in determining when to ban, i.e. games created per hour per cd key etc, are stupid. It stuns me that they can ban for that but don't keep track of the account or the character making the game at all.
|
Hong Kong20321 Posts
On December 19 2008 06:39 R1CH wrote: They also banned people who used my spam filter in D2.
WTF IS DAT -__-
but holy shit rich i love j00
|
out of curiosity, doesn't 0 ms sleep also work for non 100% cpu usage? And lower thread priority in windows (not sure what this would do to gameplay though)
|
Germany2896 Posts
I think neither helps. sleep(0) usually just gives up the remainder of the scheduling interval, and thread priority does nothing in that context at all. It just decides which threads gets cpu-time if several of them require it.
|
Wow the 1.16 fix is great, along with the 1.16 version of ChaosLauncher, thanks R1CH and MasterOfChaos, you dudes are awesome!
|
On December 18 2008 16:53 SpiritoftheTunA wrote:1. suck a cock 2. get chaoslauncher if you dont alerady have it 3. suck another cock 4. extract the .bwl to the chaoslauncher directory 5. request a permaban 6. load chaoslauncher, check the box for 1.16 fixer 7. kill yourself 8. run bw with the 1.16 executable through chaoslauncher 9. suck hades' cock in hell That was probly the stupidest most unfunny post i've ever come across. You make tot)shad( look like a comedian.
|
On December 23 2008 03:28 SkepTicAL wrote:Show nested quote +On December 18 2008 16:53 SpiritoftheTunA wrote:On December 18 2008 16:35 Raithed wrote: what do we do with the .bwl? 1. suck a cock 2. get chaoslauncher if you dont alerady have it 3. suck another cock 4. extract the .bwl to the chaoslauncher directory 5. request a permaban 6. load chaoslauncher, check the box for 1.16 fixer 7. kill yourself 8. run bw with the 1.16 executable through chaoslauncher 9. suck hades' cock in hell That was probly the stupidest most unfunny post i've ever come across. You make tot)shad( look like a comedian. i actually laughed at it... =\
|
Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running.
thanks!!
/AdamS
Blizzard Tech Support
http://forums.battle.net/thread.html?topicId=13769997583&sid=3000
|
On December 19 2008 06:39 R1CH wrote: They also banned people who used my spam filter in D2.
did you make a lot of utilities for d2? because i think i used an ilvl checker that you made...
|
Ahhh bnet is so much nicer now
|
Thanks R1CH! This fix works great!
R1CH > Blizz
|
On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000
we should pay attention to this guy yes?
|
Catyoul
France2377 Posts
You're such a wizard R1CH !
|
why do we need cpu savior at all? most of us have already upgraded to a better comp, and most 98 comps were good enough already that they ran sc well. unless people these days still play with a 95 comp, it's very likely that the majority nowadays play sc with a comp that can handle that and run other things in the background also.
|
Northern Ireland1200 Posts
On December 23 2008 16:32 Zalfor wrote:Show nested quote +On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000 we should pay attention to this guy yes?
The Admins will be able to know if its a smurf or not. (there is an AdamS on bnet tech support forums). However, there IS a thread at the forums, which he has linked. I did bring this up in the 1.16 Patch thread a few days ago, but it got ignored...
|
On December 24 2008 08:55 sqwert wrote: why do we need cpu savior at all? most of us have already upgraded to a better comp, and most 98 comps were good enough already that they ran sc well. unless people these days still play with a 95 comp, it's very likely that the majority nowadays play sc with a comp that can handle that and run other things in the background also. Laptops running at 100% CPU usage consume more power and generate more heat. Those two features are usually not wanted.
|
Hm I noticed that when using this fix that there's some lag when naming replays, but otherwise it's great, thanks a lot. Makes everything smooth again :D
|
Hi all, I have a question for R1CH (or anyone else who knows), can u tell me in what language (or languages with %) Starcraft has been programmed.
|
On December 25 2008 13:47 Sk0 wrote: Hi all, I have a question for R1CH (or anyone else who knows), can u tell me in what language (or languages with %) Starcraft has been programmed. I would assume C++.
|
WOW R1CH
I dream of becoming half as decent at coding as you. You are truly amazing.
|
51134 Posts
On December 24 2008 10:20 Chewits wrote:Show nested quote +On December 23 2008 16:32 Zalfor wrote:On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000 we should pay attention to this guy yes? The Admins will be able to know if its a smurf or not. (there is an AdamS on bnet tech support forums). However, there IS a thread at the forums, which he has linked. I did bring this up in the 1.16 Patch thread a few days ago, but it got ignored...
I checked his admin profile page and he is the real thing (unless he managed to spoof a Blizzard email account which I highly doubt).
|
On December 24 2008 08:55 sqwert wrote: why do we need cpu savior at all? most of us have already upgraded to a better comp, and most 98 comps were good enough already that they ran sc well. unless people these days still play with a 95 comp, it's very likely that the majority nowadays play sc with a comp that can handle that and run other things in the background also. the point is that our better comps can easily run sc without the 100% cpu power it calls for
cpu savior reduces the amount your computer puts in, not the amount that's needed
|
Germany2896 Posts
On December 25 2008 13:47 Sk0 wrote: Hi all, I have a question for R1CH (or anyone else who knows), can u tell me in what language (or languages with %) Starcraft has been programmed. The compiler might be C++(some detector says visual c++, and the file extension is .cpp), but they didn't use OOP anywhere, so I'd call it C.
|
holy shit! great job R1ch
|
loool nice, was obv playing techies during the coding
|
On December 25 2008 20:02 MasterOfChaos wrote: The compiler might be C++(some detector says visual c++, and the file extension is .cpp), but they didn't use OOP anywhere, so I'd call it C.
But, what do u mean with "The compiler", can u explain more please?
|
On December 26 2008 04:47 Sk0 wrote:Show nested quote +On December 25 2008 20:02 MasterOfChaos wrote: The compiler might be C++(some detector says visual c++, and the file extension is .cpp), but they didn't use OOP anywhere, so I'd call it C. But, what do u mean with "The compiler", can u explain more please? The compiler is the program that translates the semi-English code that the programmers write into virtually unintelligible (to humans) machine language (basically 1s and 0s). C++ is an extension of C, so a compiler designed to translate things written in C++ will by definition be able to translate things written in regular C as well. (correct me if I'm wrong about something here)
|
|
On December 16 2008 19:24 Plexa wrote: Fuck what we need is a huge petition -.-;
No, what we need is a huge rolled petition wrapped in barbed wire so we can shove it up their asses !
|
Northern Ireland1200 Posts
You dont need a petition, you just need to send some info to Blizzard.
On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000
Go do it.
|
On December 26 2008 10:57 qrs wrote:Show nested quote +On December 26 2008 04:47 Sk0 wrote:On December 25 2008 20:02 MasterOfChaos wrote: The compiler might be C++(some detector says visual c++, and the file extension is .cpp), but they didn't use OOP anywhere, so I'd call it C. But, what do u mean with "The compiler", can u explain more please? The compiler is the program that translates the semi-English code that the programmers write into virtually unintelligible (to humans) machine language (basically 1s and 0s). C++ is an extension of C, so a compiler designed to translate things written in C++ will by definition be able to translate things written in regular C as well. (correct me if I'm wrong about something here)
Yea you're right. Pretty much everything you can do in C can be done in C++. malloc(), free(), stuff like that even they you have new() and delete though it is never recommended that you use the C functions instead of the C++ ones.
|
On December 26 2008 22:27 Chewits wrote:You dont need a petition, you just need to send some info to Blizzard. Show nested quote +On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000 Go do it. I don't understand, how does thousands of effected people uploading this thing help at all, it's not like it's an isolated bug, it effects nearly or exactly everyone oO?
|
Northern Ireland1200 Posts
On December 27 2008 04:50 Nightmarjoo wrote:Show nested quote +On December 26 2008 22:27 Chewits wrote:You dont need a petition, you just need to send some info to Blizzard. On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000 Go do it. I don't understand, how does thousands of effected people uploading this thing help at all, it's not like it's an isolated bug, it effects nearly or exactly everyone oO?
It doesn't effect everyone.
|
On December 27 2008 04:50 Nightmarjoo wrote:Show nested quote +On December 26 2008 22:27 Chewits wrote:You dont need a petition, you just need to send some info to Blizzard. On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000 Go do it. I don't understand, how does thousands of effected people uploading this thing help at all, it's not like it's an isolated bug, it effects nearly or exactly everyone oO?
It affects a few people, but everyone it affects you hear complain about it. It doesn't affect me, so I haven't posted in the threads about it, nor have thousands of others it doesn't affect. If everyone assumes "oh well there's enough people affected that I don't have to send them my info," then not enough will actually do it, and the problem will never get fixed by Blizzard. Take the 5 minutes to send them the info so you don't have to worry about getting banned for using R1CH's fix.
All I get is the piecemeal graphical loading and the /r bug, which I believe everyone has and they obviously know about. They've probably fixed the /r bug and don't care about the slow loading, but are waiting to fix everything to release a new patch.
|
|
Canada5066 Posts
Wow r1ch; blizzard got owned so hard.
|
On December 24 2008 12:20 Hittegods wrote:Show nested quote +On December 24 2008 08:55 sqwert wrote: why do we need cpu savior at all? most of us have already upgraded to a better comp, and most 98 comps were good enough already that they ran sc well. unless people these days still play with a 95 comp, it's very likely that the majority nowadays play sc with a comp that can handle that and run other things in the background also. Laptops running at 100% CPU usage consume more power and generate more heat. Those two features are usually not wanted. This. overheat FTL
|
On December 23 2008 09:33 AdamS wrote:Can you guys go to the B.net forums and send in the dxdiag and msinfo that Dat asked for? We are having a hard time recreating this issue and it would help us immensely if we can find out exactly what hardware you are running and what background processes are running. thanks!! /AdamS Blizzard Tech Support http://forums.battle.net/thread.html?topicId=13769997583&sid=3000 I missed this post until someone on IRC mentioned it - there is nothing hardware or software specific that causes this issue - it's simply a bug in the BW code. Not everyone will notice an issue with this patch because a) most people don't play at a competitive level and will not notice a tiny lag problem and b) on older PCs, BW doesn't have as much idle time to sit in the "wait" loop. I'll CC this to the email posted on the Blizz forums, but the basic problems are as follows:
1. Using Sleep without calling timeBeginPeriod: Unless another application on the system calls timeBeginPeriod(1), calling Sleep(1) will sleep from anywhere to 1-15ms. Sleeping 1500% longer than you intended is not good for delays .
2. Too many Sleeps: In patch 1.16 there is a Sleep period added during the message loop processing as well as a Sleep period added if the elapsed time between two frames is short. This second one is unnecessary as as long as there is a Sleep(1) somewhere in the main loop, 100% CPU usage is reduced. 116fixer removes this secondary Sleep.
3. Sleep of 5ms instead of 1ms after the message loop: Additional delay is added by sleeping for 5ms after the message loop. As mentioned above, 1ms is all that is necessary to prevent 100% CPU usage.
4. Sleep of 5ms instead of 1ms in the bnet menu loop: The battle.net interface feels laggy due to the inclusion of a 5ms Sleep instead of 1ms.
5. /reply and /r errors in the bnet interface: These are simple typos (missing / before the string) and are easy to fix.
|
I emailed your post off to blizzard as he requested in his forum post just in case you didn't.
|
The basic issues stated by R1CH above sounds very noobish to me :S
All the thread-coding I've done is in java and I even coded a thread-loop without a sleep(1) by accident and I felt that was a very obvious noob mistake by me when I figured it out and added that sleep... (the game ran smooth on my macbook but the problem became apparent on slower comps where the framerate sucked because of that loop)
From my small experience with threads, even I know about points 2-5 above (I never knew about timeBeginPeriod.. interesting ^^) and it's o_O to me that someone at a company like blizzard would make those mistakes..
Also, bleh for assembly ;< gj R1CH! ^^
|
oh, wow. Dudn't know he made a hack/patch after the ranting, lol. Why isn't this blog front page news?
|
|
|
|