DarkBlizz - Making Battle.net Magic -

Battle.net R&D => Development => Topic started by: imdawe on February 17, 2012, 05:15:22 AM

Title: Battle.net 2.0 emulator?
Post by: imdawe on February 17, 2012, 05:15:22 AM
Hi all!
I am a programmer and i am trying to make a battle.net 2.0 emulator.
I  found so much informations from battle.net v2 protocol and i written an emulator.
But when i try to connect i get invalid server error. I don't know how, but the client is knowing is it a real battle.net server or not.
I think the i have to inject some hack into client to kill the process that gets the real battle.net address.
Thus my question is next:
Is it possible project to make an emulator for sc2 or not?

Sry my bad english.
If you are interested in this project please pm me! I want to join a project or make a new one because i see the emulation was dead about 1-2 years ago.
Title: Re: Battle.net 2.0 emulator?
Post by: raistlinthewiz on February 17, 2012, 09:06:15 AM
your best bets;

http://www.bhfiles.com/files/Battle.net%202/ (http://www.bhfiles.com/files/Battle.net%202/)
https://github.com/mangos/mangos (https://github.com/mangos/mangos)
https://github.com/mooege/mooege (https://github.com/mooege/mooege)
Title: Re: Battle.net 2.0 emulator?
Post by: Myst on February 17, 2012, 01:25:05 PM
Of course its possible to emulate SC2. 
You should also check out http://darkblizz.org/wiki/ (http://darkblizz.org/wiki/)  although outdated, it would atleast give you an idea of what's going on.
also http://diablo3dev.com/w/Networking (http://diablo3dev.com/w/Networking)
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on February 18, 2012, 01:32:12 PM
I receive  packet from sc2 and i think i do a working query to send back but i have no idea for this problem :s
c->s cauthinfo
s->c sproofrequest from starcrack sourcecode (i think thats query is old)
(http://imagerz.com/QEBDWktvAwMHVQhPRAVQ)
And i checked mooege source code but that is using a bnet library that i don't know.
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on February 19, 2012, 11:02:57 AM
Ok,
I repaired last error but after this i get an unknown error.
Somebody know this?
This error is occurs after these:
C->S CAUTHINFO (client sendig informations)
S->C SPROOFREQUEST (server making auth modules and http responde and send it)
C->S CPROOFRESPONSE (i can't parse this information yet but in this request is password and etc..)
Print screen


msn imdawe@hotmail.com
(http://imagerz.com/QEBDW0tvAwMHVQ5OQwVQ)
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on February 19, 2012, 11:05:19 AM
And if somebody want to work in this project contact me and i make up a vps and make a test server to check this error.
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on February 22, 2012, 04:40:44 PM
If i send the CAUTHCOMPLETTE and skip proofrequest and proofrespond i get this error ;D
(http://imagerz.com/QEBDXktvAwMHUlhLFwVQ)
Title: Re: Battle.net 2.0 emulator?
Post by: totibg on February 26, 2012, 03:32:38 PM
u can start here

https://bitbucket.org/Greatwolf/starcrack/src (https://bitbucket.org/Greatwolf/starcrack/src)

old staff need some refactoring


+

old times

SC2 - Beta Working Offline (http://www.youtube.com/watch?v=5jK3FzrGXJg#)
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on February 27, 2012, 12:21:04 PM
Thank you!
But the code of the starcrack is too old we cannot use it only the packets.
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on March 02, 2012, 06:09:14 PM
Hi again!
I made an srp6 class for my emulator.
I think the authentication is ok.
But on this picture the client is waiting for a packet.
This packet is always 14byte and random.
Who have any idea?
(http://imagerz.com/QEBDDktvAwMHUg0bFwVQ)
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on March 04, 2012, 03:27:21 PM
A new UNKOWN packet researched! (This is Encrypted packet!)
Size always 14 byte
Packet ID: 4
HasChannel?: True
ChannelID: 1
If i send this packet to client, i get invalid server error.
I think this packet are another kind of thumbprint.

Update:
In this packet have 2 ip address.
packet structure:
header is [4, 1]
5 bit unkown, value 0
32 bit int ip address1 in inet_aton
16 bit int port1 number
32 bit int ip address2 in inet_aton
16 bit int port2 number
the real battle.net server sends 213.248.127.212:1119 and 213.248.127.166:1119
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on March 09, 2012, 01:17:50 PM
Authentication Successfull. ^^
First private bnet2 server comming soon :P
Thanks helpfull answers for 1000 readers.
Title: Re: Battle.net 2.0 emulator?
Post by: Myst on March 09, 2012, 03:11:00 PM
How will it be different than Starfriend?
Title: Re: Battle.net 2.0 emulator?
Post by: saladom on March 12, 2012, 04:33:56 AM
That's so awesome.   ;D I'm waiting ur masterpiece.
Title: Re: Battle.net 2.0 emulator?
Post by: cmdexe on March 13, 2012, 03:51:36 PM
this is amazing and really think n1ce...
Starfriend not using server, only 4 play like wc3 LAN...

And BLZRD sad there no longer write new login system...
Title: Re: Battle.net 2.0 emulator?
Post by: CraniX on March 15, 2012, 09:43:18 PM
Keep up the good work my friend.
Title: Re: Battle.net 2.0 emulator?
Post by: raistlinthewiz on March 16, 2012, 11:45:13 AM
Authentication Successfull. ^^
First private bnet2 server comming soon :P
Thanks helpfull answers for 1000 readers.

I don't really understand what you refer with bnet2 server there. If you're refering Blizzard Bnet 2.0 platform, mooege (d3) and some catacylsm emulators (wow) can already emulate bnet 2 protocol to some extend (although the data flows is kinda same or similar for blizz games, the form of data differs - like diablo 3 encodes bnet2 protocol traffic within google protocol buffers).

So basically there's nothing a called bnet2 server, it's actually a common protocol that blizzard uses to let sc2, d3 and wow users authenticate to login realms and handle common functionality like cross game messaging. Though again the form of data is not common between their games. Each game take it's on approach.

And even though I appreciate your work, the stuff you trying above is (sc2 bnet2 login emulation) already done before by many inviduals. I've even a piece of small work called battlenger (http://www.bhfiles.com/files/Battle.net%202/battlenger.rar) which was able to login official blizzard sc2 servers and authenticate.

Still good luck with your project and keep the work up. I just wanted to clarify a few bits.

and make sure to read these stuff to; http://www.bhfiles.com/files/Battle.net%202/docs/protocol/ (http://www.bhfiles.com/files/Battle.net%202/docs/protocol/)
Title: Re: Battle.net 2.0 emulator?
Post by: Ballwinkle on March 23, 2012, 06:11:50 PM
Wow emulators dont use the new battle.net 2.0 protocol, they use the old grunt protocol from the older expansions. If you try and login with an email address the new battle.net 2.0 protocol will start, if you use a username the old grunt one will run.
Title: Re: Battle.net 2.0 emulator?
Post by: raistlinthewiz on March 24, 2012, 05:50:31 AM
there're emulators that can run on bnet2 protocol though they're not as widely used as others.
Title: Re: Battle.net 2.0 emulator?
Post by: Dustin on March 29, 2012, 12:30:30 AM
Good Luck Mate! I hope we finally get a good EMU out. lol ;)
Title: Re: Battle.net 2.0 emulator?
Post by: imdawe on April 15, 2012, 04:24:01 AM
I get some emails how my post is a fake!
(http://imagerz.com/QEBOCktvAwMHXg0YRAVQ)
IT ISN'T, IT'S NOT FAKE! -__-'
-----------------------------
For newbies:
5, 1 is the header of characterrequest packet. Well authentication was succesfully full without i get invalid server error.
It was with own beta emu / launcher.

So Its NOT FAKE!
Peace and thank you for your attention.