Valhalla Legends Forums Archive | Battle.net Bot Development | Re: Seems as if Bnet's up to it again

AuthorMessageTime
IdIm
Well west just went down for maintence and some of my bots don't work but.. my bots that i padded the hashes (sc) seem to still work... but currently i cant get Wc2 to connect.. wonder if theyre up to it again? bnls doesnt seem to work either...
September 12, 2006, 7:34 PM
Ringo
[quote author=IdIm link=topic=15671.msg157793#msg157793 date=1158089665]
Well west just went down for maintence and some of my bots don't work but.. my bots that i padded the hashes (sc) seem to still work... but currently i cant get Wc2 to connect.. wonder if theyre up to it again?
[/quote]

Its been like this ever since they updated the version checking.
Every now and then, a server uses the old revision. So just switch to another server
September 12, 2006, 7:35 PM
IdIm
mmm i've tried all of them... still no luck... also tried using old revision... no luck :'( i hope im not the only person having a problem lol i'll feel so retarded..
September 12, 2006, 7:39 PM
replaced
ALL CLIENT EFFECTED!!  EVEN DIABLO 2 !!

WTF, i'm ipbanned on all 4 realms now BNET changed checkrevision again, I bet they changed it so u can't padd the exe files and fix it anymore!  checkrevision changed on west!

Connecting with a proxy on west gives me,

[BNET] Version check failed!

Connecting with a proxy on east / europe / asia gives me,

[BNET] Check revision passed.

It won't be long until no bots can go on bnet anymore(!) :o
September 12, 2006, 7:45 PM
IdIm
woot im not the only one, I can get on with padded sc hashes... but nothing else :'(
September 12, 2006, 7:47 PM
Ringo
[code]
[20:46:55] [BNET] Connecting to 63.241.83.109:6112
[20:46:55] [BNET] Connected!
[20:46:55] [UDP] Bound UDP Socket to port 6112
[20:46:55] [BNET] Sent 0x50
[20:46:56] [BNET] Got 0x50 Formula Strings for ver-IX86-3.mpq
[20:46:56] [BNET] 0x50 Need to download ver-IX86-3.mpq
[20:46:56] [FTP] Connecting to 63.241.83.109:6112
[20:46:56] [FTP] Connected!
[20:46:56] [FTPv1] Sent request 1
[20:46:56] [FTPv1] ver-IX86-3.mpq is a estimated 6889 bytes (6.889kb)
[20:46:56] [FTPv1] Got 537 of ver-IX86-3.mpq
[20:46:57] [FTPv1] Got 1073 of ver-IX86-3.mpq
[20:46:57] [FTPv1] Got 5361 of ver-IX86-3.mpq
[20:46:57] [FTPv1] Got 6889 of ver-IX86-3.mpq
[20:46:57] [FTPv1] ver-IX86-3.mpq has been saved to disc
[20:46:58] [UDP] Sent 0x09 port notification to battle.net
[20:46:58] [UDP] Got UDP Stamp tenb from bnet!
[20:46:58] [BNET] 0x51 Passed!
[/code]
yeah, new revision again. (lol at file names)
September 12, 2006, 7:48 PM
HdxBmx27
Ringo would you mind posting the files? I'm at school right now so I cant d/l them myself.
~-~(HDX)~-~
September 12, 2006, 8:40 PM
dRAgoN
https://davnit.net/bnet/vL/index.php?topic=15663.0

perhaps somone should incorperate this into the commonly used dll's that everyone likes.
September 12, 2006, 10:11 PM
BreW
dun dun dun
:O can't hdx make a new padder? all it's checking for is the file size...
September 12, 2006, 10:13 PM
rob
I will be working to incorporate my code into a standalone dll with a vb example.  Should be able to get around to doing this by thursday or so.
September 12, 2006, 10:13 PM
Ringo
ver-IX86.zip
September 12, 2006, 10:18 PM
HeRo
Man, I've been ip banned for 2 weeks, I got unip'ed just last night and when I connected I got a version check failed and got ip'ed again >:( >:(

Anyways, does anyone know why bnet is doing this, is it just to prevent bots?
September 12, 2006, 10:42 PM
Myndfyr
[quote author=heRo link=topic=15671.msg157810#msg157810 date=1158100974]
Man, I've been ip banned for 2 weeks, I got unip'ed just last night and when I connected I got a version check failed and got ip'ed again >:( >:(

Anyways, does anyone know why bnet is doing this, is it just to prevent bots?
[/quote]
Doubtful.  More likely to prevent cheating.
September 12, 2006, 11:02 PM
HdxBmx27
Well I've noticed a few things sofar:
It seems they changed the formatting of the value strings so people can no longer assume that it is A=# B=# C=# 4 A=A.S B=B.C C=C.A A=A.B
For Example:
C=1151438134 A=2788537374 B=2369803856 4 A=A-S B=B+C C=C^A A=A^B
This is easily rectified (and people should of had a contigency plan)
Also they are useing larger numbers, Diffrent File names of corse.
I am crap with ASM so I can't figure out what is diffrent between the diffrent vers.
Also, they are useing both IX86Ver.mpq and ver-IX86-.mpq
For all of them 0-7.
I'm home nopw so I'll see what I can see.
~-~(HDX)~-~

[edit]
Heres some test data for everyone:
[code]
SEXP
ver-IX86-5.mpq
A=3028046468 C=4177216242 B=3749337048 4 A=A-S B=B-C C=C^A A=A+B.
0x6aafef39[/code]
~-~(HDX)~-~

September 12, 2006, 11:11 PM
Myndfyr
I have confirmed that MBNCSUtil is affected by this new set of updates.  I will release a new version as soon as I have one.
September 13, 2006, 12:08 AM
replaced
Just great, now bncsutil needs to be updated again.
September 13, 2006, 12:18 AM
HdxBmx27
[code]VS: A=3028046468 C=4177216242 B=3749337048 4 A=A-S B=B-C C=C^A A=A+B
A: 3028046468
B: 3749337048
C: 4177216242
6aafef39[/code]
Hehe !
I think i did it the bad way
But the function seems to be the same.
Its jsut they changed it to use 64 bit integers insted of the old 32.
Wierd.
BUT! Its not working for my JBLS server, so I'm still working on it, I will keep you informed.
~-~(HDX)~-~
September 13, 2006, 12:24 AM
Myndfyr
[quote author=HdxBmx27 link=topic=15671.msg157816#msg157816 date=1158107081]
[code]VS: A=3028046468 C=4177216242 B=3749337048 4 A=A-S B=B-C C=C^A A=A+B
A: 3028046468
B: 3749337048
C: 4177216242
6aafef39[/code]
Hehe !
I think i did it the bad way
But the function seems to be the same.
Its jsut they changed it to use 64 bit integers insted of the old 32.
Wierd.
BUT! Its not working for my JBLS server, so I'm still working on it, I will keep you informed.
~-~(HDX)~-~
[/quote]
It's possible that instead of 32-bits they made it unsigned.  I'm investigating that.
September 13, 2006, 12:38 AM
HdxBmx27
Here are some more test data you can use.
[code]ver-IX86-3.mpq.A=1249383011 B=2387119329 C=319668889 4 A=A+S B=B^C C=C^A A=A^B 504e39c9
ver-IX86-2.mpq.B=1324766345 A=17937714 C=3208736877 4 A=A-S B=B+C C=C+A A=A+B 3f3a6c41
ver-IX86-5.mpq.A=284179296 C=1987738994 B=999863123 4 A=A-S B=B-C C=C+A A=A^B fc7f1e69[/code]
I'm still trying to figure out why it works on some but not on others.
~-~(HDX)~-~
September 13, 2006, 12:51 AM
UserLoser
[pre]
IX86ver6.mpq
ver-IX86-0.mpq
[/pre]

Notice positioning of the '6'.  You all hardcode where to pull digit from and will only work on the 6.mpq.  There is no change.
September 13, 2006, 1:19 AM
Ringo
[quote author=UserLoser link=topic=15671.msg157819#msg157819 date=1158110376]
There is no change.
[/quote]
heh, I think it just tolk them awhile to notice that by alternating the revision files would force the clients into downloading the file each time, and use more bandwidth in the long run. That sounds like somthing blizzard would overlook :P
September 13, 2006, 1:54 AM
Myndfyr
[quote author=UserLoser link=topic=15671.msg157819#msg157819 date=1158110376]
[pre]
IX86ver6.mpq
ver-IX86-0.mpq
[/pre]

Notice positioning of the '6'.  You all hardcode where to pull digit from and will only work on the 6.mpq.  There is no change.
[/quote]

There was no change in the effective code, but because MBNCSUtil used signed integers internally, I was encountering overflow/underflow errors.  This has been addressed.  See the MBNCSUtil 1.3.1.8 announcement in about 3 minutes.  ;-)
September 13, 2006, 2:07 AM
GuTzOR
MY SB IS WORKING!!!!!


[22:10:07.625] [BNLS] Connecting...
[22:10:07.703] [BNLS] Connected!
[22:10:07.796] [BNLS] Authorized!
[22:10:07.796] [BNET] Connecting...
[22:10:07.859] [BNET] Connected!
[22:10:08.000] [BNET] Checking version...
[22:10:08.234] [BNET] Client version accepted!
[22:10:08.250] [BNET] Sending login information...
[22:10:08.296] [BNET] Login successful.
[22:10:08.343] [BNET] Logged on as AsPhIxIaTiOn.
[22:10:08.375] -- Joined channel: Clan DK --
[22:10:08.468] Account Created: 8/20/2006, 01:45:00 (Battle.net time)
[22:10:08.468] Last Logon: 9/13/2006, 04:06:33 (Battle.net time)
[22:10:08.484] Last Logoff: 9/12/2006, 14:59:57 (Battle.net time)
[22:10:08.484] Time Logged: 18 days, 17 hours, 53 minutes and 51 seconds
[22:10:17.375] <AsPhIxIaTiOn> WOOT
[22:10:22.234] <l)k-GuTzOr> xmp3
[22:10:22.375] <To l)k-GuTzOr> Current MP3: 139: Cypress Hill - Rock Superstar
[22:10:24.312] <l)k-GuTzOr> hahaha
[22:10:27.765] <l)k-GuTzOr> xsay boo!!
[22:10:27.765] <AsPhIxIaTiOn> boo!!
[22:10:29.187] <l)k-GuTzOr> 
[22:11:31.968] -- AsPhIxIaTiOn has acquired ops.
[22:11:31.984] -- l)k-GuTzOr has left the channel.
[22:11:35.890] -- l)k-GuTzOr [47ms] has joined the channel using Starcraft Brood War (2 wins).
_________________
September 13, 2006, 4:22 AM
Twix
I am going to guess that your connecting to useast which hasent even been patched yet which would be why your SB works.
September 13, 2006, 4:29 AM
GuTzOR
No thats uswest!!!
September 13, 2006, 4:31 AM
GuTzOR
Here i'll show you.

