Valhalla Legends Forums Archive | Battle.net Bot Development | CheckRevision Database

AuthorMessageTime
Barabajagal
As some of you know, I've had a database of CheckRevision values running on my site for a while (This Place). I've just completed a handy VB6 DLL file that will let people use it. You can download it at http://realityripple.com/Uploads/RRCRev.zip . Please read the Readme before asking questions on how to use it.

As of today, my database has 97.4% of the DRTL values, which was the main reason I made this (since BNLS doesn't support it). It also has 46% of the SC values, and at least some values from every game. The good news is that this database is updated constantly by people who use my bot (and by me adding values manually). The bad news is, like any other database, one change and it's all obsolete. Luckily, I'm stubborn, and if something DOES change, I'll add more values to it.

Right now, the DLL doesn't allow uploading values to my DB, because I don't want to deal with people sending bad data. Hope it's useful to those of you who still want to support D1.
March 29, 2007, 3:13 AM
Smarter
I am waiting on MyndFyre to update MBNCSUtil, to support BNLS CRev, then I plan to Add a CRev Logger to my bot, however I didn't think of having it support DRTL, but I believe I will. I was thinking of make a DB Program to run on my windows server, that my bot would update it's CRev values to, but I am trying to think of a way for the Server to Verify the values sent to it (to avoid corruption), have any ideas?
March 30, 2007, 5:39 PM
Smarter
With alot of effort I could possibly produce something that resembles MBNCSUtil, however MyndFyre is an amazing C# programmer, far beyond my current skill level, and I could probably add BNLS to MBNCSUtil, but again, he is far more skilled, and would be able to produce a much stronger result, I would most likely do allot of repetitive coding that he wouldn't as he has professional experience in programming in C#, as well as tricks, etc.
March 30, 2007, 7:14 PM
Myndfyr
[quote author=brew link=topic=16556.msg167458#msg167458 date=1175293675]
second thing: BNCSUtil was never intended to use ...bnls...
if you want bnls support, you would have to add it on your own. And a checksum logger isn't terribly hard to do at all. My plan (however) is to catch all the checksum formulas that my db doesn't have, then later use my own bnls checksum finder bot to get the values for those.
[/quote]

Well, since I didn't write BNCSUtil, but I did write MBNCSUtil, don't I get to decide what is in or out of the scope of my own project?

BNCSUtil also never intended to have packet/data buffers or readers, MPQ support, or Battle.net FTP support.  The packet stuff has been in since 1.2, and MPQ and FTP support is part of 2.0 in MBNCSUtil.

MBNCSUtil is not a wrapper for the BNCSUtil library.
March 30, 2007, 10:31 PM
warz
it's ok. it's just brew.
March 30, 2007, 11:26 PM
Hell-Lord
[quote author=♥ link=topic=16556.msg167462#msg167462 date=1175297183]
it's ok. it's just brew.
[/quote]

:P

[quote author=[RealityRipple] link=topic=16556.msg167402#msg167402 date=1175138029]
As some of you know, I've had a database of CheckRevision values running on my site for a while (This Place). I've just completed a handy VB6 DLL file that will let people use it. You can download it at http://realityripple.com/Uploads/RRCRev.zip . Please read the Readme before asking questions on how to use it.

As of today, my database has 97.4% of the DRTL values, which was the main reason I made this (since BNLS doesn't support it). It also has 46% of the SC values, and at least some values from every game. The good news is that this database is updated constantly by people who use my bot (and by me adding values manually). The bad news is, like any other database, one change and it's all obsolete. Luckily, I'm stubborn, and if something DOES change, I'll add more values to it.

Right now, the DLL doesn't allow uploading values to my DB, because I don't want to deal with people sending bad data. Hope it's useful to those of you who still want to support D1.
[/quote]

Well done on getting d1 working :D
March 31, 2007, 4:25 AM
Spilled[DW]
[quote author=brew link=topic=16556.msg167458#msg167458 date=1175293675]
Edit***
or skywing can release the checkrevision formulas all together and save us very much trouble, and save bandwith too. there is absolutely no valid reason to hold it back from the general public.
[/quote]

Speak for yourself. First off, he did the work and research for getting the formula, NOT YOU So therefore you have no say so. Second off, he host a public server at no charge so you can actually have a working bot.

Let me say on behalf of the community, Thank you skywing. Brew, your a moron.
March 31, 2007, 6:52 AM
MyStiCaL
I'm still wondering why brew is talkin about BNCSutil.dll when we are talkin about MBNCSUtill
March 31, 2007, 9:21 AM
rabbit
[quote author=Spilled link=topic=16556.msg167471#msg167471 date=1175323921]
Thank you skywing. Brew, your a moron.
[/quote]I've been saying that since he started posting!  ARG!
March 31, 2007, 11:58 AM
Smarter
Ok ok ok, can we all stop this now, and someone post about the last INTELLIGENT post?

I am waiting on MyndFyre to update MBNCSUtil, to support BNLS CRev, then I plan to Add a CRev Logger to my bot, however I didn't think of having it support DRTL, but I believe I will. I was thinking of make a DB Program to run on my windows server, that my bot would update it's CRev values to, but I am trying to think of a way for the Server to Verify the values sent to it (to avoid corruption), have any ideas?
March 31, 2007, 5:18 PM
rabbit
Have the logger store everything so that you can double check it later if it's suspect.  Also, have the logger report success/failure.  I realize all this can be faked, but really...who would do that?
March 31, 2007, 5:26 PM
Smarter
People who dislike me, but i'd like to make sure the db is 100% accurate on the fly, because I want to have my bot try to use it in the times that BNLS is down (not till it's got quite alot of values in it tho). I was thinking, to increase the security of people tampering with it, that I could have my bot send some type of ... key, that has to match up before it allows anymore, so like:
C > S : "f1234b3b123123123f1f167"
S > C : 0x01 (Pass)
C > S : CRev Values
S > C : 0x05 (Thanks ;) + Disconnect)

Looking @ that, it seems like a waste of coding, but I was hoping to find a way to test the values, like have the server slowly test them (it's win2k3 of course), but all this brings me to my second question:

How exactly does one use a CRev database? I mean, I know how to make one (you save the values returned from BNLS for 0x50 (mpq, request, exever checksum result)), but how would you use that in your program...
March 31, 2007, 5:36 PM
l2k-Shadow
[quote author=Smarter link=topic=16556.msg167481#msg167481 date=1175362560]
People who dislike me, but i'd like to make sure the db is 100% accurate on the fly, because I want to have my bot try to use it in the times that BNLS is down (not till it's got quite alot of values in it tho). I was thinking, to increase the security of people tampering with it, that I could have my bot send some type of ... key, that has to match up before it allows anymore, so like:
C > S : "f1234b3b123123123f1f167"
S > C : 0x01 (Pass)
C > S : CRev Values
S > C : 0x05 (Thanks ;) + Disconnect)

Looking @ that, it seems like a waste of coding, but I was hoping to find a way to test the values, like have the server slowly test them (it's win2k3 of course), but all this brings me to my second question:

How exactly does one use a CRev database? I mean, I know how to make one (you save the values returned from BNLS for 0x50 (mpq, request, exever checksum result)), but how would you use that in your program...
[/quote]

Perhaps for few hours daily, have starcraft (or another game that uses lockdown) run on the server. Code a fake local server for it and then have starcraft automatically connect to localhost, have the server send it a 0x51 packet with the values retrieved that day and check the sc response against the one received.

Of course doing this would be a complete waste.
March 31, 2007, 5:40 PM
Smarter
Hmmm, would that even work? I'm actually not sure how I would even go about doing that.... but thanks for the idea! I know it would be a waste but you see, my windows server just sits there, I have no worry about letting a program run and test the values, etc, and if bnet changes it, I can just have it test the existing values from the beginning removing bad ones, and testing any new ones.
March 31, 2007, 5:50 PM
Barabajagal
I added values to my server by requesting values from the server constantly and storing all the request data. Then, when I've got enough values, I have another program I run that automatically does a constant reconnect on D1, connecting to my fake server program (the one that does the reconnect for d1) so that I can get all the correct results. Then I have a third program upload them all to my database. (The reason for the three programs is so other people can gather values as well, and I can collect and upload them all at once myself.
March 31, 2007, 5:56 PM
Smarter
Interesting, now if I could just do that in C# in one big pacakge... but for SC/BW too.
March 31, 2007, 6:55 PM

Search