Old news
Links on this page are most likely broken. It's mostly old out-dated info.
9/07/2003 -6:26pm PST

Fixed a small sound glitch bug with the new SDL.dll. Go ahead and re-grab it. I simply re-enabled directx sound. I kept DX graphics disabled. That's really all I changed to get the speed increase in the first place. SDL's DX video driver was making a nasty performance decision, so I gave it a little guidance and it works like a champ. (SDL is good stuff)
new SDL.dll

Those who play in fullscreen mode are better off staying with the version of SDL.dll that came with duke3d_w32. However, windowed users will benefit greatly from the newer dll. I'll be working the kinks out of the fullscreen mode. Since fullscreen mode was already fast, there was really no reason to download the new dll anyways.

9/07/2003 -11:53am PST

Renderer fixed!!!
I've figured out why the rendering was so slow in windowed mode. The problem was that even windowed mode was using directx surfaces, so it was drawing and 8 bit surface to my 32 bit desktop. This can cause some REALLY big slowdowns. (and it did) I was geting from 40-70 fps in windowed mode on my machine. I now get 120-300+. All from recompiling the SDL dll without DX support. So! Get it!!!
Just replace your current SDL.dll in the "bin" directory with this one. Let me know if you have any problems with it.

Note: If you're getting sound glitches as a result of the new SDL.dll, turn off cubic interpolation. You can do that one of two ways. In the console type ENABLECUBIC 0, or in the autoexec.cfg set ENABLECUBIC to 0.

8/11/2003 -12:07am PST

Build 17.9.1(patch-only) is up.
* Added "top hat" support for Joysticks
* Fixed a crash with swinging doors where the associated sprite index was looking for -1.
* crash should be fixed.
Check out my notes in the forums.

8/7/2003 -12:45am PST

Build 17.9(patch-only) is up. It addresses the following issues:
* Fixed ControllerType=1(keyboard + mouse) problem. Mouse would move player forward when in mouse aim mode.
* Added a smooth mouse mode.(Experimental)
* Added cvars to support the new mouse mode:
->EnableSmoothMouse 1 = enables smooth mouse. This is the default.
->SmoothMouseSensX 15000 = Sets the sensitivity of the X axis while in smooth mouse mode.
->SmoothMouseSensY 15000 = Sets the sensitivity of the Y axis while in smooth mouse mode.

8/5/2003 -9:56pm PST

Build 17.8-5(patch-only) is up. This is a fix to fullscreen mode that I borked on the last patch.
Check out my forum posting for more information on the fix.

8/1/2003 -11:37pm PST

Build 17.8(patch-only) is up. This is another joystick fix release.
*Fixed Mouse-flip for ControlType 2 and 7
*Fixed issue with analog on axis 0 and 1
*Fixed issue where MouseAnalog settings were overwriting joystick axis 0 and 1.
Check out my forum posting for more information on the fix.

7/28/2003 -11:37pm PST

Build 17.7(patch-only) is up. This is another joystick fix release. duke3d_w32_b17-7-patch.zip
Check out my forum posting for more information on the fix.

7/27/2003 -9:12pm PST

Build 17.6(patch-only) is up. This is just a joystick fix release. I've added nothing else at this point. It hopes to fix the problem where mouse-aim enabled would screw up the movement. At any rate if you aren't interested in joystick support, then ignore this release. Thanks! duke3d_w32_b17-6-patch.zip
Check out my forum posting for more information on how to use the new stuff.

6/15/2003 -3:04pm PST

Yesterday I did a little looking into the rendering speed issue. I grabbed an eval copy of vtune.(Intel Rocks!) As expected most of the time is spent in SDL_UpdateRect() and SDL_UpdateRects(). So atleast the slowdown is where it should be. I'll have to look at how those calls are being use to see what's truely causing the slowdown. The frame rate is actually fine for most modern machines. (50-70fps usually) It could be better however. In fact it SHOULD be better.

5/11/2003 - 1:07pm PST

Build 17.5 is up. This build fixes a couple bug with the new joystick system.
* Fixed the ugly bug where "JoystickAnalogScale" was not being saved in the config.
* Added a joystick value debug cvar. "DebugJoystick 1". 
  ->This displays a realtime view of the joystick inputs.