[22:24:01.921] -- l)K-BlkBird350Z@Lordaeron has left the channel.
[22:25:03.515] -- TraCe [62ms] has joined the channel using Starcraft (0 wins).
[22:25:06.734] -- TraCe has left the channel.
[22:25:22.375] -- X[D_Leader [31ms] has joined the channel using Starcraft Brood War (184 wins).
[22:25:25.390] <AsPhIxIaTiOn> bOO
[22:25:25.750] <X[D_Leader> i got a bot to work
September 13, 2006, 4:32 AM
GuTzOR
here is more proof!!!


[10:33:39 PM] [BNLS] Connecting...
[10:33:39 PM] [BNLS] Connected!
[10:33:39 PM] [BNLS] Authorized!
[10:33:39 PM] [BNET] Connecting...
[10:33:39 PM] [BNET] Connected!
[10:33:39 PM] [BNET] Checking version...
[10:33:39 PM] [BNET] Client version accepted!
[10:33:39 PM] [BNET] Sending login information...
[10:33:40 PM] [BNET] Login successful.
[10:33:40 PM] [CLAN] You are a Shaman in Clan DK.
[10:33:40 PM] [BNET] Logged on as l)eadlybot0.
[10:33:40 PM] -- Joined channel: Clan DK --
[10:33:40 PM] Welcome to Battle.net!
[10:33:40 PM] This server is hosted by AT&T.
[10:33:40 PM] There are currently 4296 users playing 206 games of Warcraft III, and 130672 users playing 31557 games on Battle.net.
[10:33:40 PM] Last logon: Tue Sep 12  10:33 PM
[10:33:40 PM] -- l)eadlybot0 has acquired ops.
[10:33:40 PM] WeLcOmE To l)aRl( l(nIgHts
[10:33:40 PM] -- Stats updated: l)eadlybot0 [47ms] is using Warcraft III: Reign of Chaos (Level: 0, icon tier Random, peon icon, in Clan DK)
[10:33:40 PM] Account Created: 7/6/2006, 01:32:24 (Battle.net time)
[10:33:40 PM] Last Logon: 9/13/2006, 04:28:02 (Battle.net time)
[10:33:40 PM] Last Logoff: 9/12/2006, 15:28:45 (Battle.net time)
[10:33:40 PM] Time Logged: 25 days, 23 hours, 40 minutes and 10 seconds
[10:33:46 PM] <DS)Dark_Blade_@USWest> O_o
[10:33:49 PM] <DS)Dark_Blade_@USWest> bots are working?
[10:33:50 PM] <l)eadlybot0> Booya!
[10:33:51 PM] <l)eadlybot0> na
[10:33:54 PM] <l)eadlybot0> i just pay for mine
[10:33:56 PM] <l)eadlybot0> :P
[10:34:03 PM] <DS)Dark_Blade_@USWest> lol
[10:34:07 PM] <DS)Dark_Blade_@USWest> Damnit =(
[10:34:15 PM] <DS)Dark_Blade_@USWest> My nf wont work D=
[10:34:31 PM] <DS)Dark_Blade_@USWest> you asphixiation bot owner?
[10:34:32 PM] <l)eadlybot0> this is SB
[10:34:35 PM] <l)eadlybot0> yeah
[10:34:38 PM] <l)eadlybot0> xsay boo
[10:34:38 PM] <AsPhIxIaTiOn@USWest> boo
[10:34:40 PM] <l)eadlybot0> :P
[10:34:41 PM] <DS)Dark_Blade_@USWest> I saw
[10:34:43 PM] <DS)Dark_Blade_@USWest> That you
[10:34:48 PM] <DS)Dark_Blade_@USWest> posted on the.source :D
[10:34:51 PM] <l)eadlybot0> :)
[10:34:53 PM] <l)eadlybot0> yeah
[10:35:05 PM] <DS)Dark_Blade_@USWest> u got like the only bots workings..
[10:35:07 PM] <DS)Dark_Blade_@USWest> working*
September 13, 2006, 4:35 AM
HdxBmx27
This is NOT SB forums
We have explained why some bots work and some do not.
If you have your bot working good for you, enjoy it.
But please, do not spam in here that you got it!
~-~(HDX)~-~
September 13, 2006, 4:37 AM
HeRo
[quote author=HdxBmx27 link=topic=15671.msg157838#msg157838 date=1158122244]
This is NOT SB forums
We have explained why some bots work and some do not.
If you have your bot working good for you, enjoy it.
But please, do not spam in here that you got it!
~-~(HDX)~-~
[/quote]
Yea, I'm shure I speak for the most of us when I say: WE DON'T CARE!
September 13, 2006, 5:34 AM
Mephisto
So how is this problem resolved?
September 13, 2006, 5:40 AM
HdxBmx27
Any bot that reports the correct mpq number to JBLS will be able to login correctly.
And I told UL to send Sky a page to make sure that BNLS works fine. (It should, there wernt any major changes)
Also all local hashing that worked with the old formula should work now.
I think hte main problem is that SB dosen't work cuz Andy is an idiot.
~-~(HDX)~-~
September 13, 2006, 5:57 AM
HeRo
[quote author=HdxBmx27 link=topic=15671.msg157843#msg157843 date=1158127031]
I think hte main problem is that SB dosen't work cuz Andy is an idiot.
~-~(HDX)~-~
[/quote]
Ouch.  :o
September 13, 2006, 6:29 AM
rabbit
[quote author=heRo link=topic=15671.msg157844#msg157844 date=1158128969]
[quote author=HdxBmx27 link=topic=15671.msg157843#msg157843 date=1158127031]
I think hte main problem is that SB dosen't work cuz Andy is an idiot.
~-~(HDX)~-~
[/quote]
Ouch.  :o
[/quote]Eh.  It's true.
September 13, 2006, 1:02 PM
Sixen
[quote]Also all local hashing that worked with the old formula should work now.[/quote]

My hashing still does not work. But, then again, i'm on ShitBot. StealthBot* =]. God.. Make Andy fix it or we'll have to rape him, :X.
September 13, 2006, 1:29 PM
HdxBmx27
He is fixing it, I called him last night, and after school today he will work on the bot and atleast release a new beta. And then sometime soon a new rev.
Now bring all further Sb talk to his forums, not here!
~-~(HDX)~-~
September 13, 2006, 2:03 PM
UserLoser
Listen up, there is no change.  The only way to fix your clients is to properly parse the MPQ digit number.  BNLS will not need to be upgraded, and that guy on StealthBot probably connected because Battle.net told him to use ver-IX86-6.mpq which was a coincedence like I had already explained.
September 13, 2006, 2:06 PM
Mephisto
So please explain how we properly use the new MPQ digit number when it is sent to us?

...

On RECV_AUTH_INFO I have:
[code]pRead->ExtractData(global->_bnetData._MPQVersionFile);
// ...
global->_bnetData._MPQVersionNumber = (unsigned long)atol((const char*)&global->_bnetData._MPQVersionFile[7]);
// ...
if(global->_bnls)
global->_bnlsConnect->Send_CHOOSENLSREVISION();
[/code]

(this is referring to my BNLS connection)

Maybe I just over-read the fix in this discussion? sigh...

Edit: Battle.net is still sending me the MPQ filename in the format ver-ix86-#.mpq rather than ix86ver#.mpq.  So if I set the buffer to read the digit at the [9] index it gets the correct number, but still fails the version check.  Meh...
September 13, 2006, 4:31 PM
Spilled[DW]
[quote author=Mephisto link=topic=15671.msg157875#msg157875 date=1158165110]
So please explain how we properly use the new MPQ digit number when it is sent to us?

...

On RECV_AUTH_INFO I have:
[code]pRead->ExtractData(global->_bnetData._MPQVersionFile);
// ...
global->_bnetData._MPQVersionNumber = (unsigned long)atol((const char*)&global->_bnetData._MPQVersionFile[7]);
// ...
if(global->_bnls)
global->_bnlsConnect->Send_CHOOSENLSREVISION();
[/code]

(this is referring to my BNLS connection)

Maybe I just over-read the fix in this discussion? sigh...

Edit: Battle.net is still sending me the MPQ filename in the format ver-ix86-#.mpq rather than ix86ver#.mpq.  So if I set the buffer to read the digit at the [9] index it gets the correct number, but still fails the version check.  Meh...
[/quote]

There was no change in the checkRevision... The only change was the mpqFileName... Update your bot to recognize this change and your connection should be successful. I believe the change was (IX86ver0.mpq to IX86-0.mpq or some small change of that sort)
September 13, 2006, 6:14 PM
Myndfyr
[quote author=UserLoser link=topic=15671.msg157856#msg157856 date=1158156366]
Listen up, there is no change.  The only way to fix your clients is to properly parse the MPQ digit number.  BNLS will not need to be upgraded, and that guy on StealthBot probably connected because Battle.net told him to use ver-IX86-6.mpq which was a coincedence like I had already explained.
[/quote]

Change or no, I had to update my library because they're using bigger numbers than before and I was getting overflow exceptions.  :P
September 13, 2006, 6:38 PM
Mephisto
[quote author=Spilled link=topic=15671.msg157877#msg157877 date=1158171272]
There was no change in the checkRevision... The only change was the mpqFileName... Update your bot to recognize this change and your connection should be successful. I believe the change was (IX86ver0.mpq to IX86-0.mpq or some small change of that sort)
[/quote]

[code]pRead->ExtractData(global->_bnetData._MPQVersionFile);
cout << Timestamp() << "MPQ Filename: " << global->_bnetData._MPQVersionFile << endl;[/code]
....
The MPQ file name is "ver-IX86-#.mpq" as I receive it from Battle.net, so I do ....
[code]global->_bnetData._MPQVersionNumber = (unsigned long)atol((const char*)&global->_bnetData._MPQVersionFile[9]);[/code]
Yet, it seems to fail the version check 60% of the time and pass 40% of the time.
September 13, 2006, 6:46 PM
Spilled[DW]
Which library?
September 13, 2006, 7:55 PM
inner.
I'm getting the right mpq filename, but it still doesn't work.. What else needs to be done?
September 13, 2006, 8:28 PM
Myndfyr
[quote author=Spilled link=topic=15671.msg157884#msg157884 date=1158177351]
Which library?
[/quote]
MBNCSUtil.
September 13, 2006, 8:36 PM
Spilled[DW]
My vb applications that use bnetauth.dll are working fine but my c++ application needs up to data bncsutil binaries. Anyone have these?
September 13, 2006, 9:43 PM
MysT_DooM
[quote author=inner.de link=topic=15671.msg157888#msg157888 date=1158179295]
I'm getting the right mpq filename, but it still doesn't work.. What else needs to be done?
[/quote]

did you parse the number correctly
1)
September 13, 2006, 10:06 PM
Yegg
[quote author=Mephisto link=topic=15671.msg157880#msg157880 date=1158173170]
[quote author=Spilled link=topic=15671.msg157877#msg157877 date=1158171272]
There was no change in the checkRevision... The only change was the mpqFileName... Update your bot to recognize this change and your connection should be successful. I believe the change was (IX86ver0.mpq to IX86-0.mpq or some small change of that sort)
[/quote]

[code]pRead->ExtractData(global->_bnetData._MPQVersionFile);
cout << Timestamp() << "MPQ Filename: " << global->_bnetData._MPQVersionFile << endl;[/code]
....
The MPQ file name is "ver-IX86-#.mpq" as I receive it from Battle.net, so I do ....
[code]global->_bnetData._MPQVersionNumber = (unsigned long)atol((const char*)&global->_bnetData._MPQVersionFile[9]);[/code]
Yet, it seems to fail the version check 60% of the time and pass 40% of the time.
[/quote]

Grab the 9th character? That seems rather redundant. Why not loop through the string until you reach a digit and return that digit? If a bot was designed like that in the first place, not that the average person who have even considered it, this problem never would have occured.
September 13, 2006, 10:36 PM
HdxBmx27
[quote author=Spilled link=topic=15671.msg157895#msg157895 date=1158183801]
My vb applications that use bnetauth.dll are working fine but my c++ application needs up to data bncsutil binaries. Anyone have these?
[/quote]
http://jbls.org/Downloads/BNCSutil.dll

@Yegg: That wouldn't work....
ver-IX86-0.mpq
IX86ver0.mpq
Looping left to right the 1st diget you would hit would be 8, but thats > 7 so keep going, you get 6 ... Thats not the right answer.
Best I can tell is to strip out the IX86/ver/.mpq leaving you with the following:
--0
0
Then! you can loop and check for a diget.
Or you can just loop in reverse.
Or you do can IndexOf('.')-1
Theres plunty of ways to do it.
~-~(HDX)~-~
September 13, 2006, 11:16 PM
Yegg
[quote author=HdxBmx27 link=topic=15671.msg157904#msg157904 date=1158189412]
[quote author=Spilled link=topic=15671.msg157895#msg157895 date=1158183801]
My vb applications that use bnetauth.dll are working fine but my c++ application needs up to data bncsutil binaries. Anyone have these?
[/quote]
http://jbls.org/Downloads/BNCSutil.dll

@Yegg: That wouldn't work....
ver-IX86-0.mpq
IX86ver0.mpq
Looping left to right the 1st diget you would hit would be 8, but thats > 7 so keep going, you get 6 ... Thats not the right answer.
Best I can tell is to strip out the IX86/ver/.mpq leaving you with the following:
--0
0
Then! you can loop and check for a diget.
Or you can just loop in reverse.
Or you do can IndexOf('.')-1
Theres plunty of ways to do it.
~-~(HDX)~-~
[/quote]

I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
September 13, 2006, 11:25 PM
dRAgoN
For the lazy people.

[code]Dim i As Integer
Dim MPQ_Id As Integer

    i = 1
    Do While IsNumeric(Mid(MPQName, i, 1)) = False
        i = i + 1
    Loop
    MPQ_Id = Mid(MPQName, i, 1)[/code]
Though this would probably be a better plan.
[code]       MPQ_Id = RemoveNonNumerics(Replace(LCase(MPQName), "ix86", ""))

Public Function RemoveNonNumerics(ByVal inBuf As String) As Integer
Dim i As Integer
Dim BufLen As Integer
Dim outBuf As String

    BufLen = Len(inBuf)
    For i = 1 To BufLen
        If IsNumeric(Mid(inBuf, i, 1)) Then
            outBuf = outBuf & Mid(inBuf, i, 1)
        Else
            'Do nothing
        End If
    Next
    RemoveNonNumerics = Val(outBuf)
End Function[/code]


Edit: Somones sarcasim has its limits.
September 13, 2006, 11:42 PM
Yegg
[quote author=l)ragon link=topic=15671.msg157908#msg157908 date=1158190939]
For the lazy people.

[code]Dim i As Integer
Dim MPQ_Id As Integer

    i = 1
    Do While IsNumeric(Mid(MPQName, i, 1)) = False
        i = i + 1
    Loop
    MPQ_Id = Mid(MPQName, i, 1)[/code]
Though this would probably be a better plan.
[code]    MPQ_Id = RemoveNonNumerics(MPQName)

Public Function RemoveNonNumerics(ByVal inBuf As String) As Integer
Dim i As Integer
Dim BufLen As Integer
Dim outBuf As String

    BufLen = Len(inBuf)
    For i = 1 To BufLen
        If IsNumeric(Mid(inBuf, i, 1)) Then
            outBuf = outBuf & Mid(inBuf, i, 1)
        Else
            'Do nothing
        End If
    Next
    RemoveNonNumerics = Val(outBuf)
End Function[/code]
[/quote]

There you go, problem solved in a more efficient manner than simply grabbing the 9th character which is currently a digit (there is only 1 digit in the string).
September 13, 2006, 11:55 PM
Myndfyr
[quote author=Yegg link=topic=15671.msg157906#msg157906 date=1158189923]
I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
[/quote]
OK.  Using your pseudocode, the first digit found and returned would be 8.

Hdx was *right on the money* when he said that your plan was wrong.
September 14, 2006, 12:25 AM
Ersan
Who cares,

I'm having the same problem Mephisto is, I get the right MPQ filename and number, but version check fails 85% of the time.

I'm using BNLS.
September 14, 2006, 12:29 AM
Ringo
Hmm, wouldnt it be safe to say that the filenumber is always the last character of the filename?
I did it 2 ways this morning and decided on the top one  ::)
[code]
Public Function GetMPQFileNumber(ByVal mpqFileName As String) As Long
   Dim tmpInt As Integer
   GetMPQFileNumber = -1
   tmpInt = InStr(1, mpqFileName, ".mpq", vbTextCompare) - 1
   If tmpInt > 0 Then
       If IsNumeric(Mid(mpqFileName, tmpInt, 1)) Then
           GetMPQFileNumber = CLng(Mid(mpqFileName, tmpInt, 1))
       End If
   End If
End Function
[/code]
[code]
Public Function GetMPQFileNumber(ByVal mpqFileName As String) As Long
   On Error GoTo MpqFileNumberError
   GetMPQFileNumber = CLng(Mid(Right(mpqFileName, 5), 1, 1))
   Exit Function
MpqFileNumberError:
   GetMPQFileNumber = -1
End Function
[/code]
September 14, 2006, 12:30 AM
UserLoser
It would be rather interesting if Blizzard decided to generate random filenames that didn't even include the MPQ number in it... ;)
September 14, 2006, 12:34 AM
Yegg
[quote author=MyndFyre[vL] link=topic=15671.msg157917#msg157917 date=1158193504]
[quote author=Yegg link=topic=15671.msg157906#msg157906 date=1158189923]
I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
[/quote]
OK.  Using your pseudocode, the first digit found and returned would be 8.

Hdx was *right on the money* when he said that your plan was wrong.
[/quote]

Oops, you're right, he was right. Somehow... I didn't see the '86' in there. Heh, don't bother asking how that got by me. But, I think he said this also, just reverse the string and then return the first digit.
September 14, 2006, 12:34 AM
dRAgoN
[quote author=MyndFyre[vL] link=topic=15671.msg157917#msg157917 date=1158193504]
[quote author=Yegg link=topic=15671.msg157906#msg157906 date=1158189923]
I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
[/quote]
OK.  Using your pseudocode, the first digit found and returned would be 8.

Hdx was *right on the money* when he said that your plan was wrong.
[/quote]
Fine my bad here.
[code]    MPQ_Id = RemoveNonNumerics(Replace(LCase(MPQName), "ix86", ""))[/code]

Edit: Fixed original post.
September 14, 2006, 12:40 AM
Myndfyr
[quote author=l)ragon link=topic=15671.msg157922#msg157922 date=1158194405]
[quote author=MyndFyre[vL] link=topic=15671.msg157917#msg157917 date=1158193504]
[quote author=Yegg link=topic=15671.msg157906#msg157906 date=1158189923]
I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
[/quote]
OK.  Using your pseudocode, the first digit found and returned would be 8.

Hdx was *right on the money* when he said that your plan was wrong.
[/quote]
Fine my bad here.
[code]    MPQ_Id = RemoveNonNumerics(Replace(LCase(MPQName), "ix86", ""))[/code]
[/quote]

Wouldn't that leave the 86 in?
September 14, 2006, 12:41 AM
Yegg
[quote author=MyndFyre[vL] link=topic=15671.msg157923#msg157923 date=1158194483]
[quote author=l)ragon link=topic=15671.msg157922#msg157922 date=1158194405]
[quote author=MyndFyre[vL] link=topic=15671.msg157917#msg157917 date=1158193504]
[quote author=Yegg link=topic=15671.msg157906#msg157906 date=1158189923]
I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
[/quote]
OK.  Using your pseudocode, the first digit found and returned would be 8.

Hdx was *right on the money* when he said that your plan was wrong.
[/quote]
Fine my bad here.
[code]    MPQ_Id = RemoveNonNumerics(Replace(LCase(MPQName), "ix86", ""))[/code]
[/quote]

Wouldn't that leave the 86 in?
[/quote]

We could just remove the hyphens from the string. I believe hdx also suggested that earlier.
September 14, 2006, 12:42 AM
dRAgoN
[quote author=MyndFyre[vL] link=topic=15671.msg157923#msg157923 date=1158194483]
[quote author=l)ragon link=topic=15671.msg157922#msg157922 date=1158194405]
[quote author=MyndFyre[vL] link=topic=15671.msg157917#msg157917 date=1158193504]
[quote author=Yegg link=topic=15671.msg157906#msg157906 date=1158189923]
I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
[/quote]
OK.  Using your pseudocode, the first digit found and returned would be 8.

Hdx was *right on the money* when he said that your plan was wrong.
[/quote]
Fine my bad here.
[code]    MPQ_Id = RemoveNonNumerics(Replace(LCase(MPQName), "ix86", ""))[/code]
[/quote]

Wouldn't that leave the 86 in?
[/quote]
No that would replace the 'ix86' part of the string with ''.
September 14, 2006, 12:44 AM
HdxBmx27
[code]18  192.168.7.78:2017  63.161.183.205:9367  82  Send 
0000  07 00 0D 02 00 00 00 4B 00 09 08 00 00 00 07 00    .......K........
0010  00 00 43 3D 31 36 37 35 35 37 39 36 31 35 20 41    ..C=1675579615 A
0020  3D 34 32 34 32 34 35 39 35 39 34 20 42 3D 37 37    =4242459594 B=77
0030  37 32 31 31 33 34 36 20 34 20 41 3D 41 5E 53 20    7211346 4 A=A^S
0040  42 3D 42 5E 43 20 43 3D 43 2D 41 20 41 3D 41 2B    B=B^C C=C-A A=A+
0050  42 00                                              B.

19  63.161.183.205:9367  192.168.7.78:2017  7  Recv 
0000  07 00 0D 01 00 00 00                              .......

20  63.161.183.205:9367  192.168.7.78:2017  50  Recv 
0000  32 00 09 01 00 00 00 BA 04 14 01 C3 46 D5 32 57    2...........F.2W
0010  61 72 33 2E 65 78 65 20 30 36 2F 31 33 2F 30 36    ar3.exe 06/13/06
0020  20 30 36 3A 31 33 3A 30 35 20 31 35 37 32 33 30    06:13:05 157230
0030  37 00                                              7.
[/code]
The correct value should be 0x8a38ae2c NOT 0x32d546c3
So indeed BNLS needs to be updated.
~-~(HDX)~-~
September 14, 2006, 12:55 AM
Myndfyr
[quote author=l)ragon link=topic=15671.msg157925#msg157925 date=1158194675]
[quote author=MyndFyre[vL] link=topic=15671.msg157923#msg157923 date=1158194483]
[quote author=l)ragon link=topic=15671.msg157922#msg157922 date=1158194405]
[quote author=MyndFyre[vL] link=topic=15671.msg157917#msg157917 date=1158193504]
[quote author=Yegg link=topic=15671.msg157906#msg157906 date=1158189923]
I didn't say to return an index of where the character lies. I said to return the digit itself. So
where s = 'ver-IX86-0.mpq', loop until character is digit, return first digit found.
[/quote]
OK.  Using your pseudocode, the first digit found and returned would be 8.

Hdx was *right on the money* when he said that your plan was wrong.
[/quote]
Fine my bad here.
[code]    MPQ_Id = RemoveNonNumerics(Replace(LCase(MPQName), "ix86", ""))[/code]
[/quote]

Wouldn't that leave the 86 in?
[/quote]
No that would replace the 'ix86' part of the string with ''.
[/quote]
Oh, I had your RemoveNonNumerics and Replace calls backwards
September 14, 2006, 1:01 AM
Ersan
Lol @ the 9-post response to "HOW DO I PARSE A STRING!?!?!?11"

hdx thanks, think you could explain why it works 12% of the time?
September 14, 2006, 1:12 AM
HdxBmx27
[quote author=Ersan link=topic=15671.msg157932#msg157932 date=1158196360]
hdx thanks, think you could explain why it works 12% of the time?
[/quote]
This has been answered!
The files are numbered 0-7.
Thats 8 diffrent numbers.
People grabbing the number for index[8] will always get 6.
1/8 = 0.125 = 12.5%
Thats why it works 12.5% of the time!
Now quit asking and fix your bot!
~-~(HDX)~-~
September 14, 2006, 1:18 AM
Ersan
but there's no correlation between the MPQ number and when it works!

index[8] = 6??? how what where???

I fixed the MPQ# I send to BNLS but it still doesn't work, you said BNLS needs to be updated?

BNLS's response works 12.5% of the time? why is this??
September 14, 2006, 1:25 AM
HdxBmx27
Start giving us some data.
Packet logs are good.
Seperate them into working/not
And then post them so I may scour through and figure it out.
Because everything is working 100% of the time on my end.
Also, are you useing BNLS? If you are switch to my JBLS.
As you should of noticed above, I showed that BNLS indeed needs updating.
Also IX86ver#.mpq
# = Index[8]
ver-IX86-#.mpq
6 = Index[8]
# = Index[10]
~-~(HDX)~-~
September 14, 2006, 1:28 AM
Ersan
JBLS doesn't support 0x0B, or it's got some different format for it because I remotely hash the password.

I'll start posting packet logs if you want, give me a minute.
September 14, 2006, 1:32 AM
HdxBmx27
[code]Private Sub Send0x0BBNLS(ByVal Pass As String)
    Dim PBuffer As New clsBuff
    With PBuffer
        .DWORD = Len(Pass)
        .DWORD = 2
        .void = LCase(Pass)
        .DWORD = ClientToken
        .DWORD = ServerToken
        .AddBNLSHeader &HB
        SendBNLS .All
    End With
    Debug.Print "[BNLS] Sent 0x0B"
End Sub[/code]
It support all BNLS packets + Client id's 9/a/b
Mind volenteering your password? I have gotten reports that it dosen't hash passwords with spacific Ex-ASCII charecters correctly. But I've never been able to test.
~-~(HDX)~-~
September 14, 2006, 1:36 AM
Ersan
password doesn't have any unicode chars in it,

working:
[code]0000  ff 50 66 00 00 00 00 00 42 2f 5b 63 88 d3 00 00  .Pf.....B/[c....
0010  00 20 58 7d 99 cb c6 01 76 65 72 2d 49 58 38 36  . X}....ver-IX86
0020  2d 32 2e 6d 70 71 00 42 3d 35 30 38 35 33 31 36  -2.mpq.B=5085316
0030  34 39 20 43 3d 33 30 36 33 39 36 37 36 37 20 41  49 C=306396767 A
0040  3d 31 36 38 32 34 35 34 38 33 35 20 34 20 41 3d  =1682454835 4 A=
0050  41 5e 53 20 42 3d 42 5e 43 20 43 3d 43 2d 41 20  A^S B=B^C C=C-A
0060  41 3d 41 2d 42 00                                A=A-B.[/code]

notworking:
[code]0000  ff 50 68 00 00 00 00 00 32 fe fa ba d6 d2 00 00  .Ph.....2.......
0010  00 20 58 7d 99 cb c6 01 76 65 72 2d 49 58 38 36  . X}....ver-IX86
0020  2d 32 2e 6d 70 71 00 41 3d 33 38 39 30 36 30 33  -2.mpq.A=3890603
0030  34 30 31 20 43 3d 32 35 34 33 33 38 35 38 31 30  401 C=2543385810
0040  20 42 3d 32 36 31 32 38 30 31 33 34 33 20 34 20    B=2612801343 4
0050  41 3d 41 5e 53 20 42 3d 42 2b 43 20 43 3d 43 2b  A=A^S B=B+C C=C+
0060  41 20 41 3d 41 2b 42 00                          A A=A+B.[/code]

Full packetlogs:
working - http://pastebin.ca/169660
notworking - http://pastebin.ca/169661
September 14, 2006, 2:15 AM
HdxBmx27
MM, BNLS is returning the wrong data.
Use JBLS.org as your BNLS server.
~-~(HDX)~-~
September 14, 2006, 2:33 AM
Ersan
Like I said, JBLS seems to incorrectly hash my passwords.
I don't use the extended 0x0B, I just hash the password then use that response and wrap the client and server key around that hash and send 0x0B again, I may change it.

You're certain this is BNLS?
September 14, 2006, 2:35 AM
HdxBmx27
[quote author=Ersan link=topic=15671.msg157947#msg157947 date=1158201323]
You're certain this is BNLS?
[/quote]
Yes.
I have tested it many times with SB.
It works 100% of the time when useing JBLS, but only ~12.5% of the time with BNLS.
And do you mind volentering your pass so that I can test it?
~-~(HDX)~-~
September 14, 2006, 2:46 AM
Skywing
An integer truncation issue has been fixed in the version check library used by BNLS, and a release has been made.
September 14, 2006, 2:48 AM
Ersan
^^ that makes more sense, thx skywing.

BNCSUtil seems to have the same problem?
September 14, 2006, 2:50 AM
Spilled[DW]
[quote author=Ersan link=topic=15671.msg157952#msg157952 date=1158202235]
^^ that makes more sense, thx skywing.

BNCSUtil seems to have the same problem?
[/quote]

I've established a starcraft connection with the updated bnetauth.dll but not with bncsutil.dll
September 14, 2006, 7:01 PM
BreW
cool

now how do we fix this problem? people aren't as stupid as you think they are, its quite easy to parse a string.
lets say you do parse your strings, it still won't work. blizzard changed something else too :}

anyways, it seems that HDX fixed his password hash problem, but forgot wc3
September 14, 2006, 8:20 PM
JoeTheOdd
Seeing as how you're all confused beyond belief (except MyndFyre -- apparently he's got it), don't rely on your library to extract the MPQ number for you. It's so ridiculously easy to do that you should be able to program your own method for it with your eyes blindfolded and your hands tied behind your back, as well as having your toes chopped off. For those who aren't as good at typing with their nose, here you go:

[code]'---------------------------------------------------------------------------------------
' Procedure : ExtractMPQNumber
' Author    : Joe[x86]
' Purpose  : Allows extraction of the MPQ number from both types of CheckRevision
'              MPQ filenames, as of 9/14/06.
'---------------------------------------------------------------------------------------
'
Public Function ExtractMPQNumber(s As String) As Integer
    ' Note that there are now two name formats for MPQs:
    'IX86ver1.mpq
    'ver-IX86-1.mpq
   
    ' First, handle the old type:
    If Left(s, 4) = "IX86" Then
        ExtractMPQNumber = Asc(Mid(s, 8)) - &H30
    ElseIf Left(s, 3) = "ver" Then
    ' Handle the new type:
        ExtractMPQNumber = Asc(Mid(s, 10)) - &H30
    Else
    ' Future stunts blizzard pulls
        ExtractMPQNumber = -1
    End If
End Function[/code]

Untested, but it compiles. Hold on a bit, I'm going to try it out now.

EDIT -
After using an ugly method of converting a single-byte string representing a number into an integer, I've fixed a type mismatch and tested it using both a variable MPQ name sent from Battle.net as well as a hardcoded old-style name. It worked with both. Also, [tt]Debug.Print (ExtractMPQNumber("booblah1lollol"))[/tt] produced the resired desult of -1.
September 14, 2006, 9:14 PM
rob
For those of you using bnetauth which accepts the filename and not the number this is the easiest fix for your bot

MPQName = Mid(data, InStr(LCase(data), "mpq") - 2, 5)
ServerHash = Mid(data, InStr(data, "mpq") + 4, Len(data) - 2)

This will work no matter which of the 2 current formats is used

for those of you using a library that accepts a number, or BNLS

MPQNum = CLng(Mid(MPQName, 1, 1))

I have also verified that my update to bnetauth.dll is still functional
September 14, 2006, 9:26 PM
JoeTheOdd
I swear you people who don't use debuffers are going to give me a fucking stroke. :P

[pre]            sMPQ = debuff.RemoveNTString            ' MPQ filename
            sFormula = debuff.RemoveNTString        ' Checksum Formula[/pre]
September 14, 2006, 9:29 PM
Myndfyr
[quote author=Joe[x86] link=topic=15671.msg158007#msg158007 date=1158269355]
I swear you people who don't use debuffers are going to give me a fucking stroke. :P

[pre]            sMPQ = debuff.RemoveNTString            ' MPQ filename
            sFormula = debuff.RemoveNTString        ' Checksum Formula[/pre]
[/quote]
Agreed.  Now if we can just get you people who call them "debuffers" to stop sounding like jackasses, we can get something done.  :P
September 14, 2006, 9:37 PM
JoeTheOdd
Are you at work at the moment? If not, get on AIM. :).
September 14, 2006, 9:49 PM
Ersan
Joe what the hell, nobody's talking about your 26 line code to parse a damn string, I like Eric's get-the-number-to-the-left-of-the-dot method.

I'm not relying on my library to extract an MPQ number, and I don't think anyone is... There was a second change that b.net made on this update, they use 64-bit integers for A, B, and C for checkrevision - BNCSUtil (and BNLS prior to skywing's post) uses 32-bit variables for these numbers and thus it doesn't work.
September 14, 2006, 10:53 PM
JoeTheOdd
[quote author=Ersan link=topic=15671.msg158015#msg158015 date=1158274380]
Joe what the hell, nobody's talking about your 26 line code to parse a damn string, I like Eric's get-the-number-to-the-left-of-the-dot method.

I'm not relying on my library to extract an MPQ number, and I don't think anyone is... There was a second change that b.net made on this update, they use 64-bit integers for A, B, and C for checkrevision - BNCSUtil (and BNLS prior to skywing's post) uses 32-bit variables for these numbers and thus it doesn't work.
[/quote]

I know. Use K (or Kp, who knows?) recompiled it.
September 14, 2006, 10:57 PM
Spilled[DW]
[quote author=Ersan link=topic=15671.msg158015#msg158015 date=1158274380]
Joe what the hell, nobody's talking about your 26 line code to parse a damn string, I like Eric's get-the-number-to-the-left-of-the-dot method.
[/quote]

lmao.
September 14, 2006, 10:59 PM
Myndfyr
[quote author=Ersan link=topic=15671.msg158015#msg158015 date=1158274380]
Joe what the hell, nobody's talking about your 26 line code to parse a damn string, I like Eric's get-the-number-to-the-left-of-the-dot method.

I'm not relying on my library to extract an MPQ number, and I don't think anyone is... There was a second change that b.net made on this update, they use 64-bit integers for A, B, and C for checkrevision - BNCSUtil (and BNLS prior to skywing's post) uses 32-bit variables for these numbers and thus it doesn't work.
[/quote]
I'm not 100% sure they're using 64-bit integers; converting to 32-bit unsigned integers worked for me in tests.

As to get-the-number-to-the-left-of-the-dot method, who's to say they're not going to start with ver-1-IX86.mpq?  So before you discount Joe too much, give him a break.
September 14, 2006, 11:18 PM
HdxBmx27
[quote author=Ersan link=topic=15671.msg157952#msg157952 date=1158202235]BNCSUtil seems to have the same problem?
[/quote]
Confermed, over all clients.

[quote]anyways, it seems that HDX fixed his password hash problem, but forgot wc3[/quote]
Ya, I fixed 0x0B BNLS_HASHDATA last night, just a little data type conversion misshap. And could you please explain what you mean by 'but forgot wc3'.
And please submit a packet log of your connection to JBLS when you encounter the error.
Supplying me with the data to reproduce the error will help with fixing it.

Also! All of you who are dismissing useing an external library to grab the dll number.
Let me give you an example case:
Stealthbot, Manually grabbed the digit itself.
Blizzard changed the format.
We now have to recompile the closed source application itself, and the only one who can do that is Stealth himself.
But if he had used BNCSutil we could of jsut updated the dll and there would be no need for a new exe!

meh oh well. I like modular programs.
~-~(HDX)~-~
September 14, 2006, 11:21 PM
inner.
[quote author=rob link=topic=15671.msg158006#msg158006 date=1158269215]
For those of you using bnetauth which accepts the filename and not the number this is the easiest fix for your bot

MPQName = Mid(data, InStr(LCase(data), "mpq") - 2, 5)
ServerHash = Mid(data, InStr(data, "mpq") + 4, Len(data) - 2)

This will work no matter which of the 2 current formats is used

for those of you using a library that accepts a number, or BNLS

MPQNum = CLng(Mid(MPQName, 1, 1))

I have also verified that my update to bnetauth.dll is still functional
[/quote]
Thanks. I appreciate it.
September 14, 2006, 11:25 PM
Yegg
[quote author=MyndFyre[vL] link=topic=15671.msg158019#msg158019 date=1158275888]
[quote author=Ersan link=topic=15671.msg158015#msg158015 date=1158274380]
Joe what the hell, nobody's talking about your 26 line code to parse a damn string, I like Eric's get-the-number-to-the-left-of-the-dot method.

I'm not relying on my library to extract an MPQ number, and I don't think anyone is... There was a second change that b.net made on this update, they use 64-bit integers for A, B, and C for checkrevision - BNCSUtil (and BNLS prior to skywing's post) uses 32-bit variables for these numbers and thus it doesn't work.
[/quote]
I'm not 100% sure they're using 64-bit integers; converting to 32-bit unsigned integers worked for me in tests.

As to get-the-number-to-the-left-of-the-dot method, who's to say they're not going to start with ver-1-IX86.mpq?  So before you discount Joe too much, give him a break.
[/quote]

So the best method was to remove the 'ix86', loop through the string and return whatever digit is found. Atleast, this idea sounds practical to me. Or is there a better method?
September 14, 2006, 11:53 PM
Myndfyr
[quote author=Yegg link=topic=15671.msg158027#msg158027 date=1158278028]
[quote author=MyndFyre[vL] link=topic=15671.msg158019#msg158019 date=1158275888]
[quote author=Ersan link=topic=15671.msg158015#msg158015 date=1158274380]
Joe what the hell, nobody's talking about your 26 line code to parse a damn string, I like Eric's get-the-number-to-the-left-of-the-dot method.

I'm not relying on my library to extract an MPQ number, and I don't think anyone is... There was a second change that b.net made on this update, they use 64-bit integers for A, B, and C for checkrevision - BNCSUtil (and BNLS prior to skywing's post) uses 32-bit variables for these numbers and thus it doesn't work.
[/quote]
I'm not 100% sure they're using 64-bit integers; converting to 32-bit unsigned integers worked for me in tests.

As to get-the-number-to-the-left-of-the-dot method, who's to say they're not going to start with ver-1-IX86.mpq?  So before you discount Joe too much, give him a break.
[/quote]

So the best method was to remove the 'ix86', loop through the string and return whatever digit is found. Atleast, this idea sounds practical to me. Or is there a better method?
[/quote]
That sounds like the most practical to me at this point.
September 14, 2006, 11:55 PM
Fr3DBr
lol you guys want only to get the number ?
September 15, 2006, 12:12 AM
Yegg
[quote author=Fr3DBr link=topic=15671.msg158033#msg158033 date=1158279145]
lol you guys want only to get the number ?
[/quote]

Is there a problem with that?
September 15, 2006, 12:15 AM
Fr3DBr
tell me exactly what should be done and ill provide code for that.
September 15, 2006, 12:21 AM
MyStiCaL
code was already provided. =\
September 15, 2006, 12:22 AM
Fr3DBr
maybe optimized code then hehe?
September 15, 2006, 12:24 AM
Yegg
[quote author=Fr3DBr link=topic=15671.msg158037#msg158037 date=1158279892]
maybe optimized code then hehe?
[/quote]

... Why are you here? The issue with grabbing the DLL version digit is solved in every way (for now).
September 15, 2006, 12:26 AM
rabbit
Crappy code to do it for any of the types!

[tt]MPQNumber = Replace(Replace(Replace(Replace(MPQFileName, "-", ""), ".mpq", ""), "ix86", ""), "ver", "")[/tt]
September 15, 2006, 12:31 AM
l2k-Shadow
[quote author=rabbit link=topic=15671.msg158041#msg158041 date=1158280298]
Crappy code to do it for any of the types!

[tt]MPQNumber = Replace(Replace(Replace(Replace(MPQFileName, "-", ""), ".mpq", ""), "ix86", ""), "ver", "")[/tt]
[/quote]

!! YES!
September 15, 2006, 12:35 AM
JoeTheOdd
OMG I AM GOING TO USE RABBITS METHOD, THANKS RABBIT
September 15, 2006, 12:52 AM
l2k-Shadow
[quote author=Joe[x86] link=topic=15671.msg158044#msg158044 date=1158281536]
OMG I AM GOING TO USE RABBITS METHOD, THANKS RABBIT
[/quote]

well it is better than yours in any case.
September 15, 2006, 1:22 AM
Ersan
Yeah so, BNLS, BNCSutil, and JBLS all work again, high five.
September 15, 2006, 1:24 AM
Yegg
[quote author=Ersan link=topic=15671.msg158047#msg158047 date=1158283462]
Yeah so, BNLS, BNCSutil, and JBLS all work again, high five.
[/quote]

Unfortunately bots using BNLS will have to be updated. Can't use EternalChat anymore :/.
September 15, 2006, 1:29 AM
HeRo
[quote author=Ersan link=topic=15671.msg158047#msg158047 date=1158283462]
Yeah so, BNLS, BNCSutil, and JBLS all work again, high five.
[/quote]
*Hits hand with confidence*
September 15, 2006, 1:58 AM
dRAgoN
[quote author=rabbit link=topic=15671.msg158041#msg158041 date=1158280298]
Crappy code to do it for any of the types!

[tt]MPQNumber = Replace(Replace(Replace(Replace(MPQFileName, "-", ""), ".mpq", ""), "ix86", ""), "ver", "")[/tt]
[/quote]
https://davnit.net/bnet/vL/index.php?topic=15671.msg157908#msg157908
September 15, 2006, 4:34 AM
Spilled[DW]
[quote author=Ersan link=topic=15671.msg158047#msg158047 date=1158283462]
Yeah so, BNLS, BNCSutil, and JBLS all work again, high five.
[/quote]

Nice work. Thanks to everyone and their hard work.
September 15, 2006, 12:57 PM
MyStiCaL
[quote author=Yegg link=topic=15671.msg158049#msg158049 date=1158283747]
[quote author=Ersan link=topic=15671.msg158047#msg158047 date=1158283462]
Yeah so, BNLS, BNCSutil, and JBLS all work again, high five.
[/quote]

Unfortunately bots using BNLS will have to be updated. Can't use EternalChat anymore :/.
[/quote]

gunna miss eternalchat =(
September 15, 2006, 5:03 PM
HeRo
[quote author=Mystical link=topic=15671.msg158100#msg158100 date=1158339813]
[quote author=Yegg link=topic=15671.msg158049#msg158049 date=1158283747]
[quote author=Ersan link=topic=15671.msg158047#msg158047 date=1158283462]
Yeah so, BNLS, BNCSutil, and JBLS all work again, high five.
[/quote]

Unfortunately bots using BNLS will have to be updated. Can't use EternalChat anymore :/.
[/quote]

gunna miss eternalchat =(
[/quote]
It will most likely be updated.
September 15, 2006, 10:41 PM
Yegg
[quote author=heRo link=topic=15671.msg158141#msg158141 date=1158360103]
[quote author=Mystical link=topic=15671.msg158100#msg158100 date=1158339813]
[quote author=Yegg link=topic=15671.msg158049#msg158049 date=1158283747]
[quote author=Ersan link=topic=15671.msg158047#msg158047 date=1158283462]
Yeah so, BNLS, BNCSutil, and JBLS all work again, high five.
[/quote]

Unfortunately bots using BNLS will have to be updated. Can't use EternalChat anymore :/.
[/quote]

gunna miss eternalchat =(
[/quote]
It will most likely be updated.
[/quote]

Actually, I just thought of this earlier today, the BNLS.dll used by EternalChat I am guessing is the only thing that would need to be updated. I'm sure Spht wouldn't mind fixing it whenever he has some free time.
September 15, 2006, 10:55 PM
l2k-Shadow
fyi BNLS.dll is a renamed BnetAuth.dll
September 15, 2006, 11:00 PM
Yegg
[quote author=l2k-Shadow link=topic=15671.msg158144#msg158144 date=1158361247]
fyi BNLS.dll is a renamed BnetAuth.dll
[/quote]

Only renamed? Doesn't BNLS.dll use BNLS while bnetauth.dll uses hashing?
September 15, 2006, 11:52 PM
l2k-Shadow
[quote author=Yegg link=topic=15671.msg158147#msg158147 date=1158364345]
[quote author=l2k-Shadow link=topic=15671.msg158144#msg158144 date=1158361247]
fyi BNLS.dll is a renamed BnetAuth.dll
[/quote]

Only renamed? Doesn't BNLS.dll use BNLS while bnetauth.dll uses hashing?
[/quote]

BNLS.dll doesn't use BNLS, it is a renamed BnetAuth.dll, the fact that a file is named something has nothing to do with the functions of the file :)
September 15, 2006, 11:56 PM
BreW
Shadow stop acting like you're so smart, tell us how you KNOW bnls.dll is a renamed bnetauth?
September 15, 2006, 11:58 PM
Spilled[DW]
[quote author=BreW link=topic=15671.msg158149#msg158149 date=1158364713]
Shadow stop acting like you're so smart, tell us how you KNOW bnls.dll is a renamed bnetauth?
[/quote]

....
September 16, 2006, 12:32 AM
l2k-Shadow
[quote author=BreW link=topic=15671.msg158149#msg158149 date=1158364713]
Shadow stop acting like you're so smart, tell us how you KNOW bnls.dll is a renamed bnetauth?
[/quote]

Alright fleet- dick sucker, here ya go! I love it when people like you try to make it seem like I don't know what I'm talking about.

[quote]
; MD5 sums generated by FileCheckMD5 version 0.2.1.10
; Free from: http://www.brandonstaggs.com/filecheckmd5.html
; 9/15/2006 5:44:35 PM
01d76da7000404106e268f9ea3143d95|BnetAuth.dll
01d76da7000404106e268f9ea3143d95|BNLS.dll
[/quote]
The only thing that needs to be changed to achieve this result is hex editing BNLS.dll at the end of the file into bnetauth.dll. In case you don't know what that means:
[img]http://www.energydl.com/shadow/bnls.dll.jpg[/img]
September 16, 2006, 12:45 AM
Yegg
Does this mean EternalChat bot can still be used without needing any of its code? For instance, grab an updated bnetauth.dll, rename it as BNLS.dll, or something to this extent and expect EternalChat to once again connect to Battle.net? Or, am I completely off?

By the way, nice work on figuring out that BNLS.dll was just a rename of bnetauth.dll.
September 16, 2006, 12:58 AM
HeRo
[quote author=l2k-Shadow link=topic=15671.msg158144#msg158144 date=1158361247]
fyi BNLS.dll is a renamed BnetAuth.dll
[/quote]
Wow... I never even thought of that, I wonder why....
September 16, 2006, 1:07 AM
l2k-Shadow
[quote author=Yegg link=topic=15671.msg158156#msg158156 date=1158368286]
Does this mean EternalChat bot can still be used without needing any of its code? For instance, grab an updated bnetauth.dll, rename it as BNLS.dll, or something to this extent and expect EternalChat to once again connect to Battle.net? Or, am I completely off?

By the way, nice work on figuring out that BNLS.dll was just a rename of bnetauth.dll.
[/quote]

well eternalchat uses bnls so i don't know what the need for the library is in the first place, but as long as eternalchat parses the mpq file name correctly, it should work either way..
September 16, 2006, 1:19 AM
Yegg
[quote author=l2k-Shadow link=topic=15671.msg158158#msg158158 date=1158369573]
[quote author=Yegg link=topic=15671.msg158156#msg158156 date=1158368286]
Does this mean EternalChat bot can still be used without needing any of its code? For instance, grab an updated bnetauth.dll, rename it as BNLS.dll, or something to this extent and expect EternalChat to once again connect to Battle.net? Or, am I completely off?

By the way, nice work on figuring out that BNLS.dll was just a rename of bnetauth.dll.
[/quote]

well eternalchat uses bnls so i don't know what the need for the library is in the first place, but as long as eternalchat parses the mpq file name correctly, it should work either way..
[/quote]

This was what I was unsure of. Does EternalChat.exe do the parsing? Or does BNLS.dll?
September 16, 2006, 1:29 AM
l2k-Shadow
[quote author=Yegg link=topic=15671.msg158160#msg158160 date=1158370144]
[quote author=l2k-Shadow link=topic=15671.msg158158#msg158158 date=1158369573]
[quote author=Yegg link=topic=15671.msg158156#msg158156 date=1158368286]
Does this mean EternalChat bot can still be used without needing any of its code? For instance, grab an updated bnetauth.dll, rename it as BNLS.dll, or something to this extent and expect EternalChat to once again connect to Battle.net? Or, am I completely off?
By the way, nice work on figuring out that BNLS.dll was just a rename of bnetauth.dll.

[/quote]

well eternalchat uses bnls so i don't know what the need for the library is in the first place, but as long as eternalchat parses the mpq file name correctly, it should work either way..
[/quote]

This was what I was unsure of. Does EternalChat.exe do the parsing? Or does BNLS.dll?
[/quote]

eternalchat, bnetauth doesn't have a function for parsing the file.
September 16, 2006, 2:22 AM
Ersan
[quote author=MyndFyre[vL] link=topic=15671.msg158019#msg158019 date=1158275888]
As to get-the-number-to-the-left-of-the-dot method, who's to say they're not going to start with ver-1-IX86.mpq?  So before you discount Joe too much, give him a break.
[/quote]

OMG maybe they'll change it to Lol-Faggots-3-STFU-NOOB.mpq
September 16, 2006, 5:31 AM
HdxBmx27
Ohh oh simple answer!
Modulize it!
Or!
Configurize it! (is that a word?)
Basically, make the users have access to how your bot grabs the MPQ number in the future!
And then jsut use the .-1 method for now, because it works. Fix it later when it breaks!
~-~(HDX)~-~
September 16, 2006, 5:38 AM
Ersan
My guess is that Spht (and me too) didn't like the idea of sending unencrypted passwords over the internet, and the broken SHA-1 alg's weren't public at the time?  Dunno.

That or he's just retarded.  If you're including the file in the first place might as well support local hashing.

[quote author=HdxBmx27 link=topic=15671.msg158177#msg158177 date=1158385115]
Ohh oh simple answer!
Modulize it!
Or!
Configurize it! (is that a word?)
Basically, make the users have access to how your bot grabs the MPQ number in the future!
And then jsut use the .-1 method for now, because it works. Fix it later when it breaks!
~-~(HDX)~-~
[/quote]

Where does it end, making it so you can change packet headers in case b.net decides to change them?  Making the format of every single packet sent configurable?!  The parsing of them?!

It's really not worth it IMO
September 16, 2006, 7:59 AM
RealityRipple
The simplest answer IMO is to just start using the actual MPQ files instead of all these extra files. Lord[nK] had the right idea when he made his bot and his (i guess new?) dll. I just added the same ability to my bot, and it works wonderfully.
September 16, 2006, 8:31 AM
Skywing
The ix86ver dlls are rather buggy, so you'll be having to accept the fact that any server you connect to will be able to crash your program at will (and unless you are careful, run code on your computer).  There is also a rather sizable (think around 28k or so typically) memory/address space leak each time you successfully call CheckRevision.

This is primarily a problem if you connect to third party servers, where even if you verify the signature on the downloaded binary, you are still at risk due to bugs in the handling of various inputs.
September 16, 2006, 3:39 PM
BreW
[quote author=l2k-Shadow link=topic=15671.msg158154#msg158154 date=1158367545]
[quote author=BreW link=topic=15671.msg158149#msg158149 date=1158364713]
Shadow stop acting like you're so smart, tell us how you KNOW bnls.dll is a renamed bnetauth?
[/quote]

Alright fleet- dick sucker, here ya go! I love it when people like you try to make it seem like I don't know what I'm talking about.

[quote]
; MD5 sums generated by FileCheckMD5 version 0.2.1.10
; Free from: http://www.brandonstaggs.com/filecheckmd5.html
; 9/15/2006 5:44:35 PM
01d76da7000404106e268f9ea3143d95|BnetAuth.dll
01d76da7000404106e268f9ea3143d95|BNLS.dll
[/quote]
The only thing that needs to be changed to achieve this result is hex editing BNLS.dll at the end of the file into bnetauth.dll. In case you don't know what that means:
[img]http://www.energydl.com/shadow/bnls.dll.jpg[/img]
[/quote]

OK you czech piece of shit, i guess you were "right"
lmao but heres the funny part: How come you released your new ver of l2uthless AFTER code was released where Fleet got nF working before? gfg? and if you say that l2uthless was working before nf, thats a lie, because it uses BNLS. Lie more please?
And I'm pretty curious as to what program you "used" to "compare" those two files. Trust me, that's NOT a hex editor. and no, i didn't try to prove you wrong at all, and Don't call me a fleet- cocksucker, you don't know me.
Also, i bet that program you used to "compare" the two files is as legit as this "wc3 banlist" program that was used to "catch fleet-'s sp1der backdoor" PLEASE LIE MORE
September 16, 2006, 3:55 PM
MysT_DooM
flame him on his own site, not here.

also, realityripply can you pm a packetlog of the bftpv1
thx
September 16, 2006, 5:16 PM
Yegg
[quote author=MysT_DooM link=topic=15671.msg158199#msg158199 date=1158426969]
flame him on his own site, not here.

also, realityripply can you pm a packetlog of the bftpv1
thx

[/quote]

Regardless of what was said, the two files are identical in the comparison, just with different file names.

And this is not Bnetweb, or some other lame site where every other post is a flame. I suggest you never talk again on these forums if you plan on making posts like that regularly.
September 16, 2006, 5:32 PM
Sanguine
seems to me they have changed the integer aswell...

java.lang.NumberFormatException: For input string: "4206743121"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:480)
        at java.lang.Integer.parseInt(Integer.java:518)
        at Olympian.CheckRevision.checkRevision(CheckRevision.java:68)
        at Olympian.Login.checkRevision(Login.java:172)
        at Olympian.Login.getAuthCheck(Login.java:90)
        at Olympian.Bot.processPacket(Bot.java:275)
        at Olympian.Bot.rcvdPacket(Bot.java:234)
java.lang.NumberFormatException: For input string: "2508930808"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:480)
        at java.lang.Integer.parseInt(Integer.java:518)
        at Olympian.CheckRevision.checkRevision(CheckRevision.java:68)
        at Olympian.Login.checkRevision(Login.java:172)
        at Olympian.Login.getAuthCheck(Login.java:90)
        at Olympian.Bot.processPacket(Bot.java:275)
        at Olympian.Bot.rcvdPacket(Bot.java:234)
java.lang.NumberFormatException: For input string: "2162843297"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:480)
        at java.lang.Integer.parseInt(Integer.java:518)
        at Olympian.CheckRevision.checkRevision(CheckRevision.java:69)
        at Olympian.Login.checkRevision(Login.java:172)
        at Olympian.Login.getAuthCheck(Login.java:90)
        at Olympian.Bot.processPacket(Bot.java:275)
        at Olympian.Bot.rcvdPacket(Bot.java:234)
September 16, 2006, 7:47 PM
HdxBmx27
We know, use Double not int. And you will be fine!
Also anyone whos inerested, I made this from Lord's code for VB users to have fun with!
And can someone please edit there posts witht he images >.< its breaking tables ungodly for me >.< (1024x768)
~-~(HDX)~-~
September 16, 2006, 8:02 PM
l2k-Shadow
very nice work hdx :D

@ BreW, if you plan to make flaming posts, I suggest you leave these forums. But i'll reply to it anyway in a mature manner, unlike you.
1) There is nothing fleet- did to make NF work, new BNCSUtil library was released.
2) The program I used is called Lister and is a part of a utility called Total Commander, and no it is not a hex editor, it simply views a file. I used Hex Workshop to edit the file. I also included the MD5 checksums for both files and they were the same after hexing the string BNLS.dll into bnetauth.dll, in case you did not notice.
3)[quote author=BreW link=topic=15671.msg158149#msg158149 date=1158364713]
Shadow stop acting like you're so smart, tell us how you KNOW bnls.dll is a renamed bnetauth?
[/quote]Since you want to try to offend me I can try to offend you.
4) As far as I know I had nothing to do with any screenshots concerning using "wc3 banlist" to "catch fleet-'s sp1der backdoor"
Now this issue is done, do not make any off topic posts please.
September 16, 2006, 8:59 PM
BreW
[quote author=l2k-Shadow link=topic=15671.msg158214#msg158214 date=1158440362]
very nice work hdx :D

@ BreW, if you plan to make flaming posts, I suggest you leave these forums. But i'll reply to it anyway in a mature manner, unlike you.
1) There is nothing fleet- did to make NF work, new BNCSUtil library was released.
2) The program I used is called Lister and is a part of a utility called Total Commander, and no it is not a hex editor, it simply views a file. I used Hex Workshop to edit the file. I also included the MD5 checksums for both files and they were the same after hexing the string BNLS.dll into bnetauth.dll, in case you did not notice.
3)[quote author=BreW link=topic=15671.msg158149#msg158149 date=1158364713]
Shadow stop acting like you're so smart, tell us how you KNOW bnls.dll is a renamed bnetauth?
[/quote]Since you want to try to offend me I can try to offend you.
4) As far as I know I had nothing to do with any screenshots concerning using "wc3 banlist" to "catch fleet-'s sp1der backdoor"
Now this issue is done, do not make any off topic posts please.
[/quote]

That's untrue, you had to change coding within the bot, which you did not do until it was public.
This is what would happen if the coding wasn't altered:
[17:24:16] (0) Connecting - 63.240.202.134
[17:24:16] (0) &H50 Sent
[17:24:16] Failed to gather MPQNumber.
Anything else you would like to add? Contact me on Battle.net, my name is Ahead@USEast.
Let's not carry this out here.
September 16, 2006, 9:13 PM
l2k-Shadow
not at all, my bot uses extractMPQNumber() function in BNCSutil, therefore, it retrieved correct mpq number, reason it did not work is because bncsutil incorrectly handled the large integer, you could load an old version with the new bncsutil and it would work just fine.
September 16, 2006, 10:35 PM
Spilled[DW]
Shadow is correct, extractMPQNumber() did not need to be updated.
September 16, 2006, 10:44 PM
Sanguine
[quote author=HdxBmx27 link=topic=15671.msg158208#msg158208 date=1158436960]
We know, use Double not int. And you will be fine!
Also anyone whos inerested, I made this for VB users to have fun with!
And can someone please edit there posts witht he images >.< its breaking tables ungodly for me >.< (1024x768)
~-~(HDX)~-~
[/quote]

Then have you updated your JBLS server? I checked your website before making this post and you mentioned your last update was when they changed their checkrevision process in August.

September 17, 2006, 12:00 AM
HdxBmx27
Ya I was the 1st to update <3
The latest news on my server is from 09-14-06 10:19:39 PM
I have to manually go through and add the posts, So the timestamps might be off if I make a typo >.<
~-~(HDX)~-~
September 17, 2006, 12:05 AM
Sanguine
Good, good.

Just checking :>
September 17, 2006, 12:18 AM
replaced
Can someone update bncsutil again, some bots still use bncsutil now they cant load war3 ne more, b/c of those unsigned integers....
September 17, 2006, 5:23 AM
HdxBmx27
READ
~-~(HDX)~-~
September 17, 2006, 5:26 AM
replaced
THAT BNLSUTIL DONT WORK!  READ

the 1.3.1.1 AND 1.3.0.1 vers release has bnet giving me the game version invalid error (for war3), it was working before, now it dont!

Hint:  go read the topic urself
September 17, 2006, 8:25 AM
MyStiCaL
[quote author=replaced link=topic=15671.msg158249#msg158249 date=1158481543]
THAT BNLSUTIL DONT WORK!   READ

the 1.3.1.1 AND 1.3.0.1 vers release has bnet giving me the game version invalid error (for war3), it was working before, now it dont!

Hint:  go read the topic urself
[/quote]

maybe you didn't replace 1.3.1.1 right with 1.3.0.1 because it works just fine, we are all using it, must be your code, maybe you should re-look over your code, and make sure your hashes are up-to-date.
September 17, 2006, 8:31 AM
HdxBmx27
[quote author=replaced link=topic=15671.msg158249#msg158249 date=1158481543]
Hint:  go read the topic urself
[/quote]
You obviously did not read the eintire topic or you would know that I HAVE read that thread! Evidenced by my activity in it.
http://jbls.org/VerCheck.txt
Proof that you are at falt not the updated dll.
(Make sure you have the latest.)
~-~(HDX)~-~
September 17, 2006, 9:18 AM
ImaWh0re
[quote author=l2k-Shadow link=topic=15671.msg158219#msg158219 date=1158446155]
not at all, my bot uses extractMPQNumber() function in BNCSutil, therefore, it retrieved correct mpq number, reason it did not work is because bncsutil incorrectly handled the large integer, you could load an old version with the new bncsutil and it would work just fine.
[/quote]


  'mpqName = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data))
  'mpqName = Mid$(mpqName, 1, 12) '/old code

  'mpqNumber = extractMPQNumber(mpqName) '/old
  'ChecksumFormula = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data) - 2)
  '/old Coding

So by you saying that fleet- just updated bncsutil and didn't update any coding to get it to work then what do you make of this? This is previous code used to grab the mpq number before the fix. Which you did not change until it was public information, and fleet- did it while it was not. I understand it is nothing spectatular to figure out as it is very very simple. But point of the matter is, you arn't as one three three seven as you try to pretend to be. I have respect towards BNLS coders, but not someone like you that just lies out their ass.
September 17, 2006, 7:11 PM
BiG
Uhhh... can ya post the file up for downloading, thats needed or is it something differnt im slow.. ???
September 17, 2006, 7:13 PM
ImaWh0re
I don't know where it is on this site, some where lost in the bncsutil thread so ... if you want you can get it from here,
http://thesource.staghost.com/e2/dle2/Needed%20Files/_Misc/

(fleet's site)
September 17, 2006, 7:21 PM
BiG
Something is up with my Fiction, is fiction crap now and you gotta get Artsian or what? take that back sb works but you gotta try connecting a hell of alot lol....  :o
September 17, 2006, 7:26 PM
HeRo
Fiction uses bnetauth.dll, it no longer works unless updated.

PS: Wrong topic for this  :-\
September 17, 2006, 7:54 PM
BiG
Bah... is there a new account maker that does work and what is the section?
September 17, 2006, 7:56 PM
MyStiCaL
[quote author=ImaWh0re link=topic=15671.msg158271#msg158271 date=1158520291]
[quote author=l2k-Shadow link=topic=15671.msg158219#msg158219 date=1158446155]
not at all, my bot uses extractMPQNumber() function in BNCSutil, therefore, it retrieved correct mpq number, reason it did not work is because bncsutil incorrectly handled the large integer, you could load an old version with the new bncsutil and it would work just fine.
[/quote]


  'mpqName = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data))
  'mpqName = Mid$(mpqName, 1, 12) '/old code

  'mpqNumber = extractMPQNumber(mpqName) '/old
  'ChecksumFormula = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data) - 2)
  '/old Coding

So by you saying that fleet- just updated bncsutil and didn't update any coding to get it to work then what do you make of this? This is previous code used to grab the mpq number before the fix. Which you did not change until it was public information, and fleet- did it while it was not. I understand it is nothing spectatular to figure out as it is very very simple. But point of the matter is, you arn't as one three three seven as you try to pretend to be. I have respect towards BNLS coders, but not someone like you that just lies out their ass.
[/quote]

uhm as far as i remember im kinda retarded at the moment just waking up n all, but you don't have to change your code with bncsutil.dll only had to change it with the update of bnetauth.dll hmm, cuz i don't remember changing my code, i just tossed in K's new compiled version worked perfecto. =)
September 17, 2006, 8:05 PM
HeRo
[quote author=Mystical link=topic=15671.msg158281#msg158281 date=1158523529]
[quote author=ImaWh0re link=topic=15671.msg158271#msg158271 date=1158520291]
[quote author=l2k-Shadow link=topic=15671.msg158219#msg158219 date=1158446155]
not at all, my bot uses extractMPQNumber() function in BNCSutil, therefore, it retrieved correct mpq number, reason it did not work is because bncsutil incorrectly handled the large integer, you could load an old version with the new bncsutil and it would work just fine.
[/quote]


  'mpqName = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data))
  'mpqName = Mid$(mpqName, 1, 12) '/old code

  'mpqNumber = extractMPQNumber(mpqName) '/old
  'ChecksumFormula = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data) - 2)
  '/old Coding

So by you saying that fleet- just updated bncsutil and didn't update any coding to get it to work then what do you make of this? This is previous code used to grab the mpq number before the fix. Which you did not change until it was public information, and fleet- did it while it was not. I understand it is nothing spectatular to figure out as it is very very simple. But point of the matter is, you arn't as one three three seven as you try to pretend to be. I have respect towards BNLS coders, but not someone like you that just lies out their ass.
[/quote]

uhm as far as i remember im kinda retarded at the moment just waking up n all, but you don't have to change your code with bncsutil.dll only had to change it with the update of bnetauth.dll hmm, cuz i don't remember changing my code, i just tossed in K's new compiled version worked perfecto. =)
[/quote]
Yes, thats all I had to do as well, K saved the day.
September 17, 2006, 8:25 PM
MyStiCaL
   Also, even though there was an update with bnetauth.dll and free code to fix it provied here, i think skywing mentioned that there was a very bad memory leak, and yea just to 2nd that, the memory leak is bad by about 10k + each login, is there a work around for that? other then we all know should be just updating to bncsutil.dll but somtimes its useful for old school programs with out changing there full login sequence.
September 17, 2006, 8:31 PM
BiG
Can I dl that if it works or w/e
September 17, 2006, 8:34 PM
MyStiCaL
[quote author=BiG link=topic=15671.msg158285#msg158285 date=1158525244]
Can I dl that if it works or w/e
[/quote]

download what?
September 17, 2006, 8:38 PM
l2k-Shadow
[quote author=ImaWh0re link=topic=15671.msg158271#msg158271 date=1158520291]
[quote author=l2k-Shadow link=topic=15671.msg158219#msg158219 date=1158446155]
not at all, my bot uses extractMPQNumber() function in BNCSutil, therefore, it retrieved correct mpq number, reason it did not work is because bncsutil incorrectly handled the large integer, you could load an old version with the new bncsutil and it would work just fine.
[/quote]


  'mpqName = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data))
  'mpqName = Mid$(mpqName, 1, 12) '/old code

  'mpqNumber = extractMPQNumber(mpqName) '/old
  'ChecksumFormula = Mid$(Data, InStr(1, Data, "IX86ver"), Len(Data) - 2)
  '/old Coding

So by you saying that fleet- just updated bncsutil and didn't update any coding to get it to work then what do you make of this? This is previous code used to grab the mpq number before the fix. Which you did not change until it was public information, and fleet- did it while it was not. I understand it is nothing spectatular to figure out as it is very very simple. But point of the matter is, you arn't as one three three seven as you try to pretend to be. I have respect towards BNLS coders, but not someone like you that just lies out their ass.
[/quote]

You are obviously a moron with no clue on how to code.
From my bot:
[code]
MPQNumber = extractMPQNumber(p.GetSTRING)
[/code]
From BNCSUtil:
[code]
MEXP(int) extractMPQNumber(const char* mpqName)
{
const char* n;
int mpqNum;
if (mpqName == NULL)
return -1;
if ((n = (const char*) std::strchr(mpqName, '.')) == NULL)
return -1;
// extract int value of version number
mpqNum = atoi(n - 1);
return mpqNum;
}
[/code]

Therefore the code did not have to be updated.
September 17, 2006, 9:09 PM
Spilled[DW]
[quote author=heRo link=topic=15671.msg158278#msg158278 date=1158522880]
Fiction uses bnetauth.dll, it no longer works unless updated.

PS: Wrong topic for this  :-\
[/quote]

Bnetauth.dll has been updated. Look down a few topics....
September 17, 2006, 9:09 PM
MyStiCaL
[quote author=Spilled link=topic=15671.msg158295#msg158295 date=1158527381]
[quote author=heRo link=topic=15671.msg158278#msg158278 date=1158522880]
Fiction uses bnetauth.dll, it no longer works unless updated.

PS: Wrong topic for this  :-\
[/quote]

Bnetauth.dll has been updated. Look down a few topics....
[/quote]

from what im seenin it also comes with a huge memory leak aswell. =|
September 17, 2006, 9:22 PM
BiG
So where is the updated bnetauth.dll?  :P
September 17, 2006, 9:56 PM
UserLoser
This thread is long overdue to die...
September 17, 2006, 9:57 PM
ImaWh0re

[quote author=l2k-Shadow link=topic=15671.msg158294#msg158294 date=1158527373]
You are obviously a moron with no clue on how to code.
From my bot:
[code]
MPQNumber = extractMPQNumber(p.GetSTRING)
[/code]
From BNCSUtil:
[code]
MEXP(int) extractMPQNumber(const char* mpqName)
{
const char* n;
int mpqNum;
if (mpqName == NULL)
return -1;
if ((n = (const char*) std::strchr(mpqName, '.')) == NULL)
return -1;
// extract int value of version number
mpqNum = atoi(n - 1);
return mpqNum;
}
[/code]

Therefore the code did not have to be updated.
[/quote]


Unless perhaps they DON'T use extractmpqnumber. Then you only had to deal with the 10% chance of it not being an overflow.
No point in calling a function that isn't needed. And for someone that says "You are obviously a moron with no clue on how to code." should really consider thinking before speaking, as every time you make a new release it has crash problems and stuff never works right. So please before you say that to anyone else, ever again, just consider that.
September 17, 2006, 10:49 PM
MyStiCaL
[quote author=ImaWh0re link=topic=15671.msg158310#msg158310 date=1158533379]

[quote author=l2k-Shadow link=topic=15671.msg158294#msg158294 date=1158527373]
You are obviously a moron with no clue on how to code.
From my bot:
[code]
MPQNumber = extractMPQNumber(p.GetSTRING)
[/code]
From BNCSUtil:
[code]
MEXP(int) extractMPQNumber(const char* mpqName)
{
const char* n;
int mpqNum;
if (mpqName == NULL)
return -1;
if ((n = (const char*) std::strchr(mpqName, '.')) == NULL)
return -1;
// extract int value of version number
mpqNum = atoi(n - 1);
return mpqNum;
}
[/code]

Therefore the code did not have to be updated.
[/quote]


Unless perhaps they DON'T use extractmpqnumber. Then you only had to deal with the 10% chance of it not being an overflow.
No point in calling a function that isn't needed. And for someone that says "You are obviously a moron with no clue on how to code." should really consider thinking before speaking, as every time you make a new release it has crash problems and stuff never works right. So please before you say that to anyone else, ever again, just consider that.

[/quote]

  Don't like someones program, don't use it, this isn't the flame boards, I couldn't imagine what it would be like if vL had a flame board, but then again it might actually be a good idea.
September 17, 2006, 10:56 PM
MysT_DooM
trash can > flame board
September 17, 2006, 11:26 PM
ImaWh0re
Yes mystical I know. I'll be good now I just had to make a point.
September 18, 2006, 6:51 PM
l2k-Shadow
[quote author=ImaWh0re link=topic=15671.msg158387#msg158387 date=1158605517]
Yes mystical I know. I'll be good now I just had to make a point.
[/quote]

You made absolutely no point, you are accusing me of leeching code that grabs a string from a packet. Just FYI my bot always used a debuffer and always used extractMPQNumber() to retrieve the MPQ since I started using BNCSUtil (which was when BNCSUtil first came out). Don't believe me? Try for yourself, I believe I still have v2.11c uploaded on my site, if you wish to try this, download that, turn off automatic updating, put in new BNCSUtil, you will be able to log in.
September 18, 2006, 7:38 PM
Spilled[DW]
[quote author=BiG link=topic=15671.msg158304#msg158304 date=1158530174]
So where is the updated bnetauth.dll?  :P
[/quote]

...Page 2...
vL Forums has this VERY handy feature called "Search", put it to use ;)
September 18, 2006, 7:45 PM
replaced
BNLCSUTIL still dont work on bnet!  Someone update it so it can load war3 again
September 18, 2006, 11:22 PM
RealityRipple
[quote author=replaced link=topic=15671.msg158408#msg158408 date=1158621730]
BNLCSUTIL still dont work on bnet!  Someone update it so it can load war3 again
[/quote]
Pay more attention. the new version does work, except on SB apparently.
September 18, 2006, 11:25 PM
HeRo
[quote author=replaced link=topic=15671.msg158408#msg158408 date=1158621730]
BNLCSUTIL still dont work on bnet!  Someone update it so it can load war3 again
[/quote]
Quit fucking making useless posts when you obviously haven't read anything. Read or learn to do shit yourself, tool.
September 18, 2006, 11:34 PM
Myndfyr
Locked, kiddies.
September 19, 2006, 5:12 AM

Search