4129 Konya Dr.
Torrance, CA 90503
The Source BBS ... (310) 371-3737
Use Conference #3, leave messages to Tim Rider.
WildChat(tm) is supplied as is. The author disclaims all
warranties, expressed or implied, including, without
limitation, the warranties of merchantability and of
fitness for any purpose. The author assumes no
liability for damages, direct or consequential,
which may result from the use, or inability to use,
(C) Copyright 1992-1993, Tim Rider
What is WildChat(tm)?
WildChat is a replacement for WildCat!'s multi-line chat. It is
MUCH faster, and provides many more features. It's easier to use,
more stable, and a lot more fun. Instead of having a crippled chat
system, your WildCat! system can almost compete with full-bore chat
systems such as Galacticomm's MajorBBS... For a fraction of the cost!
WildChat adds a completely new dimension to your BBS!
NOTE ABOUT UNREGISTERED DEMO...
The unregistered demo has a few options disabled. Only Nodes #1-3
can use WildChat, and users are limited to only ten minutes in
WildChat. Consider that I'm a fifteen year old high school student,
and am charging only a measly twenty bucks for such a useful program.
ALLALONE BBS 107 02-17-93 6:00p
BADUSER BBS 65 02-17-93 6:00p
CFGHELP BBS 3231 02-17-93 6:00p
COMMANDS BBS 1187 02-17-93 6:00p
MAINHELP BBS 3588 02-17-93 6:00p
ROOMCMDS BBS 534 02-17-93 6:00p
SYSCMDS BBS 1621 02-17-93 6:00p
WILDCHAT BAD 28 02-17-93 6:00p
WILDCHAT CFG 2343 02-17-93 6:00p
WILDCHAT DAT 21930 02-17-93 6:00p
WILDCHAT EXE 116507 02-17-93 6:00p
WILDCHAT LST 14236 02-17-93 6:00p
Normal Serial Communications
o A Multi-Line WildCat! BBS.
o Advanced knowledge and experience of telecommunications, PC
operations, and WildCat! operation.
o A typical Hayes modem which supports DTR hang-up. U.S. Robotics
makes great modems which don't flake out very often. I suggest
you run your BBS with U.S. Robotics. Yes, I'm brown nosing and
trying to get a free Dual Standard.
o 80286+ processors.
o About 128k for a RAM Disk. [Not Necessary]
o About a megabyte of hard disk space.
o Same as above.
o A FOSSIL driver for the DigiBoard. [DigiFOSSIL by Scott Brynen]
What does it do?
WildChat is a line-by-line oriented chat system. I chose that
method because it works the best when there are several people
in chat. I also chose this method because it offers me more
flexibility and creativity in additional features. In the
following section, I have tried to describe the basic features
of WildChat. I really suggest you give WildChat a try to get
a better idea of how powerful it is.
Users entering WildChat enter the lobby, Room #0. Here they can send
messages back and forth. For many, many reasons, one room can get
quite annoying. A user may want to privately converse with another
user, or a group of users. Users can whisper to each other in the
same room to do this, but it may get confusing. For this reason,
each user has their own room.
/JOIN Switch between the Main Room and your own Room.
/JOIN Go to 's Room.
When in your room, these commands are availible to you...
/TITLE Display your Room's title, or subject.
/TITLE Change your Room's title, or subject.
/LOCK Toggles the lock on the Room. You can lock
people out, and let them in only if they have
/INVITE Invite a user into your room. An invited use
can enter if your room is locked.
/UNINVITE Un-invite a user from your room. If the user
is already in your room, they are rudely
NOTE: Whoops, /TITLE, /INVITE, and /UNINVITE didn't quite make it
into this release... v2.18 maybe...
User names? User-IDs? WildChat uses User-IDs to keep track of users.
It facilitates ease of whispering and such to have a shorter name.
This shorter name is called a User-ID. They can be up to sixteen
letters long, although typically are shorter. Most of the time,
User-IDs are a handle, moniker, or a nickname.
Example: Tim Rider's User-ID could be T.Rider, Tim, or EZ
User-IDs can be displayed in different colors accoring to the user's
gender. This feature is called "Gender Coloring", obviously for
lack of a better name. See the section on configuring WildChat for
Wait a sec? How does whispering work? Well, several different ways,
actually, although they all achieve the same effect.
Users in WildChat can page users on the WildCat! BBS, or users in
different rooms using the /PAGE command.
/PAGE Page a node on the BBS.
/PAGE Page and send them
While in public chat, you can send "action messages". Sending an
"action message" is accomplished by using an action command. Action
commands are one-word commands which may, or may not require additional
parameters. The action commands and their linked text are defined by
the SysOp. WildChat includes some basic defaults.
Example: RUN C.North
I would see... You are running away from C.North!
C.North would see... T.Rider is running away from you!
Others would see... T.Rider is running away from C.North!
Vulgar Language Filter
Depending on what type of BBS you run, you may want to keep users from
using vulgar language on your BBS. WildChat has an option to scan each
message for words in a list and if any are found, to notify the user,
and abort the message. Typically, it would say, "Please refrain from
using vulgar language, Message NOT sent.".
Users in WildChat can give time to each other. Some SysOps may want
to disable this feature because they run subscription oriented BBS'es.
/GIVETIME Give minutes to
Also, depending on your users, you may have certain people who don't
get along very well, or people who are determined to annoy everyone
else. There are handy IGNORE commands in WildChat to ignore a
particular user's messages.
Another handy feature of WildChat is the ability to customize nearly
ALL of the text that is displayed. WildChat reads prompts from a
WildCat! format prompt-file, which can be edited with the prompt
editor that comes with WildCat!
Being a SysOp has it's privileges in WildChat. If a user is assigned
SysOp privileges in WildChat, they will be able to kick other users
out, hang up on them, and do all sorts of fun things. The following
is a list of SysOp commands. They are not bullet-proof, be careful!
/RECORD Toggles logging of the chat to WILDCHAT.REC
in the WildCat! Node's work directory.
/HAIL Send a msg to , if the node is not
crashed, it should return a AWAKE response
within a couple seconds.
/BROADCAST Broadcasts to all rooms.
/ZAP Remove from WildChat
/DROP Drop carrier on .
/EVAC Evacuate all users from WildChat.
/CLEAR Clear the data for from WILDCHAT.DTA.
/HIDE Hide yourself. Removes node data, and makes
it look like you are transferring files on the
/SNEAKOUT Exit from WildChat secretly.
/DEBUG Toggles Debug Mode, which lets you view all
messages being sent in WildChat. This includes
whispers, and messages in other rooms.
/DESQVIEW Displays DesqView version number, or -1 if
DesqView not installed.
/MEM Displays free memory.
If you have no idea what one of these does, just experiment!
Be careful with these, a lot of them may be used for evil
Wait! How do you assign SysOp privileges to a user? Read the
section on WildChat Files, paricularly, the file SYSOPS.LST.
How does it work?
WildChat uses a RAM Disk, hard disk, or network drive to store the
messages that users type. A RAM disk is not necessary, but is the
fastest and is highly suggested if possible. A disk cache is also
recommended, along with a fast computer.
WildChat creates a message file to it's assigned path when it is run
for the first time. This file is WILDCHAT.MSG, and it is a fixed-
length file. It does not grow in size. The reason for that is speed.
There is no permanent record of the messages sent in WildChat. The
reason, once again, speed. I may consider logging the chat to the
hard disk some day, though.
WildChat creates another fixed length files called WILDCHAT.DTA. This
file contains node-information for all the nodes that are in WildChat.
Along with NODEINFO.DAT, WILDCHAT.DTA is used to track the users on the
BBS and the users in WildChat.
How do I run it?
WildChat was designed to be run from each node's work directory. The
following is a sample directory structure...
The directory C:\WC30\WILDCHAT is where the WildChat executable
[WILDCHAT.EXE], prompt file [WILDCHAT.DAT], user base file
[WILDCHAT.USR], display files [*.BBS], and miscellaneous files
will be located.
A batch file to call WildChat will be located in C:\WC30. The name of
the batch file depends on which hook you want to call WildChat for. I
suggest using a main menu hook. [MAIN1.BAT or MAIN2.BAT]
The batch file will look like this...
Another important file is located in C:\WC30. That is WILDCHAT.CFG,
the configuration file for WildChat. WildChat uses the environment
variable, WCHOME to find it's configuration file. It expects WCHOME
to point to the WildCat! BBS root directory [C:\WC30], and it may
also try to open other WildCat! datafiles from that directory.
The directory structure in the above section is used for examples.
NOTE --> Please back-up your BBS system before attempting to install
-------> WildChat. Make sure that all nodes of the BBS are down
-------> before installing WildChat.
1) Create a directory off the WildCat! BBS root directory [C:\WC30]
to store the WildChat files. [Ex: C:\WC30\WILDCHAT]
2) Move the following files into that directory... WILDCHAT.EXE,
WILDCHAT.DAT, WILDCHAT.LST, WILDCHAT.BAD, *.BBS.
3) Create a 128k RAM disk. Consult your DOS manual or Windows
manual for information on the RAMDRIVE.SYS that is included
with MS-DOS v5.0. Many shareware/freeware RAM disk drivers
are availible. The Source BBS [Number listed on first page]
has several online.
3) Edit WILDCHAT.CFG to fit your BBS system. See the following
section for an explanation of the possible settings.
4) Move WILDCHAT.CFG to the WildCat! root directory [C:\WC30]
4a) If you have a WILDCHAT.KEY file, move that into the
WildCat! root directory [C:\WC30] also.
5) Make sure the WCHOME variable is set to point to the WildCat!
root directory. [Ex: SET WCHOME=C:\WC30]
WARNING! Do not put a trailing backslash on the WCHOME
-------> environment variable, or TomCat will cease to
-------> function properly!
NOTE --> Read the WildCat! manual for information on the
-------> WCHOME environment variable, and how to set it.
6) Create a batch file to run WildChat. Depending on which
DOS hook you want to run WildChat from, the name of the
batch file will differ. I suggest running WildChat from
the Main Menu DOS Hook 1 or 2. [MAIN1.BAT or MAIN2.BAT]
WARNING! If you are not using the "Shell to DOS on doors"
-------> option of WildCat!, you will have to figure out
-------> how to run WildChat on your own! WildChat must
-------> be run from the work directory so it can find
The typical batch file should look like this...
7) Make sure to set the WCIRQID and COMBASE environment
variables if you are using non-standard port addresses.
COMBASE is the port base-adress in DECIMAL.
WCIRQID is the port IRQ. Only 0-7 are supported.
NOTE --> Read the WildCat! manual for information on how
-------> to set the environment variables. These should
-------> be different for each WildCat! node.
8) Enter MAKEWILD...
[This section is written for a MAIN MENU DOS Hook, if you are
using another hook, you'll have to figure it out yourself.]
Go to DOOR DEFINITION.
Select "MAIN 1" or "MAIN 2".
Change MULTI-USER to YES and IN USE to NO.
Go to MENU DEFINITION.
Find MAIN MENU.
Select "DOS HOOK 1".
Change LTR to "T".
Change DESCRIPTION to "[T]alk to other Nodes..."
Change LEV to a decent access level. A level that
users besides the SysOp can access it.
Select "MULTI-USER CHAT".
Change LTR to "!", "@", "#", or something like that.
Change LEV to the SysOp access level.
9) Enter MKWCTEXT... Load WCTEXT.
Go to prompt #250...
It should say... "-- ATTENTION -- @SUB@"
Go to prompt #252...
It should say... " from @SUB@ is PAGING."
Go to prompt #253...
It should say... "Use the MAIN MENU command @SUB@ to respond."
You _MUST_ change this to reflect the proper instructions
to access the chat... Like this...
"Use the MAIN MENU command [T]alk to Nodes... to respond."
The @SUB@ code is replaced by the description for Multi-User
chat in the Main Menu Definition.
10) Viola! You're done.
Give WildChat a try on a local node. If it works, then great.
If it doesn't, review the setup a couple times, and look for
any errors that you may have made.
Call me voice after 5:00 PST on weekdays.
[No collect calls will be accepted!]
Call The Source BBS at (310) 371-3737. Anyday, Anytime.
This is what the default WILDCHAT.CFG looks like. Don't be too
scared, it's really simple.
...Don't remove any of these lines...
WildChat! v2.xx Configuration File ...
Line #1 RamDrive Path Default: D:\ ...
Line #2 Maximum Nodes in WILDCHAT.DTA Default: 10 ...
Line #3 Maximum Messages in WILDCHAT.MSG Default: 160 ...
Line #4 Basic Timeout (Seconds) Default: 60 ...
Line #5 Complex TimeOut (Seconds) Default: 300 ...
Line #6 Datafiles Path Default: C:\WC30\WI ...
Line #7 WildCat! 3.0 Node Info Directory Default: C:\WC30\DA ...
Line #8 Foul-Language Filter (ON/OFF) Default: ON ...
Line #9 Percentage of Online Time allowed Default: 100 ...
Line #10 Modem Hand-Shaking (NONE, CTS/RTS, Default: CTS/RTS ...
XON/OFF, BOTH) ...
Line #11 Status Line (ON/OFF) Default: ON ...
Line #12 Maximum amount of time that can be ...
transferred using the /GIVETIME cmd Default: 10 ...
(Or OFF to disable /GIVETIME ...
Line #13 File Locking (ON/OFF) Default: OFF ...
Line #14 File Logging (ON/OFF) Default: ON ...
Line #15 Use FOSSIL (ON/OFF) Default: OFF ...
Line #16 Use Gender Coloring (ON/OFF) Default: ON ...
Line #17 Use DesqView Support (ON/OFF) Default: ON ...
Line #18 Hide Real Names (ON/OFF) Default: OFF ...
Line #19 Use WildCat! ALIAS names (ON/OFF) Default: OFF ...
Line #20 ...
Now... here's a REAL explanation of what each line does...
Line #1: RamDrive Path [DEFAULT: D:\]
This line defines the path where WildChat will write it's
dynamic data files. WILDCHAT.MSG and WILDCHAT.DTA will
be created in this directory. Ideally, this directory would
be on a RAM disk, but it can be a hard disk path, or a
network drive path.
Line #2: Maximum Nodes in WILDCHAT.DTA [DEFAULT: 10]
This line defines the size of WILDCHAT.DTA. Set this number
to the highest node number you will ever use. If you have
a local node, say Node #20, then set this to 20.
Line #3: Maximum Messages in WILDCHAT.MSG [DEFAULT: 160]
This line defines the size of WILDCHAT.MSG. I recommend
setting this number to as high as possible. A larger
message file makes WildChat even more stable. The more
nodes you have, the larger this should be. The default,
160 should do well enough for a four line BBS, but if
you run more lines, you should increase it to 320.
Line #4: Basic Timeout (Seconds) [DEFAULT: 60]
This line defines the basic time which inactivity will be
Line #5: Complex TimeOut (Seconds) [DEFAULT: 300]
This line defines the amount of time in which you must
send a message in chat, or be hung up on.
Line #6: Datafiles Path [DEFAULT: C:\WC30\WILDCHAT]
This line defines the path where WildChat will look for
it's datafiles and support files. This is typically
the directory where WILDCHAT.EXE is.
WildChat expects to find WILDCHAT.EXE, WILDCHAT.DAT,
WILDCHAT.LST, WILDCHAT.BAD, and *.BBS in this directory.
Line #7: WildCat! 3.0 Node Info Directory [DEFAULT: C:\WC30\DATA]
This line defines the path where WildChat will find
Line #8: Foul-Language Filter (ON/OFF) [DEFAULT: ON]
This line toggles WildChat's use the "Foul-Language
Filter" or "Cuss Buffer". [Still can't think of a good
name for it]. Basically, this features checks all messages
sent for words defined in WILDCHAT.BAD and if any are found,
it will display a message and abort sending the message.
Typical message would be, "Please refrain from using vulgar
language, Message NOT sent.".
Line #9: Percentage of Online Time allowed [DEFAULT: 100]
This line defines what percentage of time left a user can
be in WildChat. Honestly, this is really a stupid option,
but it's there just in case you need to use it for some
Line #10: Modem Hand-Shaking (NONE, CTS/RTS, XON/OFF, BOTH)
This line defines what sort of flow control you want
WildChat to use. Set this to whatever WildCat! is
using. So far, no one has had any trouble with
CTS/RTS, so just use that. It works well enough.
Line #11: Status Line (ON/OFF) [DEFAULT: ON]
This line toggles WildChat's use of a status line on the
I bet you're sitting there scratching your head and
thinking, "What a stupid option!". Well, you're right.
There's only one reason why this option exists. Read the
following note if you're that curious...
WARNING ---> If you are running a MONOCHROME, or CGA
-----------> system, you MUST TURN THE STATUS LINE OFF!!!
-----------> QuickBASIC is not a very intelligent language
-----------> and it will crash!
Line #12: Maximum amount of time that can be transferred using the
/GIVETIME command [DEFAULT: 10]
This line defines how much time a user can give away using
the /GIVETIME command per WildChat session. Set this line
to OFF if you do not want subscribers giving non-subscribers
Line #13: File Locking (ON/OFF) [DEFAULT: OFF]
This line toggles WildChat's use of DOS file locking.
The WildChat data files can sometimes have several different
copies of WildChat accessing them at times, and to prevent
collisions, logical record locking is used. DOS file
locking can also be used for extra safety. Some networks
may have trouble with this.
Line #14: File Logging (ON/OFF) [DEFAULT: ON]
This line toggles WildChat's logging.
This is truly a stupid option. The WildChat logs aren't
important at all, and don't contain the messages sent
by users. They just take up space. Useful for limited
debugging, that's about it. Turn this off once you get
WildChat running solidly.
Line #15: Use FOSSIL (ON/OFF) [DEFAULT: OFF]
These option are getting interesting now, aren't they?
This line toggles the use of a FOSSIL driver. I'm not
sure if WildChat will try to use a FOSSIL if it's not
present. Basically, this is a very handy feature...
NOTE ---> DIGIBOARD SYSOPS!
NOTE ---> Use DigiFOSSIL as your FOSSIL driver, and
NOTE ---> WildChat will work like a champ! See the
NOTE ---> DigiFOSSIL documentation on how this all
NOTE ---> works!
Line #16: Use Gender Coloring (ON/OFF) [DEFAULT: ON]
You may be thinking, "Huh?" I don't blame you.
This line toggles WildChat's use of "Gender Coloring".
So what does that mean? Gender Coloring simply means
that User-IDs are displayed in different colors according
to that user's gender. Pink for females, Blue for males.
Another truly silly option, but it's cute.
Line #17: Use DesqView Support (ON/OFF) [DEFAULT: ON]
This line toggles WildChat's DesqView optimization. If
DesqView is detected, WildChat will attempt to make things
go a little faster by giving up it's clock ticks when there
is no activity.
Why would you turn this off? If it wasn't working right.
Line #18: Hide Real Names (ON/OFF) [DEFAULT: OFF]
If this is enabled, then users on the BBS will not have
their real name displayed, instead, if will say, "Someone
on the BBS...", or something like that.
Line #19: Use WildCat! ALIAS names (ON/OFF) [DEFAULT: OFF]
If this is enabled, WildChat will read the user's ALIAS
from DOOR.SYS and use that as their User-ID.
WildChat uses several external display screens, they are:
COMMANDS.BBS Command Help Screen
ROOMCMDS.BBS Room Command Help Screen
SYSCMDS.BBS SysOp Command Help Screen
CFGHELP.BBS User-Configuration Help Screen
MAINHELP.BBS Main Chat Command Help Screen
WELCOME.BBS Welcome Screen
TUTORIAL.BBS WildChat Tutorial
ALLALONE.BBS All Alone Screen
BADUSER.BBS Displayed to locked out users
Of course, some example screens have been included, but they aren't
very good, and I hope to improve them some time. Feel free to edit
these screens to your liking.
WildChat(tm) uses several data files, this is an explanation of
what they are and how to maintain them.
Files that WildChat(tm) reads
DOOR.SYS User Info created by WildCat!
WILDCHAT.CFG The main configuration file
WILDCHAT.BAD The words for the language filter
WILDCHAT.LST The action commands
WILDCHAT.DAT The prompts and text
BADUSERS.LST The list of users that cannot use WildChat.
SYSOPS.LST The list of users with SysOp privileges
*.BBS WildChat display files
o WILDCHAT.CFG is a CR/LF format text file. Do not remove any
lines. WildChat tries to find this file in the directory that
WCHOME points to.
o WILDCHAT.BAD is a CR/LF format text file. This file contains
the words for the "Foul-Language Filter". Put each word on
a seperate line. Words with a tick mark in front of them will
be scanned for within words.
o WILDCHAT.LST is a CR/LF format text file.
Wow. These are the action commands. I don't feel up to
explaining how the format works, just toy with it a little bit
and it should be able to figure out easy enough.
o WILDCHAT.DAT is the file containing the text that WildChat(tm)
outputs. This is the same format as WCTEXT.DAT, and can be edited
with the WCTEXT.DAT editor that is included with WildCat! Make
sure to make a backup before altering this file.
o BADUSERS.LST is a CR/LF format text file. These users are not
allowed in WildChat. The BADUSER.BBS file is displayed to them,
and they are dumped back to the BBS.
o SYSOPS.LST is a CR/LF format text file. The users listed in
this file get SysOp privileges in WildChat. Put each user
on a seperate line.
Files that WildChat(tm) creates
WILDCHAT.DTA Contains node information
WILDCHAT.MSG Contains messages that users type
WILDCHAT.USR Contains user profiles and configuration
WILDLOG!.??? Contains logging information. Where ??? is the node #.
o WILDCHAT.DTA contains information about who is inside WildChat(tm).
This file should be deleted on every boot-up (if not on a ram disk)
or any time that WILDCHAT.CFG changes.
o WILDCHAT.MSG contains the messages that the users type to each other.
This should be treated EXACTLY the way WILDCHAT.DTA is treated.
o WILDCHAT.USR contains user information and configuration. This
file can be deleted, but then users will have to log on new again,
which is not much of a hassle.
o WILDLOG!.??? contains logging information for each node. WildChat's
logging is pretty useless, but I am improving it slowly. It's just
not one of my priorities.
Chip North for just being this dude. (I could write a book on all
the crap Chip's done to help). Most thanks for providing The
Source BBS, an excellent information source. Give The Source a
call, it'll make your BBS look bad
Dan Stasinski for just being this awesome programmer. Check out
his toolkits for QuickBASIC and PowerBASIC development. They are
the best out there for their price range!
Minos Tsaussis for making me get off my ass and start writing a
real chat door.
Emily Spicer and Nancy Burk for their inspiration...
Kevin Day for providing DesqView support code and some really
nice time/date code...
Miranda Gentry, David Gardner, and all the other users of Minos
BBS for their numerous suggestions, rantings, and ravings...
Michael Conley and Tom Tcimpidis for helping me when I first put
this program together. First version took about two-three weeks
to slap together. Very, very messy.
Jeff Sumberg for providing QBSerial, his decent async toolkit.
...Where is that DigiBoard support, Jeff?