SkillAgentSearch skills...

Openpromode

Quake 3 mod, adds cpma-style physics, some quakelive features

Install / Use

/learn @jangroothuijse/Openpromode
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

This is mod/fork of the the following:

               ,---------------------------------------.
               |   _                     _       ____  |
               |  (_)___  __ _ _  _ __ _| |_____|__ /  |
               |  | / _ \/ _` | || / _` | / / -_)|_ \  |
               |  |_\___/\__, |\_,_\__,_|_\_\___|___/  |
               |            |_|                        |
               |                                       |
               `---------- http://ioquake3.org --------'

The intent of this project is to provide a baseline Quake 3 which may be used for further development and baseq3 fun. Some of the major features currently implemented are:

  • SDL backend
  • OpenAL sound API support (multiple speaker support and better sound quality)
  • Full x86_64 support on Linux
  • VoIP support, both in-game and external support through Mumble.
  • MinGW compilation support on Windows and cross compilation support on Linux
  • AVI video capture of demos
  • Much improved console autocompletion
  • Persistent console history
  • Colorized terminal output
  • Optional Ogg Vorbis support
  • Much improved QVM tools
  • Support for various esoteric operating systems
  • cl_guid support
  • HTTP/FTP download redirection (using cURL)
  • Multiuser support on Windows systems (user specific game data is stored in "%APPDATA%\Quake3")
  • PNG support
  • Many, many bug fixes

The map editor and associated compiling tools are not included. We suggest you use a modern copy from http://icculus.org/gtkradiant/.

The original id software readme that accompanied the Q3 source release has been renamed to id-readme.txt so as to prevent confusion. Please refer to the web-site for updated status.

Compilation and installation

For *nix

  1. Change to the directory containing this readme.
  2. Run 'make'.

For Windows,

  1. Please refer to the excellent instructions here: http://wiki.ioquake3.org/Building_ioquake3

For Mac OS X, building a Universal Binary

  1. Install MacOSX SDK packages from XCode. For maximum compatibility, install MacOSX10.4u.sdk and MacOSX10.3.9.sdk, and MacOSX10.2.8.sdk.
  2. Change to the directory containing this README file.
  3. Run './make-macosx-ub.sh'
  4. Copy the resulting ioquake3.app in /build/release-darwin-ub to your /Applications/ioquake3 folder.

Installation, for *nix

  1. Set the COPYDIR variable in the shell to be where you installed Quake 3 to. By default it will be /usr/local/games/quake3 if you haven't set it. This is the path as used by the original Linux Q3 installer and subsequent point releases.
  2. Run 'make copyfiles'.

It is also possible to cross compile for Windows under *nix using MinGW. Your distribution may have mingw32 packages available. On debian/Ubuntu, you need to install 'mingw-w64'. Thereafter cross compiling is simply a case running 'PLATFORM=mingw32 ARCH=x86 make' in place of 'make'. ARCH may also be set to x86_64.

The following variables may be set, either on the command line or in Makefile.local:

  CFLAGS             - use this for custom CFLAGS
  V                  - set to show cc command line when building
  DEFAULT_BASEDIR    - extra path to search for baseq3 and such
  BUILD_SERVER       - build the 'ioq3ded' server binary
  BUILD_CLIENT       - build the 'ioquake3' client binary
  BUILD_BASEGAME     - build the 'baseq3' binaries
  BUILD_MISSIONPACK  - build the 'missionpack' binaries
  BUILD_GAME_SO      - build the game shared libraries
  BUILD_GAME_QVM     - build the game qvms
  BUILD_STANDALONE   - build binaries suited for stand-alone games
  SERVERBIN          - rename 'ioq3ded' server binary
  CLIENTBIN          - rename 'ioquake3' client binary
  BASEGAME           - rename 'baseq3'
  BASEGAME_CFLAGS    - custom CFLAGS for basegame
  MISSIONPACK        - rename 'missionpack'
  MISSIONPACK_CFLAGS - custom CFLAGS for missionpack (default '-DMISSIONPACK')
  USE_OPENAL         - use OpenAL where available
  USE_OPENAL_DLOPEN  - link with OpenAL at runtime
  USE_CURL           - use libcurl for http/ftp download support
  USE_CURL_DLOPEN    - link with libcurl at runtime
  USE_CODEC_VORBIS   - enable Ogg Vorbis support
  USE_CODEC_OPUS     - enable Ogg Opus support
  USE_MUMBLE         - enable Mumble support
  USE_VOIP           - enable built-in VoIP support
  USE_INTERNAL_SPEEX - build internal speex library instead of dynamically
                       linking against system libspeex
  USE_FREETYPE       - enable FreeType support for rendering fonts
  USE_INTERNAL_ZLIB  - build and link against internal zlib
  USE_INTERNAL_JPEG  - build and link against internal JPEG library
  USE_INTERNAL_OGG   - build and link against internal ogg library
  USE_INTERNAL_OPUS  - build and link against internal opus/opusfile libraries
  USE_LOCAL_HEADERS  - use headers local to ioq3 instead of system ones
  DEBUG_CFLAGS       - C compiler flags to use for building debug version
  COPYDIR            - the target installation directory
  TEMPDIR            - specify user defined directory for temp files

The defaults for these variables differ depending on the target platform.

Console

New cvars

  cl_autoRecordDemo                 - record a new demo on each map change
  cl_aviFrameRate                   - the framerate to use when capturing video
  cl_aviMotionJpeg                  - use the mjpeg codec when capturing video
  cl_guidServerUniq                 - makes cl_guid unique for each server
  cl_cURLLib                        - filename of cURL library to load
  cl_consoleKeys                    - space delimited list of key names or
                                      characters that toggle the console
  cl_mouseAccelStyle                - Set to 1 for QuakeLive mouse acceleration
                                      behaviour, 0 for standard q3
  cl_mouseAccelOffset               - Tuning the acceleration curve, see below

  in_joystickUseAnalog              - Do not translate joystick axis events
                                      to keyboard commands

  j_forward                         - Joystick analogue to m_forward,
                                      for forward movement speed/direction.
  j_side                            - Joystick analogue to m_side,
                                      for side movement speed/direction.
  j_up                              - Joystick up movement speed/direction.
  j_pitch                           - Joystick analogue to m_pitch,
                                      for pitch rotation speed/direction.
  j_yaw                             - Joystick analogue to m_yaw,
                                      for yaw rotation speed/direction.
  j_forward_axis                    - Selects which joystick axis
                                      controls forward/back.
  j_side_axis                       - Selects which joystick axis
                                      controls left/right.
  j_up_axis                         - Selects which joystick axis
                                      controls up/down.
  j_pitch_axis                      - Selects which joystick axis
                                      controls pitch.
  j_yaw_axis                        - Selects which joystick axis
                                      controls yaw.

  s_useOpenAL                       - use the OpenAL sound backend if available
  s_alPrecache                      - cache OpenAL sounds before use
  s_alGain                          - the value of AL_GAIN for each source
  s_alSources                       - the total number of sources (memory) to
                                      allocate
  s_alDopplerFactor                 - the value passed to alDopplerFactor
  s_alDopplerSpeed                  - the value passed to alDopplerVelocity
  s_alMinDistance                   - the value of AL_REFERENCE_DISTANCE for
                                      each source
  s_alMaxDistance                   - the maximum distance before sounds start
                                      to become inaudible.
  s_alRolloff                       - the value of AL_ROLLOFF_FACTOR for each
                                      source
  s_alGraceDistance                 - after having passed MaxDistance, length
                                      until sounds are completely inaudible
  s_alDriver                        - which OpenAL library to use
  s_alDevice                        - which OpenAL device to use
  s_alAvailableDevices              - list of available OpenAL devices
  s_alInputDevice                   - which OpenAL input device to use
  s_alAvailableInputDevices         - list of available OpenAL input devices
  s_sdlBits                         - SDL bit resolution
  s_sdlSpeed                        - SDL sample rate
  s_sdlChannels                     - SDL number of channels
  s_sdlDevSamps                     - SDL DMA buffer size override
  s_sdlMixSamps                     - SDL mix buffer size override
  s_backend                         - read only, indicates the current sound
                                      backend
  s_muteWhenMinimized               - mute sound when minimized
  s_muteWhenUnfocused               - mute sound when window is unfocused
  sv_dlRate                         - bandwidth allotted to PK3 file downloads
                                      via UDP, in kbyte/s

  com_ansiColor                     - enable use of ANSI escape codes in the tty
  com_altivec                       - enable use of altivec on PowerPC systems
  com_standalone (read only)        - If set to 1, quake3 is running in
                                      standalone mode
  com_basegame                      - Use a different base than baseq3. If no
                                      original Quake3 or TeamArena pak files
                                      are found, this will enable running in
View on GitHub
GitHub Stars10
CategoryDevelopment
Updated6mo ago
Forks2

Languages

C

Security Score

82/100

Audited on Sep 15, 2025

No findings