Skip to content

JeodC/Descent3

 
 

Repository files navigation

d3 (1)

This is a fork of the Descent 3 open source engine, licensed under GPL-3.0. In order to use this, you must provide your own game files. See the Usage section for details.

Building

Build steps below assume you have already cloned the repository and set it up with your chosen IDE. During cmake configuration you have the following options (default to OFF):

  • -DENABLE_LOGGER=[ON|OFF] - Enable the spdlog header.
  • -DENABLE_NETGAMES=[ON|OFF] - Enable compiling the netcon and netgames folders for multiplayer.
  • -DENABLE_SCRIPTS=[ON|OFF] - Enable compiling level scripts which will give you the d3-{platform}.hog file.

Building - Windows

Requires Visual Studio 2022 and C++ Tools (cmake and vcpkg)

Install and configure vcpkg:

git clone https://github.com/microsoft/vcpkg.git
cd vcpkg && bootstrap-vcpkg.bat
setx VCPKG_ROOT="C:\path\to\vcpkg"
setx PATH=%VCPKG_ROOT%;%PATH%

Build Descent 3:

cmake --preset [win32|win64] -DENABLE_LOGGER=[ON|OFF] -DENABLE_NETGAMES=[ON|OFF] -DENABLE_SCRIPTS=[ON|OFF]
cmake --build --preset win --config [Debug|Release]

Building - MacOS

brew bundle install
cmake --preset mac -DENABLE_LOGGER=[ON|OFF] -DENABLE_NETGAMES=[ON|OFF] -DENABLE_SCRIPTS=[ON|OFF]
cmake --build --preset mac --config [Debug|Release]

Building - Linux (Ubuntu)

sudo apt update
sudo apt install -y --no-install-recommends ninja-build cmake libsdl2-dev libncurses-dev zlib1g-dev
cmake --preset linux -DENABLE_LOGGER=[ON|OFF] -DENABLE_NETGAMES=[ON|OFF] -DENABLE_SCRIPTS=[ON|OFF]
cmake --build --preset linux --config [Debug|Release]

Building - Linux (Fedora)

sudo dnf update --refresh
sudo dnf install -y ninja-build cmake gcc-c++ SDL2-devel ncurses-devel zlib-devel
cmake --preset linux -DENABLE_LOGGER=[ON|OFF] -DENABLE_NETGAMES=[ON|OFF] -DENABLE_SCRIPTS=[ON|OFF]
cmake --build --preset linux --config [Debug|Release]

Usage

  1. Make sure that you have a copy of Descent 3. You can purchase a copy of Descent 3 from GOG or Steam.

  2. Install Descent 3.

    • Note for Steam users: If you own Descent 3 on Steam, then it’s recommended that you install the Windows version of the game even if you’re running macOS or Linux, otherwise movies will not work due to current lack of Ogv support. You can use either Steam Play or SteamCMD to install the Windows version of the game on macOS or Linux.

    • Note for non-Windows users: If you have the Windows version of the game on CDs but you don’t want to use Windows to install them, then you can follow these instructions:

      How to install the Windows Dual-Jewel version of Descent 3 in Wine
      1. Make sure that you have Wine installed.
      2. (Recommended) Run winecfg and make sure that “Emulate a virtual desktop” is enabled.
      3. (Optional) Determine if you’re going to be affected by a bug with Descent 3’s installer, and potentially apply a workaround:

        1. Download Environment Size Checker.
        2. Run wine environment-size-checker.exe.
        3. If that program tells you that your environment is more than 32,724 bytes large, then you’ll need to unset or shorten environment variables before running Descent 3’s installer. If you don’t, then the installer will page fault.
      4. Install Descent 3:

        1. Insert disc 1.
        2. Make sure that disc 1 is mounted.
        3. Determine which drive letter Wine is using for your CD drive. (Hint: try running wine explorer).
        4. Run wine '<drive-letter>:\Setup.exe'.
        5. Follow the installation wizard’s instructions until it asks you to choose a “Setup Type”.
        6. Select the “Full” Setup Type, then click “Next”.
        7. Continue following the installation wizard’s instructions until it asks you to insert disc 2.
        8. Switch to disc 2:

          • Run wine eject <drive-letter>:.
          • Make sure that the disc was unmounted and ejected.
          • Insert disc 2.
          • Mount disc 2.
        9. Continue following the installation wizard’s instructions until it asks you to insert disc 1 again.
        10. Switch back to disc 1. Follow a similar procedure to the one that you used to switch to disc 2.
        11. Finish the going through the installation wizard.
        12. When the installation wizard finishes, it will open an explorer window. Close out of that window.
        13. Unmount the disc.
        14. Eject the disc.
      5. Install Descent 3: Mercenary:

        1. Insert disc 3.
        2. Make sure that disc 3 is mounted.
        3. Run wine start /d <drive-letter>: setup.exe -autorun.
        4. Follow the instructions in the installation wizard.
  3. If your version of Descent 3 is older than v1.4, then update it to v1.4.

  4. After you build, copy the build contents in builds/{platform}/Descent3/{config}/ to whatever folder you wish.

  5. Copy the following files from your installation of Descent 3 to that folder:

    • All .hog files (don't overwrite existing files)
    • The missions folder
    • (Optional) All .pld and .plt files.
    • (Optional) Contents of thedemo folder.
    • (Optional) Contents of the movies folder.
    • (Optional) Existing saves in the savegame folder (32-bit saves do not currently work with 64-bit builds).
    • (Optional) Existing sscreenshots to the new screenshots folder.

About

Descent 3 by Outrage Entertainment -- Forked.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages

  • C++ 89.5%
  • C 8.9%
  • Assembly 1.4%
  • CMake 0.1%
  • Rich Text Format 0.1%
  • Objective-C 0.0%