Descent 3 by Outrage Entertainment
Go to file
Louis Gombert 622b8278dc Fix HOG file entry parser in 64 bit architectures
timestamp is 4 bytes in the file, but is read as an 8-bytes long when built on 64 bit architectures, screwing up the read offset
2024-04-18 08:23:22 +02:00
.github/workflows Merge branch 'main' of github.com:kevinbentley/Descent3 into linux-build 2024-04-18 02:00:35 +03:00
2dlib
acmlib
AudioEncode
bitmap Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
cfile Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
czip Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
d3music
dd_grwin32
dd_lnxsound
dd_sndlib Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
dd_vidwin32
ddgr_mac
ddio_common
ddio_lnx
ddio_mac
ddio_win Remove smoothing code that did nothing 2024-04-16 20:44:50 -05:00
ddvid_lnx
Descent3 Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
fix
grtext Committing local fixes and changes I had. 2024-04-16 22:53:28 -05:00
lib Fix HOG file entry parser in 64 bit architectures 2024-04-18 08:23:22 +02:00
libacm Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
libmve Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
linux Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
lnxcontroller
lnxmvelib
mac Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
mac_sndlib
manage
md5 Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
mem
misc Unix: set -std=c++17 explicitly 2024-04-17 01:38:18 +02:00
model Remove dublicate byteswap.h 2024-04-18 03:20:36 +03:00
module
movie
music
netcon Remove linux/ipx.h include 2024-04-17 01:20:51 +02:00
netgames Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
networking
physics Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
renderer Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
rtperformance Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
scripts Make hogUtils-i686 binary executable (needed for build to succeed) 2024-04-17 23:17:44 +03:00
sndlib
stream_audio Remove unused osMutex code 2024-04-17 01:20:51 +02:00
tools This beautifull commit will allow you to checkable auto format your code with clang-formatter-16 2024-04-17 00:25:58 +02:00
ui
unzip Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
vecmat
win32 Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
.clang-format
.clang-format-ignore Ignore formatting for debugbreak.h 2024-04-17 09:24:47 -04:00
.gitignore
Brewfile Use brew bundle to install dependencies 2024-04-17 11:29:41 -04:00
CMakeLists.txt Convert min/max macros to std::min/max 2024-04-17 21:43:38 +02:00
CMakePresets.json Check Linux build in Github Actions 2024-04-17 23:17:44 +03:00
README.md Update README.md 2024-04-17 14:06:30 -04:00

Descent 3

Update 04/17/2024

Thank you for your contributions after only a little over 24 hours! The current short-term roadmap is code cleanup and build verification. As described below, the original release includes the '1.5' patch that never made it to retail. At the time it was written, it worked--this may or may not be the case at present. We are aiming to clean up the source for improved readability and standards, as well as playability. In short: we'd like to reach a good baseline "vanilla" source.

We've had several contributions towards this end already. Please remember to check for duplicate issues and pull requests before submitting!

Update 04/16/2024

I'm so happy to see the amount of interest and participation here!

Please join the Descent Developer Discord, there's an active community there already.

https://discord.gg/GNy5CUQ

You can expect some big commits coming soon. We'll be merging in some code that other developers did in parallel and/or after this code was archived.

Direction and Decisions

  1. We will support c++17 going forward
  2. We are using clang in LLVM mode for code formatting. Please run clang-format before submitting a PR

Original Release

This is the latest version of the Descent 3 source code. This includes the '1.5' patch that Jeff Slutter and Kevin Bentley wrote several years ago. At the time, it worked for Windows, Linux, and Mac.

Some proprietary sound and video libraries from Interplay have been stripped out (the ACM and MVE format). I have that code if someone wants to help make a converter so the old cutscenes work. It'll take some effort to stub out that code so it compiles.

The first thing I want to do is get everything compiling again, and ideally some CI/CD actions. After that, the code needs to be cleaned up some, to remove old version control comments, etc. A lot of this code was written by a really great team, but keep in mind we were much younger and less experienced back then.

If you're interested in helping maintain it, please send me a message. Otherwise, I'm happy to take pull requests.

This is the last update I put out there showing different architectures playing along. Yikes, that was a long time ago, sorry we never released a 1.5 patch. Some logistics got in the way!

Descent3 1.5 Patch Development update

Thanks to Jeff Slutter, who did most of the work modernizing the code from the 90's. I'm looking forward to seeing what the community does with it!