Valhalla Legends Archive

Programming => Battle.net Bot Development => Topic started by: ILurker on February 07, 2003, 08:21 AM

Title: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 07, 2003, 08:21 AM
Hey, I've been working on a chat bot with visual basic 6, and with clean slate bot (BNLS),

The only thing i cant quite do yet is make/join games, with the bot,

Anyone got any ideas how to make/create a game using clean slate bot?

(is cleanslatebot1.buildpacket the solution?)

 :D
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Mesiah / haiseM on February 07, 2003, 09:39 AM
you betchya!
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 07, 2003, 10:15 AM
Yeah, but what do i put for the build packet code?
Cleanslatebot1.buildpacket    
                                             ^
                                             |
I need the leave game, create game, and join game codes.


 :)
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Zakath on February 07, 2003, 11:01 AM
Try figuring them out! The fun in programming isn't having other people lead you by the hand; it's figuring out new and innovative ways of doing things.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Banana fanna fo fanna on February 07, 2003, 02:35 PM
bnetdocs
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: haZe on February 07, 2003, 03:08 PM
That has game info?
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 07, 2003, 03:30 PM
I've tried to find them out on my own, but i can't. and when i look at bnetdocs, i dont uderstand shit.
help plz?
 :-/
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 07, 2003, 03:39 PM
Grok
Administrator

Posts: 170
  BnetDocs
« on: Feb 4th, 2003, 11:17pm »

--------------------------------------------------------------------------------
So now that BnetDocs is live, is every other person going to reply to every other bot development question with "its on bnetdocs" instead of helping them with an open discussion?
---------------------
----------------------------------------------------------
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: l)ragon on February 07, 2003, 06:13 PM
join game for which client?
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 07, 2003, 06:14 PM
Starcraft/Brood War
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: l)ragon on February 07, 2003, 06:22 PM
eww i just noticed the (withcleanslatebot)
does that ocx/bot evin have udp capability 8\
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 07, 2003, 06:24 PM
cuphead.valhallalehends.com CleanSlateBot Is the ocx, its (BNLS), that is what im using, when i said (withcleanslatebot) i meant to join/create games with clean slate bot.

and yes it does have udp capability
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: l)ragon on February 07, 2003, 06:29 PM
first thing is first look in a packet logger at FF 1C create numerus games all differant types diferant maps speed settings etc. and watch the game statstring me and one other person were up almost a full night figuring out that statstring. i would suggest you start there first there is lots of work in that string.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 07, 2003, 07:23 PM
ok, got the stat string, what do i do with it?
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Noodlez~ on February 07, 2003, 07:58 PM
Quoteok, got the stat string, what do i do with it?
figure out what each byte is by comparing it to others. then once you can build your own, you can send that packet
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Mesiah / haiseM on February 07, 2003, 08:27 PM
if cleanslatebot supports udp packets, how do you build one? you cant use .buildpacket, because it isnt the same format, not at all...
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: l)ragon on February 07, 2003, 08:33 PM
Quoteok, got the stat string, what do i do with it?

did you create many games/compaired the strings found out what each peice of the string represents 8\
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Arta on February 08, 2003, 02:49 AM
Digression:

BnetDocs does not contain information about joining games.

Also, what is there shouldn't be that hard to understand! if you sit down with a packet log and look at the descriptions on bnetdocs and the data in the packet, it should become clear. You might need to persevere for a bit but don't let that put you off!
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 08, 2003, 06:57 AM
yes, but i dontr know what to put for the buildpacket source... It supports (buffertype as string, ParramArray saElements() As Variant) As String
I have no idea what do put for these things..
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: UserLoser on February 08, 2003, 07:26 AM
Perhaps reading the readme for it...???

http://cuphead.valhallalegends.com/ocx.htm
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Mesiah / haiseM on February 08, 2003, 08:13 AM
You cant do it anyways, i just read that thing, and when it says it supports UDP, its referring to sending 0x14 packet, which is a TCP packet sent to bnet during the login, to tell it that it does support UDP packets, if it is not sent, battle.net game clients will not allow you to join or create games.

