bnchat - Battle.net text-based chat client
bnchat [options] [servername [serverport]]
bnchat is a simple Battle.net client emulator that can be used as a
minimal chat client with bnetd(1) in order to test certain aspects of
the server configuration or to do server administration from the Unix
command line. It is also compatible with FSGS servers, but has
difficulty with real Battle.net servers.
If no servername is specified, localhost is assumed. If no serverport
is specified, 6112 is assumed.
Allows bnchat to use ANSI terminal color escapes to make things
more readable. You must be using a terminal compatible with
VT100 positioning and ANSI color codes. The program will not
attempt to determine your terminal type.
-b Causes bnchat to emulate a Brood Wars client.
Causes bnchat to prompt for a new login password on the bnetd(1)
Causes bnchat to emulate a specific client. The following
client tags are recognized: DRTL DSHR STAR SSHR SEXP W2BN.
There are short options which may be used instead for the common
-d Causes bnchat to emulate a Diablo client.
-h --help --usage
Print usage information and exit.
Causes bnchat to report an alternate key to the bnetd(1) server.
Causes bnchat to report an alternate owner to the bnetd(1)
Causes bnchat to prompt to create a new player account on the
-s Causes bnchat to emulate a Starcraft client.
Print its version number and exit.
-w Causes bnchat to emulate a Warcraft II BNE client.
The terminal width is attempted to be determined at runtime but if it
does not work you may need to try running resize(1). As a final act of
desperation you can try setting the COLUMNS environmental variable.
If SIGWINCH and its associated ioctl(2) are supported on your system,
resizing the window while the program is running should immediately
update width of the entry line.
The current version is available with the bnetd distribution at:
This program assumes that the terminal will move to the beginning of
the current line when the carriage return character (^M) is printed.
It also assumes the backspace character (^H) will move one column to
the left that character printed after that will replace those already
on the screen.
The terminal settings are not consulted for keybindings. The following
^H delete the character to the left of the cursor
^J accept current line
accept current line
^T transpose the last two characters
^W delete word to the left of the cursor
^U delete the whole input line
cancel the current input line
delete the character to the left of the cursor
Ross Combs (email@example.com)