Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1 | pmbaty | 1 | Compiling D1X-Rebirth Sourcecode |
2 | |||
3 | This file describes how to compile D1X-Rebirth from Source. |
||
4 | |||
5 | |||
6 | Requirements: |
||
7 | ============= |
||
8 | |||
9 | 1. C/C++ compiler (gcc/g++) |
||
10 | 2. SCons (to compile in *NIX/Win32) / XCode (to compile on MacOS) |
||
11 | 3. SDL(-devel) |
||
12 | 4. PhysFS(-devel) |
||
13 | 5. GLU/GL |
||
14 | 6. NASM (optional for Assembler-based Texture-mapper in non-OpenGL Build) |
||
15 | 7. SDL_mixer(-devel) (+ dependencies) for external music support |
||
16 | |||
17 | |||
18 | Compiling: |
||
19 | ========== |
||
20 | |||
21 | *NIX: |
||
22 | ----- |
||
23 | Type 'scons' to compile the source. |
||
24 | You can also give additional options like 'scons use_udp=0'. See 'scons -h' for available options. |
||
25 | To install, use 'scons install' but remember to use all your options as well or SCons will re-compile and |
||
26 | install without any options given to prior compiling. However it's STRONGLY recommended NOT to use the |
||
27 | 'install' argument but to create a package for your Linux distribution or operating system. 'install' will |
||
28 | compile the resulting binary (d1x-rebirth) to /usr/local/bin/ by default so to uninstall, just |
||
29 | delete the binary. |
||
30 | |||
31 | MacOS: |
||
32 | ------ |
||
33 | For Mac OS X, an Xcode project is available (requires Xcode 2.1 or later). Xcode includes the compiler |
||
34 | and OpenGL. The standard SDL and SDL_mixer libraries from the SDL website may be used, these go in |
||
35 | /Library/Frameworks or ~/Library/Frameworks. However, to fix MP3 support for the 'Release' build I used |
||
36 | SDL 1.2.8 with Diedel's modified SMPEG library from his D2X-XL website. To debug these libraries compile |
||
37 | the frameworks from source as 'Debug' builds, then use these instead. PhysicsFS must be compiled from |
||
38 | source. Put its enclosing folder 'physfs', renaming if necessary, next to D1X's (typically d1x-rebirth). |
||
39 | In CMake ensure the build path points to 'build' inside 'physfs'. Specify 'i386;ppc' as the architecture |
||
40 | for a universal binary. In Xcode, build 'Debug' and 'Release' from the dynamic library target. |
||
41 | SCons also works on MacOS X, but it's recommended to use XCode instead. |
||
42 | |||
43 | For Mac OS 9, an MPW Makefile is available. MPW includes the compiler. As for the shared libraries, |
||
44 | compile PhysicsFS version 1.0 and the latest SDL and SDL_mixer (as of writing) from source. For SDL_mixer |
||
45 | 1.2.11 you will need to disable MikMod support, from SDL_mixer.make, otherwise use SDL_mixer 1.2.8. |
||
46 | For any sources to compile, they will need to be made into text files using a typecode changing program, |
||
47 | if they were downloaded outside of Mac OS 9 (including Mac OS X). This will also need to be done after any |
||
48 | Terminal command (diff, svn update etc) edits the source files. THIS MAKEFILE IS GROSSLY OUT OF DATE!! |
||
49 | |||
50 | Note that there are ready-to-go packages on https://www.dxx-rebirth.com |
||
51 | |||
52 | Win32: |
||
53 | ------ |
||
54 | Use the SCons way like described in the *NIX-instructions from an MSYS/MinGW environment. However you will |
||
55 | not need to use 'install' but just drag the resulting binary to your Descent-folder. |
||
56 | Note that there are ready-to-go packages on https://www.dxx-rebirth.com |
||
57 | |||
58 | |||
59 | Needed files: |
||
60 | ============= |
||
61 | |||
62 | Since D1X-Rebirth is a Sourceport of the Descent-Engine you will need the Game-Content data files to run |
||
63 | the game. You can use your original Floppies, CDs or files from previously bought GOG or Steam versions. |
||
64 | |||
65 | Following files are needed to run the game: |
||
66 | descent.hog |
||
67 | descent.pig |
||
68 | |||
69 | For the Mac CD-ROM, download The Unarchiver (http://wakaba.c3.cx/s/apps/unarchiver.html) and drag the |
||
70 | installer program onto it. Alternatively, run the installer on a computer with Mac OS 9 and copy over. |
||
71 | |||
72 | Of course you can also use the Shareware game content with D1X-Rebirth which you can find here: |
||
73 | https://www.dxx-rebirth.com/game-content/ |
||
74 | |||
75 | For the PC CD-ROM, these files should be located on the Descent1 CD-Rom. The PC version data files need |
||
76 | to be patched to version 1.4a. |
||
77 | |||
78 | There is a patch suitable for Mac OS X available at: |
||
79 | https://www.dxx-rebirth.com/download/dxx/misc/descent-game-content-10to14a-patch.zip |
||
80 | |||
81 | To play the Multiplayer levelset 'Total Chaos', make sure the files |
||
82 | |||
83 | chaos.hog |
||
84 | chaos.msn |
||
85 | |||
86 | are in the subdirectory 'Missions'. These files should also be located on the Descent1 CD. For the |
||
87 | Mac CD data, simply move these files, after installing, from 'Data' to 'Missions'. |
||
88 | |||
89 | |||
90 | Where to put these files: |
||
91 | ========================= |
||
92 | |||
93 | *NIX |
||
94 | ---- |
||
95 | The Sharepath (/usr/local/share/games/d1x-rebirth/ by default - if not reconfigured via SCons) or |
||
96 | ~/.d1x-rebirth or |
||
97 | another directory specified by -hogdir via d1x.ini |
||
98 | |||
99 | MacOS |
||
100 | ----- |
||
101 | Same directory as where the binary is located or |
||
102 | another directory specified by -hogdir via d1x.ini |
||
103 | |||
104 | Win32 |
||
105 | ----- |
||
106 | Same directory as where the binary is located |
||
107 | another directory specified by -hogdir via d1x.ini |
||
108 | |||
109 | |||
110 | Optional files: |
||
111 | =============== |
||
112 | |||
113 | D1X-Rebirth is expandable. You can add additional content to the game. |
||
114 | |||
115 | Missions: |
||
116 | --------- |
||
117 | Those can be found on several websites. Add them to the game by copying them to subdirectory |
||
118 | ‘missions/’. They can also go in subdirectories of 'missions/', unlike with the original version. |
||
119 | A good place to find additional mission might be the Descent mission Database: |
||
120 | https://www.dxx-rebirth.com/descent-mission-database/ |
||
121 | |||
122 | Custom Music (MP3, OGG, AIF, etc.): |
||
123 | ----------------------------------- |
||
124 | Custom Music can be played via the JUKEBOX options by specifying it in the Sound Options menu. |
||
125 | Please note that all custom music has to be in 44Khz format. Supported formats depend on the capabilities of SDL_mixer. |
||
126 | |||
127 | AddOn Packs: |
||
128 | ------------ |
||
129 | Custom AddOn packs will expand the game in many different ways. These are usually provided as ZIP or 7Z and can easily |
||
130 | be installed by putting them to where your game content resides (OS-dependent - see above). |
||
131 | NO EXTRACTION OR ADDITIONAL CONFIGURATION NEEDED. |
||
132 | You can find all official AddOns here: |
||
133 | https://www.dxx-rebirth.com/addons/ |
||
134 | |||
135 | |||
136 | Launching the program |
||
137 | ===================== |
||
138 | |||
139 | *NIX |
||
140 | ---- |
||
141 | After compiling and installing, the program can be launched with the command: d1x-rebirth |
||
142 | |||
143 | MacOS |
||
144 | ----- |
||
145 | Simply double-click "D1X-Rebirth". |
||
146 | |||
147 | Win32 |
||
148 | ----- |
||
149 | Doubleclick d1x-rebirth.exe |
||
150 | |||
151 | To see a full list of available command-line options append ‘-h’, ‘-?’ to the command or refer file |
||
152 | d1x.ini |
||
153 | |||
154 | |||
155 | Appendix |
||
156 | ======== |
||
157 | http://DXX-Rebirth.com |