• Welcome to Valhalla Legends Archive.
 

FreeBSD binary chat client

Started by nslay, August 21, 2005, 07:07 PM

Previous topic - Next topic

nslay

If I committed such a port or hosted it...does this violate the TOS with blizzard?

Edit: This isn't skywing's Binary Chat...the "binary" refers to its ability to login into bnet via their games' binary protocols

Newby

Uh, yes.

tmp wrote slackchat if anybody is interested: www.x0r.ca/slackchat

All that is necessary is a modification of the Makefile, and it works wonders. I use it on my shell!@
- Newby

Quote[17:32:45] * xar sets mode: -oooooooooo algorithm ban chris cipher newby stdio TehUser tnarongi|away vursed warz
[17:32:54] * xar sets mode: +o newby
[17:32:58] <xar> new rule
[17:33:02] <xar> me and newby rule all

Quote<TehUser> Man, I can't get Xorg to work properly.  This sucks.
<torque> you should probably kill yourself
<TehUser> I think I will.  Thanks, torque.


nslay

Quote from: Newby on August 21, 2005, 11:34 PM
Uh, yes.

tmp wrote slackchat if anybody is interested: www.x0r.ca/slackchat

All that is necessary is a modification of the Makefile, and it works wonders. I use it on my shell!@

Thanks, going to read his source to learn :)
I was hoping to make this chatclient exactly the same as ChatterBot was in its day...
I was thinking of 3 optional interfaces, gtk interface, ncurses, and no interface, all of which the user can choose.
I'll certainly credit tmp for the learning...

GameSnake

Quick question: do must bots that work with Linux also work on BSD/Unix-like platforms?
Quote[13:26:50] <deadly7[x86]> i don't think you get it.
[13:26:51] <deadly7[x86]> ;\
[13:26:55] <GameSnake> Nope :(
[13:27:01] <deadly7[x86] opens up paint>
Some of my favorite sites:
Daily Rotten
The underdogs
Slashdot

Yegg

Quote from: GameSnake on August 22, 2005, 09:19 AM
Quick question: do must bots that work with Linux also work on BSD/Unix-like platforms?
I don't think so. They may have to be compiled for the necessary system.

nslay

Quote from: GameSnake on August 22, 2005, 09:19 AM
Quick question: do must bots that work with Linux also work on BSD/Unix-like platforms?
Well, most *BSDs have linux emulation and can run linux binaries pretty well, however, for native support, the code must be compiled.  Not all Linux source is compatible with *BSD.  While building ports that may have been designed for Linux, you might notice that FreeBSD applies patches to the source.

Tazo

Newby, how do I modify the makefile to make it FreeBSD compatible?

Joe[x86]

Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

Newby

I forget what modification it is, but you type something like:

Quotecd src && mv ./*.o include && gcc main.o include/conf.o include/cdkey.o include/checkver.o include/packet.o include/isock.o -o ../slackchat -lncurses

After you type "make" and it errors out to finish compiling it.
- Newby

Quote[17:32:45] * xar sets mode: -oooooooooo algorithm ban chris cipher newby stdio TehUser tnarongi|away vursed warz
[17:32:54] * xar sets mode: +o newby
[17:32:58] <xar> new rule
[17:33:02] <xar> me and newby rule all

Quote<TehUser> Man, I can't get Xorg to work properly.  This sucks.
<torque> you should probably kill yourself
<TehUser> I think I will.  Thanks, torque.

Tazo

@slackchat:
No color support on this terminal!
lol

mynameistmp

Quote
I was thinking of 3 optional interfaces, gtk interface, ncurses, and no interface, all of which the user can choose.

The way I setup my ncurses interface is pretty complicated, you'll want to investigate the Forms library. When I wrote slackchat's interface I didn't have access to the internet, so I had no external references. I had to implement an entire command line, including arrow keys, backspace, etc. Time consuming.

If you're looking for something like a gtk interface, I'd write a plugin for xchat. I've thought about doing this a few times but havn't really had the time to do it. Feel free to just rip all of slackchat's login code (which is fairly simple to do, by design). All of the interface design is done for you by xchat, it's cross-platform compatible, AND you've got IRC/bnet rolled into one ;P I figured with slackchat's login code already in C it could be done in a week of spare time.

Let me know if you have any design or technical questions.

"This idea is so odd, it is hard to know where to begin in challenging it." - Martin Barker, British scholar

nslay

Quote from: mynameistmp on August 23, 2005, 02:21 AM
Quote
I was thinking of 3 optional interfaces, gtk interface, ncurses, and no interface, all of which the user can choose.

The way I setup my ncurses interface is pretty complicated, you'll want to investigate the Forms library. When I wrote slackchat's interface I didn't have access to the internet, so I had no external references. I had to implement an entire command line, including arrow keys, backspace, etc. Time consuming.

If you're looking for something like a gtk interface, I'd write a plugin for xchat. I've thought about doing this a few times but havn't really had the time to do it. Feel free to just rip all of slackchat's login code (which is fairly simple to do, by design). All of the interface design is done for you by xchat, it's cross-platform compatible, AND you've got IRC/bnet rolled into one ;P I figured with slackchat's login code already in C it could be done in a week of spare time.

Let me know if you have any design or technical questions.



Yes, I could write a plugin for xchat, however, I'd like to be able to use it while building a new system or when I'm forced to use the virtual terminals.  GTK doesn't look terribly difficult anyways.
I was thinking about making it multi protocol (with IRC as base for practicality) and then adding a mechanism to read some sort of ruleset to deal with other protocols (ie, bnet).
As for my progress, I've been out of the loop in programming for a while, however I did write a very flexible configurations parser class.

The overall design and plan I have is
1) Design a configurations parser for a desired format (done)
2) Design an easy to use network handler (although TehUser told me about ACE, I could look it up)
3) Design a UI dispatcher (it determines what to do with window operations, for example, if I wanted a gui, it would use GTK, if curses,it would use curses, if console, it would write it out as text)
4) Sew the above together into a chat client.

#2 It would be a plus to make this a class, then I could easily support multiple connections...though I would have make the GUI XChat or mIRC-like

mynameistmp

Quote from: Tazo on August 22, 2005, 08:18 PM
Newby, how do I modify the makefile to make it FreeBSD compatible?

I don't use FreeBSD, but along with the Starcraft 1.13c update I released a version for FreeBSD (any BSD really) just for guys like you ;P Just download the source and it'll compile/run right out of the tarball, no modification necessary.

www.x0r.ca/slackchat/slackchat.htm
"This idea is so odd, it is hard to know where to begin in challenging it." - Martin Barker, British scholar

nslay

Quote from: mynameistmp on August 24, 2005, 03:57 AM
Quote from: Tazo on August 22, 2005, 08:18 PM
Newby, how do I modify the makefile to make it FreeBSD compatible?

I don't use FreeBSD, but along with the Starcraft 1.13c update I released a version for FreeBSD (any BSD really) just for guys like you ;P Just download the source and it'll compile/run right out of the tarball, no modification necessary.

www.x0r.ca/slackchat/slackchat.htm

You should commit a port :)
Although right now, FreeBSD 6 is almost out and we're in a ports freeze until its released
...they do that to make sure all the ports work correctly with the new release
you can check the status here:
http://www.freshports.org/
or subscribe to the FreeBSD ports mailing list...ooo and they have a native Quake III port now :O