5/11/2003 - 1:39am PST

Build 17 is up. This release is mostly made up of user requested additions.
* Joystick support! And the addition of a Joystick+Mouse configuration. 
  ->Please read the duke3d_w32.chm for more information. (the input section)
* Fixed WinMidi to allow users to change which midi device is used via duke3d.cfg. 
  ->Change the "MusicDevice" variable to match your device. 
    Most users will want this setting:
    "MusicDevice = 0"
* New Windows help file version of the docs
* Added "TransConsole" CVAR
* Added validation to "Level" command for the 1.5 data
* Added command line option for fullscreen. "-fullscreen"

5/05/2003 - 11:50pm PST

I've created a new user/developer's guide for Duke3d_w32. It's in CHM format, which most folks should be able to read under Windows by simply double clicking on it. The CHM format the Microsoft's prefered help file format. Grab the doc here: duke3d_w32.chm

5/04/2003 - 1:50am PST

Added a web forum to Rancidmeat.com. This should allow for a nice stream of communication between users of this port. You can reach the forums here: Rancidmeat.com forums. After registering for a user account, you will have to wait for the request to be approved before you can post messages.

5/03/2003 - 2:44am PST

Build 16 is up. Lots of good changes and bug fixes in this build.
* Integrated fixed sound code from kode54. (yay 48000hz!)
* Fixed crash on Area51 demo.
* Added many console variables
* Fixed duke3d.cfg handling of negative numbers. 
  ->(bug would cause duke not to run if there negative numbers in the duke3d.cfg)
* Added new autoexec.cfg system. This will allow you to auto-run commands in the 
  console at startup. One main reason for this is to allow folks to run "classic"
  mode without needing to type that into the console everytime they run the game.
* Added transparency to the console. (Thanks for the tip Cyborg)

Special Thanks to Adrian "JimCamel" Clark, and Ahmed Rasool for contributing
new console variables and commands.

4/27/2003 - 4:20am PST

Patch for build 14, and a new build 15. For those of you who just downloaded build 14: instead of downloading build 15, just download the patch for build 14. build14patch.zip the zip contains a new exe and the changed console.c. This patch fixes a dumb console rendering bug, on my behalf. That's it.

4/27/2003 - 1:57am PST

Build 14 is up. It adds the new drop down console system. At the current time, there aren't a great number of commands for the console. Read the console.txt file in the .zip, or check it out online here. This doc explains how to use the console, how to extend it, and how to integrate it into other projects. Here's a new picture of the "numconsolelines" feature of the console. console4.png. I hope you enjoy it. I also hope that a few folks look at the cvar system and add a few useful CVars. For those C programmers out there that are looking to contribute, but don't have a great deal of time to commit, this is a great chance to help out. Write some cool, useful CVars. If they're nice and useful, I'll probably want to merge them into the next build. So, let me know if you write some!

4/25/2003 - 2:00am PST

I've been working on a drop down console for the past couple of days. Tonight I got the keyword binding system in place. So, now it's extremely easy to add new console variables. You can check out a recent screenshot here. I have a few things to clean up yet. I'm planning to get this out sometime this weekend. I'm quite happy with how the system has turned out, and I think everyone else will be as well.

4/19/2003 - 3:12pm PST

Build 13 is up. Both binary-only and full source packages are available. I've updated the networking.txt to reflect recent changes to the networking system. The 2 player limit should be fixed as well.


4/14/2003 - 9:49pm PST

Uploaded a new binary only version of build 12. It's only 800k as opposed to the 2.2 meg download for the full source package.

4/14/2003 - 12:12AM PST

Build 12 is up. Demo playback is fixed for Atomic Edition data files. This also means that 1.3 demos won't work. But! It also means that 1.4 data files won't crash on demo playback as well. I've changed the initial keyboard config of the duke3d.cfg that I ship with the package. Due to request. :) I've also integrated with most of the latest off of the Icculus cvs. The networking portion has not changed as I am trying to narrow down some odd connection problems with the new stuff.

4/12/2003 - 7:01pm PST

