mirror of
https://github.com/UberGames/ioef.git
synced 2024-11-24 13:11:30 +00:00
93 lines
3.6 KiB
Text
93 lines
3.6 KiB
Text
Name of this project: icculus.org/quake3
|
|
URL: http://www.icculus.org/quake3
|
|
Hello and welcome to the Quake 3 source repository on icculus.org
|
|
I'll be your maintainer, zakk@icculus.org, please send all your patches to
|
|
the bugzilla: https://bugzilla.icculus.org, or join the mailing list
|
|
(quake3-subscribe@icculus.org) and submit your patch there.
|
|
If you're too lazy for either method, then I would rather
|
|
you e-mailed your patches to me directly than not at all.
|
|
|
|
The intent of this is to give people a baseline Quake 3.
|
|
Bug fixes, SDL port, OpenAL, security, etc.
|
|
Extra graphics and sound will be accepted as long as they are entirely
|
|
optional and off by default.
|
|
|
|
The map editor isn't included, get a modern copy from here:
|
|
http://www.qeradiant.com/
|
|
|
|
The id software readme has been renamed to id-readme.txt
|
|
so as to prevent confusion.
|
|
|
|
Refer to the web-site for updated status, enjoy!
|
|
|
|
Compiling
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
cd code/unix && make
|
|
|
|
Installing under Linux
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
In code/unix edit the Makefile's COPYDIR variable to be where you installed
|
|
quake 3 to. By default it will be set to /usr/local/games/quake3 if you
|
|
haven't set it.
|
|
|
|
Then run "make copyfiles", beware that this will overwrite any binaries
|
|
installed previously, even id ones.
|
|
|
|
Using shared libraries instead of qvm
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
To make quake3 prefer shared libraries instead of qvm run it with
|
|
the following parameters:
|
|
+set sv_pure 0 +set vm_cgame 0 +set vm_game 0 +set vm_ui 0
|
|
|
|
Using Demo Data Files
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
you only need demoq3/pak0.pk3 from the demo installer. The qvm files inside
|
|
pak0.pk3 will not work, you have to use the native shared libraries from this
|
|
project. To do so copy or link ui*.so, qagame*.so, cgame*.so from baseq3 to
|
|
demoq3 and run quake3 with the parameters described above.
|
|
|
|
64bit mods
|
|
~~~~~~~~~~
|
|
To compile working(!) shared libraries for 64bit mods the vmMain and
|
|
dllEntry functions as well as the syscall pointer have to be changed
|
|
to accept and return long instead of int.
|
|
|
|
Compiling under windows using MinGW
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
It is possible to compile ioQ3 using the MinGW (Minimalist GNU for Windows)
|
|
toolset. It's a little more involved than compiling for linux; steps are as
|
|
follows:
|
|
|
|
1. Download and install MinGW and MSys from http://www.mingw.org/.
|
|
2. Download and install the DirectX 9 SDK from
|
|
http://msdn.microsoft.com/directx/. Previous versions of the SDK will
|
|
probably work, but they have not been tested.
|
|
3. Find the following in DXSDK/Include/dinput.h...
|
|
|
|
} DIDEVICEINSTANCEW, *LPDIDEVICEINSTANCEW;
|
|
#ifdef UNICODE
|
|
typedef DIDEVICEINSTANCEW DIDEVICEINSTANCE;
|
|
typedef LPDIDEVICEINSTANCEW LPDIDEVICEINSTANCE;
|
|
#else
|
|
typedef DIDEVICEINSTANCEA DIDEVICEINSTANCE;
|
|
typedef LPDIDEVICEINSTANCEA LPDIDEVICEINSTANCE;
|
|
#endif // UNICODE
|
|
|
|
typedef const DIDEVICEINSTANCEA *LPCDIDEVICEINSTANCEA;
|
|
typedef const DIDEVICEINSTANCEW *LPCDIDEVICEINSTANCEW;
|
|
> #ifdef UNICODE
|
|
> typedef DIDEVICEINSTANCEW DIDEVICEINSTANCE;
|
|
> typedef LPCDIDEVICEINSTANCEW LPCDIDEVICEINSTANCE;
|
|
> #else
|
|
> typedef DIDEVICEINSTANCEA DIDEVICEINSTANCE;
|
|
> typedef LPCDIDEVICEINSTANCEA LPCDIDEVICEINSTANCE;
|
|
> #endif // UNICODE
|
|
typedef const DIDEVICEINSTANCE *LPCDIDEVICEINSTANCE;
|
|
|
|
...and comment out/remove the duplicated code (go Microsoft!) marked by '>'.
|
|
|
|
4. If you didn't install the DirectX SDK in C:\DXSDK\, edit DXSDK_DIR in
|
|
code/unix/Makefile to reflect the new location.
|
|
5. Perform the usual precompilation sacrificial ritual.
|
|
6. Open an MSys terminal, and follow the instructions for compiling on Linux.
|