Kali Documentation for PPPSHARE (c) Copyright 1996 Kali, Inc. All right reserved. Written by Jay Cotton (comments: jay@kali.net) updated 1/2/1996 Introduction Kali is an internet game driver. Games that were written to run using the IPX procotol on local area networks (LANs) can now be played over the internet. Kali has been used to play Descent, Doom, Doom II, Heretic, Hexen, Command & Conquer, Apache, Rise of the Triad, Terminal Velocity, Warcraft, Warcraft 2, VR Pool, Super Karts, Mortal Combat 3, EF2000, and other games over the Internet with opponents from all over the world (not all games will be fast enough from modem connections). Kali will not work with games that require netbios (such as MechWarrior2 and the BullFrog games). NOTE - This documentation assumes you are using a modem and your internet provider supports PPP. If you have a SLIP account, a shell account, or a direct ethernet connection, please refer to the main kali.doc file. This document is broken down into ten chapters as follows: Chapter I: Getting Prepared Chapter II: Making the PPP Connection Chapter III: Making the Internet Connection Chapter IV: Making the Kali Connection Chapter V: Using Kali Chapter VI: Using Kali Without a Server Chapter VII: Puchasing Kali Chapter VIII: Kali Servers, ftp sites, and Web sites Chapter IX: Troubleshooting Chapter X: Credits I Hate Reading the Manual! What? You don't want to read all this and you think you're smart enough to just jump in there and start using it now? Well, if you insist, but at least follow these steps: 1. Unzip kalippp.zip in it's own directory. 2. Edit kali.cfg to configure your nickname, email, and realname. 3. Edit net.cfg to enter the correct com port, phone number, and modem init string. 4. Type "load" at the DOS prompt. 5. Select "Connect" and then "Current" from the menu. 6. After the modem connects enter your user name and password. 7. Press alt-s to start the PPP driver then exit pppmenu without hanging up or disconnecting. 8. Type "kali /a" to get a list of servers. Then enter "kali to connect to a server. Then Run kchat. 9. If it didn't work, read the rest of this document and be more patient next time. :) Chapter I: Getting Prepared A. To use Kali, you will need a high speed modem (14.4 is a minimum and 28.8 is recommended) as well as a PPP (point-to-point protocol) account with an ISP (Internet Service Provider). NOTE - If you're currently using PPP, but your drivers operate through Microsoft Windows, you will have to reboot yor PC in DOS mode to use Kali. Your Windows based drivers will not work with Kali. Kali will not work in a DOS window under Windows 95. A version of Kali written to work with Win95's built-in TCPIP drivers is in development. No release date had been predicted yet. B. You also need the Kali program and all of the related files. The file "kalippp.zip" contains everything you need. These are the files included with Kali: kali.exe - the Kali TSR kali.cfg - configuration information for Kali kali.doc - instructions for using Kali (non-PPP) ppp.doc - this document (directions for PPP users) net.cfg - PPP configuration information lsl.com - Link Support driver for ppp.exe ppp.exe - PPP driver for communicating with your ISP pppmenu.exe - setup program for ppp.exe pppwat.exe - utility to auto-configure the wattcp.cfg file pppstate.exe - utility to check PPP status ipstub.exe - packet driver for interface between Kali and PPP wattcp.cfg - your internet parameters kchat.exe - chat program used to talk to other Kali users kchat.cfg - configuration information for the chat program ping.exe - program used to test your PPP connection load.bat - batch file used to make your PPP connection unload.bat - batch file used to unload Kali and disconnect nslookup.exe - a program used to test your nameserver If you don't have all of these files, see Chapter VIII. C. Create a directory on your PC and put all of these files into this directory. You are now ready to make a connection. Chapter II: Making the PPP connection A. Run the PPP Driver. 1. Go to your Kali directory and type "load". The LOAD.BAT batch file should contain the following lines: lsl ppp pppstate wait IP pppwat ipstub You will be presented with a menu with 5 selections: Connect - select connection options Status Displays - select status screens Terminal Mode - manually access your modem Hang-Up - hang up modem Exit - exit pppmenu 2. Select the "Connect" option. This will show a screen with the word "Current" highlighted. Press F1 to modify the "Current" profile. You will now get a menu with the following 6 options (press Esc to return to the prior menu): Port - specify the comm port to use Modem - settings for your modem Scripting - used to automate connection LCP Parameters - advanced PPP settings IP Parameters - specify internet settings Authentication - used for automated password entry 3. The following paragraphes describe each menu option. Most users only have to set the Port and Modem options. Leave the rest alone unless you want to try for an automatic login. I suggest trying a manual login first. B. Modify your profile. 1. Port Settings: I/O Port: allows you to select com1/2/3/4 or special. If you select "special" you will be given the chance to set your modem's Base Port. Interrupt: this is usually selected automatically based on the I/O port you selected above. For com1 and com3 use interrupt 4. For com2 and com4 use interrupt 3. Baudrate: if you are using a 16550 uart and a 28.8 modem select 115200. Some people have reported problems running at this speed. Try 57600 if you get lockups. If you have a 16550 uart and a 14.4 modem select 57600. If you don't have a 16550 uart you must select a speed of 38400 or slower. Flow Control: select Hardware. Open Type: select Active for most configurations. Listen: select Don't Answer. Connection type: select Modem-Terminal. The other settings are used for automated logins Frame Type: select Ethernet II 2. Modem Settings: Phone Number: put your local access number here. Modem Name: just a description of your modem. Command Strings: Use the Initialization Strings to setup your modem to use data compression, error correction, and RTS/CTS flow control. Most Hayes compatables need at&f2 and USR modems use at&f1 (you would normally leave the first two init strings alone and put your special init string in Init String 3). Check you modem's manual. The Dialing Prefix should be set to ATDT in most cases. Answer string isn't used but should be set to ATA. The hangup string for most modems is ATH0. Timers/Counters: Set the number of Dial Retries to 10. Set the Connection Timeout to 90. Pause time to 5. Inactivity time to 5. These numbers aren't written in stone, but there's usually no reason to modify them. 3. Scripting Menu: This is where you can setup an automatic dialer. I recommend manually connecting first before trying this. The scripting is accomplished by having you provide a set of prompts and the appropriate responses to each. You do not have to enter the prompts for dialing and connecting since this will be taken care of automatically by pppshare. Your script will probably begin with a prompt (Expected String) something like "username:". The response would be your actual username. If you put a "\r" at the end of the response, pppshare will type a carriage-return for you. You *DO* want this in most cases. You will then probably need to enter a prompt for your password in a similar manner. If you get confused, you can always manually edit the script by editting net.cfg as described in the next section of this FAQ. Most standard C string sequences can be used. E.g. \n for newline, \0-7 octal number, \" double quote, \r carriage return, etc. Be sure to select modem-autodial or modem-demand dial under Connection type in the Port Settings Menu. 4. LCP Parameters: do not modify these unless you are told to do so or you know what you are doing. Maximum Receive Unit: set to 1500. Async-Control Map: set to FFFFFFFF. Magic Number: set to 00000000. Protocol Compression: normal set on. Some people might have to turn this off if using an older PPP terminal server. Address/Control Compression: same as above. Normally on. 5. IP Parameters: you don't need to modify these either Enable/Disable IP: Set to Enable IP. Header Compression: set to Disable for pppshare. The shareware version will not support header compression. Since this won't affect Kali don't worry about it. IP Address: doesn't matter. You do NOT have to set this to the number you are using when you connect. 6. Authentication Menu: don't worry about this unless you want to configure your connection for PAP support. C. Save your new profile and connect to your ISP 1. Pressing Esc on the configuration menu will prompt you with a menu for saveing your setup (if you changed anything). Select "Save and write net.cfg" and then exit pppmenu. You will get a message stating that PPP is not connected properly. Don't worry about this yet. 2. Type "unload" and then type "load" again from the Kali directory. This step is required when you change many of the parameters in pppmenu. 3. Press Enter to select the "Connect" option and then press Enter again to select "Current". You should then get a message that your modem is being initialized and then a message that your modem is dialing. 4. If everything is working properly you should get a login prompt from your internet provider. Normally you just have to enter your username and password. Netcom's Netcruiser users will have to put a pound sign ("#") in front of their username to get PPP access (if your user name is "BillyBob", you would enter "#BillyBob"). You will then either get a message that your PPP session has started or you might just see a stream of strange characters on your screen. 5. At this point you press "alt-s" (hold down the "alt" key while pressing the "s" key). If your connection is working properly you should be returned to the main menu in pppmenu with a few new menu items. D. Check your PPP connection using PPPMENU 1. The main menu looks different after connecting. You should now see 7 options: Disconnect - close PPP session Status - select status screens Send Echo Request - send one "echo" packet Performance Test - perform throughput test Echo Test - perform response test Hang-Up - hang up modem Exit - exit pppmenu 2. Press Status several times to rotate through the two status screens. On the first status screen the two options at the right labeled "LCP Status" and "IPCP Status" should both say "Opened". 3. While displaying the first status screen (the one that shows all the connection stats including number of packets sent and received) move the cursor to "Send Echo Request" and press Enter once. You should see the bytes sent increase and then the bytes received increase. 4. Run "Performance Test" and "Echo Test" to see how fast your connection is. I don't have any statistics compiled on what is good and what is bad yet. The idea is just to see that everything seems to be working on your PPP connection. 5. Exit PPPMENU and be sure you don't see any error messages. You should see IPSTUB load with a message that IP is open and PPPSTATE should report IPCP is open. E. PPP is Connected! At this point you should have a PPP connection to your ISP. You can now run any internet software which uses a packet driver. This includes the CUTCP software from Clarkson University, the WATTCP software from Waterloo, and Kali. From now on you should only have to type "load" and then select the options to "Connect" using the "Current" profile. You will then enter your username and password and press "alt- s" to start PPP. Then just exit pppmenu. So far you haven't done anything directly related to Kali. The next section deals with testing your internet connection itself. This isn't the same as testing your PPP connection which we did in this chapter using pppmenu. Chapter III: Making the Internet Connection A: Configuring your internet connection Your internet settings for Kali and all other wattcp based programs are stored in wattcp.cfg. Other internet applications like CUTCP use their own configuration files (for CUTCP the settings are stored in config.tel). The load.bat file should have already configured wattcp.cfg for you except for the nameserver. If you have a problem or you want to setup your nameserver you can edit wattcp.cfg by using an editor to edit/view it's contents. Your wattcp.cfg file would look something like this (do not actually use any of the numbers listed below; this is just an example): ppp = 1 nameserver = 205.244.188.10 my_ip = 205.184.178.59 netmask = 255.255.255.0 gateway = 205.184.178.58 The ppp = 1 setting tells Kali that we are using PPP. The nameserver tells Kali and other wattcp apps where to lookup internet names. For example, if you wanted to access a server called "tracker.texas.net" you will have to list a nameserver so wattcp can lookup that name and try to connect to it's ip number: 204.96.20.10. The number for netmask and gateway will usually stay the same after each connection. For most people the my_ip setting will change each time you connect. The load.bat file runs a program called PPPWAT which will automatically update this number for you so you won't have to change it each time. B. Testing your internet connection The easiest way to test your connection is to use the PING.EXE program. This application will try to send a packet to another node on the internet and if everything is working the other node will respond and PING will display the time for the packet to make the round trip. Try typing: PING 204.96.20.10 10 This will send 10 ping packets to the server at 204.96.20.10. If everything is working you should get a response to most of these packets. Don't expect to get a response to all 10 packets. You should get about 7 or 8 responses each time. Try this using other ip numbers that you know exist. C. Testing your name server The NSLOOKUP.EXE program will ask your nameserver to convert internet numbers to names or names to numbers. Try a few different queries like: NSLOOKUP 204.96.20.10 NSLOOKUP ftp.cdrom.com NSLOOKUP kali.net Each query should return the "resolved" name or number. It will automatically convert names to numbers or numbers to names. D. Your internet connection works! You should now have a good PPP connection and a good internet connection. Kali should now work properly. Read the next chapter on setting up and running Kali. Chapter IV: Making the Kali Connection A. Configuring Kali To configure Kali you will have to edit the kali.cfg file. At this time there is no menu available to do this for you. Use the DOS edit command or your favorite text editor to edit the file kali.cfg. Your kali.cfg file might look something like this (actually my kali.cfg file looks very much like this): nickname = KingThug (that's me!) realname = Jay Cotton email = jay@kali.net other = Call 1-801-565-1443 and order Kali today! tracker = 206.197.190.20 @world = kali.net @central = 204.96.20.10 @bob = 128.191.23.34 The nickname, realname, email, and tracker lines are required. Always set tracker to the number above unless you are informed that the tracker has been moved. The lines beginning with the @ sign are server shortcuts. These lines allow you to type: KALI @world and Kali will look in the kali.cfg file for "@world=" and replace this with the actual ip# or address. The "tracker" tells Kali where the Global Kali Server Tracker is located. You can type "kali /a" and Kali will query all the servers on the Kali Tracker and list the players. B. Configuring Kali Chat (kchat) Edit the kchat.cfg file just like you edited the kali.cfg file using a test editor. Here is a sample kchat.cfg file: Nickname = KingThug lines = 50 beeponarrival macro1 = I *really* hate macros! macro2 = This is my second macro! macro3 = This is my third macro! macro8 = This is my eighth macro! macro9 = /quit Bah! Humbug! The macros are accessible by pressing alt-#, where # is replaced by the number of the macro. "lines" can be set to 25 or 50. "beeponarrival" causes Kali Chat to beep when people join. Read the sample kchat.cfg for more information. C. Querying the Kali Tracker At the DOS prompt (while still in your Kali directory) type: KALI /A Kali should display a list of servers. You will see a server number, a server name, an ip#, a description, and possibly a list of players who are connected to each server. D. Connect to a server Decide which of the servers you want to connect to and type: KALI # Replace with the number from the Tracker listing above. Optionally you can enter the servers ip number manually by typing: KALI 204.96.20.10 That ip number would connect you to the server named Kali Central. Once connected you should see a detailed list of everyone connected to the server and what "process" they are running. The "process" might be a game or it might say "KCHAT" which means the users is in the chat facility. Chapter V: Using Kali A. Finding other players: using Kali Chat (KCHAT) When you connected you should have seen a list of players connected to the server. Typing "kali /s" will re-display this list for you. If you see players with a process called "DESCENTR" then they are running the registered version of Descent. See the file kaligame.faq for a detailed list of games that show up in Kali. If you want to play Descent with these people already playing you can simply run Descent at this time and join a network game in progress. If you want to play any game other than Descent you will have to find other players. Players waiting for games or just wanting to talk usually run Kali Chat. If you see people listed with a process called "KCHAT" then you know these people are chatting. Just type: KCHAT at the DOS prompt and you should enter the Chat screen. Kali Chat is an IRC-like chat program for IPX networks. It was written to help people using Kali communicate before and after playing games. You will automatically start out on the #chat channel. To see who else is on this channel, type /who. To see everyone using Kali Chat, type /who *. To see a list if users on a specific channel, type /who #channelname. To join a channel, type /join #channelname. To exit, type /quit. After finding players for a game, exit Kali Chat and directly launch your game as you would for a normal IPX network game (see the kaligame.faq or read your game's network gaming instructions). B. More stuff on Kali Chat: The following commands can be issued while in Kali Chat. The "/" prefix is used for all commands: /help - display the list of commands /clear - clear screen /[25|50] - select 25 or 50 line mode /nick - change nickname /away - tell everyone that you are away from your PC /beep [on|off] - beep when getting a private message /join <#channel> - join a different channel /who [<#channel>|*] - list people using Kali Chat /whois - get information on a registered user /msg [|#] - send a private message /me - posture a message /ping [|#|*] - test connection speed /ignore - toggles the ability to ignore someone /shownodes - will display the user's ip# next to each nickname /hidenodes - will not display the ip numbers /offer - offer a file for other people to download /get <#> - get file <#> as /progress - displays download progress (from sender) /kali - list people connected to the Kali server /motd - display message of the day from server /quit [] - exit chat program Pressing alt-x will also exit Kali Chat. Pressing ctrl-l will clear the screen. When offering a file you can offer up to 10 files at a time and several people can download these files at the same time. When you "get" a file, you can name the file anything you want and put in in any directory you want. For example, if Wyvern offers the file "#0 c:\kali\kchat.exe" for downloading, you can type "/get Wyvern 0 d:\games\kali\kchat20.exe". This will take file number "0" offered by Wyvern and place it in the directory d:\games\kali\ and name the file kchat20.exe. Chapter VI: Using Kali Without a Kali Server Kali will work without a server by having one of the PCs act as a server. In this mode Kali will only allow 4 player games (the server plus three clients). The server has a special role in this mode and the faster PC should take the honors. This PC will simply type: KALI and press enter. The other PCs will use the IP# of the host just like they would when connecting to a normal server. The kali /s listing will not include the ping, process, loss, or time columns like it does when using a normal server. Everything else should work normally. Chapter VII: Purchasing Kali So, are you tired of the 15 minute limit in the demo? Go ahead and register! The price of Kali is $20 (US dollars). When you buy Kali you will get your own personal serial number and key to unlock the full power of Kali. Play until you drop. Once you buy Kali you will be assured free upgrades when Kali is improved...even if the price goes up in the future. ----------------------------- cut here ---------------------------- Kali Registration Form Name (Please Print) ______________________________________________ Address __________________________________________________________ City _______________________ State/Province _____________________ Zip/Postal Code ___________________ Country ____________________ Phone/Fax _________________________________________________________ Email Address _____________________________________________________ The cost for registered Kali is $20 (US currency). Make checks payable to "Kali, Inc." Checks must be in US Dollars and drawn on a US bank. Mail to: Kali, Inc. PO Box 282 Franklin Springs, GA 30639-0282 ***Be sure to include an email address!!! ------------------------- cut here ------------------------------- More ordering options: 1. Master Card or Visa ($20US) a. Call 801-565-1443 (Axxis) or 602-878-7001 (Starlink) b. FAX your order to 801-576-5663 (Axxis) c. Email your order to kali@axxis.com 2. Check or money order ($20US and drawn on a bank in the US or Canada). Mail your order to: Kali, Inc. PO Box 282 Franklin Springs, GA 30639-0282 3. Overseas: a. Use any of the methods above. b. Canadian customers can go to their local post office and buy a Postal Money order for $20US and mail it. c. Germany - contact Jens Meuller (admin@nov.estar.de) for more info. d. The Netherlands - contact e.m.koolen@student.utwente.nl for info. e. Australia - contact Joe Altoff (jaltoff@powerup.com.au) for info. f. If nothing else find a local bank that has a branch in the US and ask for a check or money order drawn on their US branch for $20US. Allow 24-48 hours on credit card orders and 3-5 days on snail mail orders from inside the US. Once I receive payment I will email a serial# and a key to you. These will go in your kali.cfg file to remove the 15 minute limit. You will get free upgrades to all new versions including the Win95 version which should be released in beta form in February, 1996. Chapter VIII: Kali Servers, ftp Sites, and Web Sites A. This is the latest list of Kali servers: tracker.texas.net 204.96.20.10 Kali Central SunOS kali.net 206.197.190.20 Kali World Linux slc.axxis.com 205.199.96.2 AXXIS Server BSD kali.castle.net 204.97.214.4 CastleNet SunOS gate.dungeon.com 193.130.144.1 FlexNet Linux kali.internexus.net 204.213.70.6 Internexux Linux leo.starlink.com 206.26.42.5 STARLINK BSD sai.icis.on.ca 205.233.129.10 Inter*Com Solaris pooma.itw.com 204.170.66.6 ITW Linux iddc.via.at 194.96.2.60 MCB GamesWorld Linux kali.estar.de 194.112.104.1 EuroStar Linux eit.com 206.214.38.13 CyberGames Linux netrus 198.83.136.1 netrus.net Solaris mpx.com.au 203.2.75.12 MPX Australia Linux athens.net 205.244.188.10 Home Town Kali BSDI powerup.com.au 203.2.122.130 PowerUp Linux ViaNet.on.ca 204.187.89.121 ViaNet Solaris B. Kali and related files can be found at these ftp sites: ftp://ftp.kali.net/kali/ ftp://ftp.axxis.com/pub/kali/ ftp://ftp.internexus.net/pub/kali/ C. The following Web sites also include information and some files: http://www.axxis.com/kali/ http://www.internexus.net/kali/ http://www.teleport.com/~caustic/ http://gremlinx.bevc.blacksburg.va.us/ Chapter IX: Troubleshooting Hopefully this might help some people who are having trouble getting Kali to work. Just read the questions. Q: PPPMENU just can't seem to open LCP. What can I try? A: Try removing the lines "ACCOMP ON" and "PCOMP ON" from net.cfg. Q: Why does PING report, "ERROR: Cannot access packet driver"? A: Either the PPP driver didn't load properly from the load.bat file or you are running Kali already. You cannot run PING while Kali is loaded. Q: Why does Kali report, "Error: no response from xxx.xxx.xxx.xxx"? A: Either because the ip# you are trying to attach to is not running Kali or you don't have Kali configured properly. Have you tested your connection yet? Can you ping any or all of the servers? Have you tried these steps? Q: Why can't I ping anything? A: Good question! This means you are actually trying to test your connection before using Kali! I'm so happy! Anyway, this is almost always caused by an incorrect value in wattcp.cfg. Either your netmask, gateway, or my_ip value is most likely wrong (assuming the PPP connection was tested successfully) Are you absolutely positive that your modem is configured for hardware flow control (RTS/CTS) and not software (XON/XOFF)? For Hayes compatable modems, this is normally done with AT&F2. For USR modems, try using AT&F1. Try using a netmask of 0.0.0.0 in wattcp.cfg. Using a netmask of 0.0.0.0 will make the wattcp kernel think that all nodes are in your local network. It will cause Kali and other wattcp apps to quit trying to use the gateway. Q: I can ping a server, but I can't connect with Kali. Why? A: Wow...getting close. The most common problem causing this is an incorrect modem init string. Make sure that hardware flow control and NOT software flow control is enable on the modem (see A4 above). This can also be caused by having the wrong info in wattcp.cfg. The server might be off-line. Try another server. Q: Ok, I finally connected to a server. Now my PC locks up after a few seconds. I haven't even started a game yet. Sometimes it locks up before I even run Kali. Sometimes I get the player list. What did I do wrong? A: The most common cause is not having hardware (RTS/CTS) flow control enabled (and software/XON/XOFF disabled). Check the manual for your modem and make sure your init string enables RTS/CTS and disables XON/XOFF. The second most common reason for PPP users is the omission of the ppp=1 line in wattcp.cfg. Also try using a netmask of 0.0.0.0 (PPP only). Q: How can I get more conventional memory? A: Use a memory manager such as DOS's emm386 or QEMM. Load DOS high and load Kali high (lh Kali). Add the "noems" option to the emm386 or qemm line in config.sys. You might be able to get Kali into an upper memory block on some systems. Read your DOS manual or type "help emm386" at the DOS prompt. If use have a CDROM, try to avoid loading all of its drivers. Using DOS 6.0 and above you can create multiple configurations in your config.sys. Again, read the DOCS. Try adding "lh " in front of lsl, ppp, and ipstub in the load.bat file. Most games that use their own memory menager (like Doom and Descent) will still work when used with emm386 or qemm. They also still need at least some minimal conventional memory. Both Doom and Descent will have fits if the conventional memory is below 350K (approx). Q: This stupid document didn't help. What do I do now? A: If this list doesn't answer your question, please send your question to the following address: help@kali.net ***NOTE*** You must include the following information for me to be able to help. Without this information, I won't answer most questions. 1. What version of Kali are you using? 2. What version of DOS are you using? 3. What brand/model of modem and speed? 4. A copy of kali.cfg 5. A copy of wattcp.cfg 6. A copy of net.cfg 7. A description of the problem and what steps you have taken to try to resolve the problem. I want to know at what point in the instructions in kali.doc you can't get past. If you send me email stating that you cannot connect to Kali Central and don't tell me that you can ping it successfully, I will just send you a copy of this message. Please try to read the instructions first. Chapter X: Credits I would like to thank all of the people who have made contributions to Kali. Without these people you probably wouldn't be playing internet games at all. A special thanks goes to my wife Eleanor and daughter Jennifer. I thank my wife for her patience, for allowing me those long hours in my office pecking away at the computer, for being my attorney, for being a friend and listening to all my problems, and for supporting me 100%. I thank my daughter Jennifer for being herself. She's just great! :) The following people and/or companies have contributed in one way or another. They are listed in chronological order of contribution. I may have made a mistake in the ordering of one or two but hopefully I didn't leave anyone out. If I did, *please* let me know and I will correct it. id Software - for writing Doom and providing the source code for ipxsetup. This is what got me into multiplayer gaming! Jake Page (snake) - the author of tcpsetup. tcpsetup was the first program to allow internet Doom. Erick Engelke - the author of Waterloo TCP (wattcp). Wattcp is used in both iFrag and Kali. Scott Coleman (Khan) - the author of iFrag and the original IPX code in Kali. My mentor, friend, and adversary (Doom) for a long time. Parallax - for writing Descent...the program that inspired Kali. I guess Interplay gets some credit here too. :) Frank Fejes (Warp2) & PooterMan (I still don't know his name!) - for registering the first two copies of Kali! Danny Gasparovski - the author of SLiRP. He made several changes to his program at my request. Without his efforts shell users would be stuck with MILK ;-) Patrick and Michael Klos - the authors of pppshare (along with his brother). At my request they developed pppshare just for Kali users. Jonathon Roy (roy7) - for porting the kali code to unix to make the first Kali server. For providing consulting on further unix programming. Edward Henigin (Texas Net) - for running the first Kali server and the iFrag Tracker. Pramod Gumpeni (ZenMaster) - the author of the Kali Game FAQ and a beta tester. My number one fan! Also ran Zen's Temple. Chung Lau (waver) - author of the netcom shell kit. Available at most Kali ftp sites. Ethan Winkley - author of the PPP FAQ. Byron Followell - author of the Netcruiser FAQ. Derek Bumpas - author of snatch. Lawrence Reiss - author of the Compuserve FAQ. loopy - for cracking every version of Kali before anyone else and letting me know just how bad my security was ;-) Axxis Corporation - Mark Leslie, Mike Fine, Mike Maxwell, Suzie Peterson, Marsha Maxwell - for handling credit card orders, running a server, and official Web site. Westwood Studios - for writing Command & Conquer and supplying me with a whole new set of customers :) And all the other people who have ftp sites, web sites, kali servers, etc. Thanks for everyone who has helped test dozens of version of Kali. Thanks for everyone who has registered and allowed me to continue to improve Kali. There are so many people who have contributed ideas that it would takes pages to list them all. Thanks! Despite all their efforts.... ;-) Kali and the kalid server are (c) Copyright 1996 Kali, Inc. All Rights Reserved. Thanks! jay (jay@kali.net)