Build 11 is up. Not a ton of changes. I've integrated the latest Icculus CVS. I've added a dozen or so maps that myself and a friend worked on a while ago. I've included a few other maps we used to play frequently as well. On note on those having garbled sound. Make sure you change your "Numbits" in the duke3d.cfg to "16". Win32 networking seems to be broken in the latest CVS. So Instead, I've kept with an older version. It also seems that only 2 player games are currently working with the build. I need to look into why that is.

4/10/2003 - 1:22am PST

Not much activity code-wise today, just a little code clean up. I did some small clean up to the VC projects. When something more substantial gets done, I'll make a new build. I found a link to a revised version of a great duke mapping FAQ. http://www.planetduke.com/jsbuild/mapfaq/ If you're looking into getting back into making duke3d maps, you should check it out. I managed to find a couple of my old duke maps a few days ago. I stuck them in the last few builds. You can find them in the bin directory. (spaceprt and spacepwr) Spacepwr is the better of the two. It's pretty fun in multiplayer. I'll probably throw in some more old maps that I used to play in the next build. (like mansion, mookie2, & earthwar)

4/8/2003 - 11:52pm PST

Build 10 is up. This build integrates the "audiolib" library for sound effects. This fixes the issues with sounds lagging, VOC pitch problems, and sounds cutting out. It's great stuff. And as always thanks to Icculus. As a note, I am still sticking to the win_midi stuff for midi playback since it has been working extremely well, so there's no reason to change that.

4/8/2003 - 10:19am PST

Build 9 is up. Updated to the latest Icculus CVS. This build adds TCP/IP networked games, and improved VOC sampling. It should be noted that the TCP/IP support is fairly limited at this point. It works pretty well for LAN games. It's not optimized for internet play at this time. It's quite likely that your game will become out of sync fairly quickly if attemped over the internet.

4/8/2003 - 2:52am PST

Build 8 is up. Updated to the latest Icculus CVS. This build loads .GRP files for the Shareware version, 1.3 and Atomic edition. What this means is, no more needing to extract your .GRPs before playing. Just copy them into the "bin" directory and you're good to go.

4/6/2003 - 8:13pm PST

Build 7 is up. It fixes the crazy platform bug, where the platforms or doors would crush you instead of lift you, or open. This fix is thanks to the Icculus port.

4/6/2003 - 3:08pm PST

Build 6 is up. It fixes the sound lag issue. I've also updated to the lastest drop of Icculus which fixes the crash on exit bug that was in scriptlib. I was going to remove the win_midi code from the build, but the SDL version is a bit buggy yet. So, I left it in for now. It works pretty well, so I don't mind leaving it in.

4/6/2003 - 12:53am PST

Build 5 is up. I've added a couple things. First VC 6.0 project files have been added. I've added a .GRP extractor app to help people get started in using the port. I also threw in a couple old maps I made back in 1997. I hope you find this build useful. I'll be looking into some of the bugs in the morning.

4/5/2003 - 7:53pm PST

Working mouse support is in and uploaded. I integrated the changes from the Icculus cvs. Thank goodness for abstraction layers. Makes my job easy.

4/5/2003 - 6:01pm PST

I noticed that there are a few start up win32 ports out there. I grabbed one from a link on shacknews. They solved the assembly crashes. So rather than beat my head against the wall, I swallowed my pride and integrated their build with mine. It runs pretty well actually. Mouse support is not really there currently. I'm going to look into that. I've uploaded the new version. There's not much difference code-wise at this point. I do need to mention that the project files are MSVC 7.0. You'll have to re-make the projects if you have 6.0. I may make some VC6 projects at some point. You MAY need to extract the data from the duke3d.grp in order for it to work.

4/5/2003 - 1:11am PST

I have a copy of Atomic Edition on order. For the time being I'm going to have to live with using the original duke3d data files. No problem. After all I do have the source. :) Things are going pretty well. I've hit a small snag with the assembly code. Currently any call to non-inline assembly crashes. I need to research the cause of that.

4/4/2003 - 12:34am PST

Currently duke3d_w32 compiles, links, and runs. It's NOWHERE near playable. In fact, I have yet to get the startup logo to play. That's partly due to not having the correct data files on my machine. Currently it loads and parses the duke3d.cfg without trouble and attempts to play the logo.anm. I've got duke3d 1.5 on order and should be receiving a copy soon. Once I do, I can proceed. Feel free to take a look at the screenshot below where I'm debugging the app.