JF Ports HOWTO aka. “I'm new to this”
This document should help to introduce the idea of a "port" to folks who are unfamiliar with the concept.
What is a port?
To translate or modify software to run on a different platform, or the results of doing so. The portability of the software determines how easy it is to port.
So, from this, the JFDuke3D and JFShadowWarrior ports are versions of Duke Nukem 3D and Shadow Warrior modified to work in Windows, Linux, and a variety of other operating systems. Instead of running under an emulation environment, as running the DOS game in Windows XP is, these games are now native to the operating system.
So, how is a JF port better?
The JF-series of ports are better than the original DOS versions of the games because they are, like was just determined, native versions of the game. They also have new graphical features thanks to the work of Ken Silverman, the original author of the Build engine that powers the games, like OpenGL graphics, and as an extension of that, high-resolution texture and model support. Running in 8-bit mode "out of the box", the port appears to be graphically identical to the original DOS version, and it is, but enabling the graphical extras gives a new side to the Duke and Shadow Warrior experience.
Ok, then how do I use these ports?
JFDuke3D: I provide an installer for Windows users. You can get it from here; look for the entry named "JFDuke3D binaries yyyymmdd (installer)", which is usually the first in the list (yyyymmdd is the version, formed from the year, month, and day of release). The installer will take care of installing the JFDuke3D executable and configuring a start menu item. It also comes with a tool to locate and copy the game data from your original Duke3D CDROM, or from an existing installation of DOS Duke3D already on your harddisk. This tool is run after the port is installed.
JFShadowWarrior: At the moment, because JFShadowWarrior is still under heavy development, there is no installer available. Instead, you will have to install the port manually. This is easiest done by copying the SW.GRP file from the SWINST directory on your Shadow Warrior CDROM to a directory on your harddisk. Then, you need to fetch the JFShadowWarrior port files from here. The file you need will be named similar to "JFShadowWarrior binaries yyyymmdd". Unzip that file using whatever ZIP manipulation tool you prefer to the directory where you copied the original Shadow Warrior data file. If your ZIP program is configured to extract path names, there will be a directory named 'jfsw_yyyymmdd' which contains the JFSW port files. You need to move the contents of this directory to where the SW.GRP file is. Assuming all went well, you can now double-click setup.exe to configure the game before running sw.exe to play.
Cool, I can handle single player fine. How do I get multiplayer going?
Multiplayer in JFDuke3D and JFShadowWarrior are still under development to make it easier to get games going, but JFDuke3D is far more mature and better supported at present. Network games normally have to be started using command line parameters to duke3d.exe or sw.exe, but these can be quite confusing to new users. For JFDuke3D, a program named Dukester X exists to take care of launching the game with the correct parameters, and it also provides a Gamespy-like browser to find open games. Unfortunately at this time a similar program does not exist for JFShadowWarrior, but my plan is to put all the network game launching functions into the games themselves like basically every modern game has now. When JFShadowWarrior's networking stabilises more, I expect a program like Dukester X will come along to provide for Shadow Warrior what is available for Duke3D. Eventually though, everything will be able to be done from inside the game.
Argh, I'm completely lost!
Hmm, drop me a message via one of my contact methods and I'll try to help you out, and hopefully we can amend this document so others may benefit.