cleanslatebox does not support UDP, so the most your going to get out of it, is getting game info and sitting in a game lobby all by yourself.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 08, 2003, 08:42 AM
So basically, there is no way to make /create games with bnls? do you have to use "winsock"?
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Mesiah / haiseM on February 08, 2003, 10:09 AM
you can create the game using cleanslatebot, but if you want other people to see you, or for people to be able to join your game, your going to need udp support. This is still possible if you add your own UDP socket, and carry over a few certain values from the cleanslatebot.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: tA-Kane on February 08, 2003, 11:47 AM
QuoteSo basically, there is no way to make /create games with bnls?
The BNLS protocol does not support creating games, last I checked.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: iago on February 08, 2003, 01:14 PM
Quoteyou can create the game using cleanslatebot, but if you want other people to see you, or for people to be able to join your game, your going to need udp support. This is still possible if you add your own UDP socket, and carry over a few certain values from the cleanslatebot.

And I'm reasonably sure that VB's winsock.ocx (or whatever it's called) isn't good enough for that purpose because UDP sockets have to be bound, and it can't listen on the same port that it recieves on which is a requirement for the Game protocol.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Spht on February 08, 2003, 02:59 PM
QuoteAnd I'm reasonably sure that VB's winsock.ocx (or whatever it's called) isn't good enough for that purpose because UDP sockets have to be bound, and it can't listen on the same port that it recieves on which is a requirement for the Game protocol.

Naw, works fine. I've had in-game support for Starcraft/BroodWar using Visual Basic for a while now.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: haZe on February 08, 2003, 03:23 PM
Is there any way I can packet log Brood War games without actaully being in them? (not allowed to go on sc)
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Zakath on February 08, 2003, 03:38 PM
Not really...even if you use something *other* than SC to do it, you'll still need to be in the game to be able to packet log it. You could have someone else do it for you, though.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: haZe on February 08, 2003, 03:44 PM
Any takers? ::)
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: UserLoser on February 08, 2003, 04:11 PM
I would, but WPE PRO doesnt show most of those packets, which are UDP
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: haZe on February 08, 2003, 04:18 PM
heh thx for the offer tho
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 08, 2003, 05:06 PM
BuildPacket(SocketName, PacketData) - Builds a binary packet for sending to Battle.net, BNLS, or a Diablo II realm.
Example: CleanSlateBot1.BuildPacket("BNET", "PACKET", &H10, "DWORD", 2, "NTSTRING", "ChannelToJoin", "PACKET", &HC)

Packet Builder currently supports:
Sockets: BNET, REALM, BNLS
Types: BYTE, WORD, DWORD, STRING, NTSTRING, PACKET, GTC*
GTC = GetTickCount()



**Where would i put the hex code-looking strings?**

Cleanslatebot1.buildpacket WhatGoesHere
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Mesiah / haiseM on February 08, 2003, 05:18 PM
BuildPacket is just a buffer that lets you insert items one by one, so itd be used like this:

CleanSlateBot1.BuildPacket("BNET", "PACKET", &H10, "DWORD", 2, "NTSTRING", "ChannelToJoin", "PACKET", &HC)

the BNET is what server to send the packet to, the PACKET says its the end of the current data in the first packet, the &h10 is the packetID, the DWORD is to insert a DWORD to the buffer, the 2 is the value of the DWORD, the NTSTRING inserts a null terminated (00 00 in packet log) string to the buffer, ChannelToJoin is the text that is going to be inserted, the PACKET says thats the end of the data in that packet, and &hc is the packetID.

This is used for most binary bot rejoin functions, it sends 0x10 (private game) and send 0x0C (full channel join) to rejoin the channel you are currently in.

QuoteKane Said:
So basically, there is no way to make /create games with bnls?  

The BNLS protocol does not support creating games, last I checked.

BNLS has nothing to do with creating games, or using non-login related battle.net packets, its just there for login purpouses, IIRC.

QuotePosted by: UserLoser
I would, but WPE PRO doesnt show most of those packets, which are UDP

The WPE PRO i have does indeed log UDP packets, it just doesnt give you an indication, but they are not hard to distinguish, considering your only logging one program, and there are only 2 protocols used by that program.
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: ILurker on February 08, 2003, 05:38 PM
Can i join [vL], by any chance?  :D
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: tA-Kane on February 09, 2003, 02:53 AM
QuoteBNLS has nothing to do with creating games, or using non-login related battle.net packets, its just there for login purpouses, IIRC.
Duh...  ::)
Title: Re: *** Joining/Creating Games (WithCleanSlateBot)
Post by: Mesiah / haiseM on February 09, 2003, 01:25 PM
when he said "with bnls" im sure he meant cleanslatebot...