8000 GitHub - jonof/jfwhaven: No-promises port of the Capstone Software game "Witchaven"
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
/ jfwhaven Public

No-promises port of the Capstone Software game "Witchaven"

Notifications You must be signed in to change notification settings

jonof/jfwhaven

Repository files navigation

JonoF's Witchaven Port

by Jonathon Fowler

This is the source code for my port of Witchaven by Capstone Software using my port of Ken Silverman's Build game engine, based on the code released by Les Bird.

Minimum system requirements

  • 32 or 64-bit CPU. These have been tried first-hand:
    • Intel x86, x86_64
    • PowerPC 32-bit (big-endian)
    • ARM 32-bit hard-float, 64-bit
  • A modern operating system:
    • Linux, BSD, possibly other systems supported by SDL 2.0.
    • macOS 10.15+
    • Windows Vista, 7, 8/10+
  • Optional: 3D acceleration with OpenGL 2.0 or OpenGL ES 2.0 capable hardware.

You will require game data from an original release of Witchaven, specifically:

  • All files with an .art extension.
  • All files with a .map extension.
  • lookup.dat
  • joesnd
  • songs
  • intro.smk

Use palette.dat from the rsrc directory of this repository.

Compilation

Before you begin, clone this repository or unpack the source archive. If you cloned using Git, be sure to initialise the submodules of this repository (i.e. git submodule update --init).

Now, based on your chosen OS and compiler:

Linux and BSD

  1. Install the compiler toolchain and SDL2 development packages, e.g.
    • Debian 9: sudo apt-get install build-essential libsdl2-dev
    • FreeBSD 11: sudo pkg install gmake sdl2 pkgconf
  2. Install optional sound support development packages.
    • Debian 9: sudo apt-get install libvorbis-dev libfluidsynth-dev
    • FreeBSD 11: sudo pkg install libvorbis fluidsynth
  3. Install GTK+ 3 development packages if you want launch windows and editor file choosers, e.g.
    • Debian 9: sudo apt-get install libgtk-3-dev
    • FreeBSD 11: sudo pkg install gtk3
  4. Open a terminal, change into the source code directory, and compile the game with: make or gmake (BSD)
  5. Assuming that was successful, run the game with: ./whaven

macOS

  1. Install Xcode from the Mac App Store.
  2. Fetch and install the SDL 2.0 development package:
    1. Fetch SDL2-2.0.x.dmg from http://libsdl.org/download-2.0.php.
    2. Copy SDL2.framework found in the DMG file to ~/Library/Frameworks. Create the Frameworks directory if it doesn't exist on your system.
  3. Open whaven.xcodeproj from within the JFWitchaven source code's xcode folder.
  4. From the Product menu choose Run.

Windows using Microsoft Visual C++ 2015 (or newer) and NMAKE

  1. If needed, install Visual Studio Community 2017 for free from Microsoft. Terms and conditions apply. Install at minimum these components:
    • VC++ 2015.3 v140 toolset for desktop (x86,x64)
    • Windows Universal CRT SDK
    • Windows 8.1 SDK
  2. Open the command-line build prompt. e.g. VS2015 x64 Native Tools Command Prompt or VS2015 x86 Native Tools Command Prompt.
  3. Change into the JFWitchaven source code folder, then compile the game with: nmake /f Makefile.msvc
  4. Assuming success, run the game with: whaven

Compilation options

Some engine features may be enabled or disabled at compile time. These can be passed to the MAKE tool, or written to a Makefile.user (Makefile.msvcuser for MSVC) file in the source directory.

These options are available:

  • RELEASE=1 – build with optimisations for release.
  • RELEASE=0 – build for debugging.
  • USE_POLYMOST=1 – enable the true 3D renderer.
  • USE_POLYMOST=0 – disable the true 3D renderer.
  • USE_OPENGL=1 – enable use of OpenGL 2.x acceleration.
  • USE_OPENGL=3 – enable use of OpenGL 3.x acceleration.
  • USE_OPENGL=USE_GL2 – enable use of OpenGL 2.x acceleration. (Not a valid setting for MSVC.)
  • USE_OPENGL=USE_GL3 – enable use of OpenGL 3.x acceleration. (Not a valid setting for MSVC.)
  • USE_OPENGL=USE_GLES2 – enable use of OpenGL ES 2.0 acceleration. (Not a valid setting for MSVC.)
  • USE_OPENGL=0 – disable use of OpenGL acceleration.
  • WITHOUT_GTK=1 – disable use of GTK+ to provide launch windows and load/save file choosers.

Warnings

  1. Let's not talk about the licensing.

Enjoy!

Jonathon Fowler

0