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.
- -a --ansi-color
- 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.
- -c --change-password
- Causes bnchat to prompt for a new login password on
the bnetd(1) server.
- --client
- 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 clients.
- -d
- Causes bnchat to emulate a Diablo client.
- -h --help --usage
- Print usage information and exit.
- -k --cdkey
- Causes bnchat to report an alternate key to the
bnetd(1) server.
- -o --owner
- Causes bnchat to report an alternate owner to the
bnetd(1) server.
- -n --new-account
- Causes bnchat to prompt to create a new player
account on the bnetd(1) server.
- -s
- Causes bnchat to emulate a Starcraft client.
- -v --version
- 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 are
assumed:
- ^H
- delete the character to the left of the cursor
- ^J
- accept current line
- ^M (return)
- accept current line
- ^T
- transpose the last two characters
- ^W
- delete word to the left of the cursor
- ^U
- delete the whole input line
- ^[ (escape)
- cancel the current input line
- ^? (delete)
- delete the character to the left of the cursor
bnetd(1)
Ross Combs (
[email protected])