Retro racing reboot: The Need for Speed

Ah, the original Need for Speed! Alpine, Coastal, Vertigo Ridge—great tracks now trapped in an out-dated game, passed by in time. As an avid road-tripper, I loved those open road tracks and the opportunity to drive with traffic in an environment that, for the time, felt realistic. I even plunked down the cash for a Thrustmaster T1 wheel and pedals.

Several years ago I had the idea to rip out those tracks and convert them to run in a modern simulator. With some help from Denis Auroux (the author of TRACKED, to my knowledge the first player-created editor for a commercial game) I was able to decode the track segments and textures. But then I got distracted, my attention turned elsewhere, life and children caught me up, and the code was left to collect dust.

Now the driving bug is biting again and I'm blowing the dust off this project as a first, small step back into simulation coding. I dug up my circa 1995 NFS SE CD and got it running on my 2009 MacBook Pro. It is…dated, as you can imagine. The steering and handling is all over the place compared to a modern sim; I have no idea how we managed those quick laps back in the day!

(As an aside, I used to run the AutoSim World Records Site back then, which you can still find in the Internet Archive. None of those records are mine though; too much time building websites and not enough racing.)

In case you feel like following along, here's how I got it working.

I'm on a MacBook so I used Boxer, a Mac OS X wrapper for DosBox. These steps are specific to Boxer, but the DosBox website has good instructions for different platforms, and there are several other front-ends to choose from.

  • Launch Boxer, which brings up the game shelves.
  • Drag the CD-ROM (or a folder containing all the files) on to the "Drop games to install" icon. This will create a new Boxer gamebox.
  • Double-click the new gamebox, and when prompted choose Show DOS Prompt. When it appears, type exit to close it. We're not ready to start the game yet, we just need Boxer to create a default preferences file for us.
  • Control-Click on the new gamebox and choose "Show Package Contents".
  • Rename the NFS (or NFSSE) folder to CDROM (or whatever), then open the file DOSBox Preferences.conf in TextEdit. You need to make two changes. First, speed things up by increasing the cycles:
    [cpu]
    cycles=60000
    

    Then mount the CDROM folder as a drive:

    [autoexec]
    ## Any DOS commands you put underneath this heading
    ## will be executed when DOS emulation starts.
    
    mount d CDROM -usecd 0 -t cdrom -label NFSSE
    

    (Normally, you would just give the folder an extension of ".cdrom" and Boxer would mount it automatically. But it uses a flag (-ioctl) that causes the emulator to crash when Need for Speed tries to play a sound. So add this mount command instead.)

  • Now, launch the gamebox. Boxer will ask which executable to run, hit Cancel to get to a DOS prompt. Change to the D: drive and run INSTALLD.EXE. Choose Soundblaster 16 for the sound card, and disable the videos. Use the default settings for everything else, and you'll soon be back in the glory of 1995!


Not too shabby for a 15 year old game!

If you want to use a wheel or game controller, return to the DOS prompt and run JCU.EXE. Configure for your controller, and then restart NFS. Under Options, calibrate the controller. Then, use the controller (not the keyboard!) to navigate the control settings menu and change the mappings.

A tip: only turn the wheel about halfway in each direction when calibrating. Otherwise it won't be sensitive enough and you'll find yourself sawing at the wheel to make even slight turns. If you do it right, the in-game steering wheel will roughly match your motions.

Alpine for rFactor?

While preparing this article I discovered this YouTube video showing the Alpine1 stage in rFactor, but I wasn't able to find the track anywhere. I've contacted the author, and I'll see if I can find out anything else about it. Watch this post for more information.

Did you enjoy this article?

Help me write more like it. »