2017-02-19 00:15:42 +00:00
// The Wastes' config.h
2018-11-10 09:42:01 +00:00
// We support both GL and Vulkan.
// I want to get this mostly running on all systems post 2000.
2017-02-19 00:15:42 +00:00
//general rebranding
# define DISTRIBUTION "VTW"
# define DISTRIBUTIONLONG "Vera Visions"
# define FULLENGINENAME "The Wastes"
2018-06-21 13:14:53 +00:00
# define ENGINEWEBSITE "https: //www.vera-visions.com/"
2017-02-19 00:15:42 +00:00
# define BRANDING_ICON "wastes.ico"
//filesystem rebranding
# define GAME_SHORTNAME "wastes" //short alphanumeric description
# define GAME_FULLNAME FULLENGINENAME //full name of the game we're playing
# define GAME_BASEGAMES GAME_SHORTNAME //comma-separate list of basegame strings to use
2018-08-02 20:08:37 +00:00
# define GAME_PROTOCOL "FTE-TW" //so other games won't show up in the server browser
# define GAME_DEFAULTPORT 23000 // This is our port. Don't mess with it or use it for any custom games
2017-02-19 00:15:42 +00:00
//#define GAME_IDENTIFYINGFILES NULL //with multiple games, this string-list gives verification that the basedir is actually valid. if null, will just be assumed correct.
//#define GAME_DOWNLOADSURL NULL //url for the package manger to update from
//#define GAME_DEFAULTCMDS NULL //a string containing the things you want to
2018-06-05 23:55:32 +00:00
// All my fault -eukara
2018-06-08 10:02:21 +00:00
# define ENGINE_ROUTING
2018-11-30 04:05:48 +00:00
# undef USE_INTERNAL_BULLET
2018-11-10 09:42:01 +00:00
# define MENU_NATIVECODE // Will make a debut eventually, hopefully
2018-08-02 20:08:37 +00:00
2017-02-19 00:15:42 +00:00
// What do we use
2018-08-02 20:08:37 +00:00
# ifndef GLQUAKE
# define GLQUAKE
# endif
# ifndef VKQUAKE
# define VKQUAKE
2018-01-23 03:00:45 +00:00
# endif
2018-08-02 20:08:37 +00:00
2018-11-10 09:42:01 +00:00
# define PLUGINS //support for external plugins (like huds or fancy menus or whatever)
2017-06-15 14:23:26 +00:00
# define HAVE_PACKET
2017-02-19 00:15:42 +00:00
# define QUAKETC
# define AVAIL_OPENAL
# define AVAIL_ZLIB
# define AVAIL_OGGVORBIS
2018-11-20 01:04:32 +00:00
# define IMAGEFMT_PCX
2017-02-19 00:15:42 +00:00
# define NOMEDIA
# define CL_MASTER
# define CSQC_DAT
# define MENU_DAT
# define PSET_SCRIPT
# define VOICECHAT
2018-08-02 20:08:37 +00:00
# define RTLIGHTS
2017-02-19 00:15:42 +00:00
# ifndef MULTITHREAD
# define MULTITHREAD //misc basic multithreading - dsound, downloads, basic stuff that's unlikely to have race conditions.
# endif
2018-10-13 19:46:33 +00:00
# define LOADERTHREAD // worker threads for loading misc stuff. falls back on main thread if not supported.
# define USEAREAGRID // world collision optimisation
2018-08-02 20:08:37 +00:00
# define USERBE
2018-10-13 19:46:33 +00:00
# define IMAGEFMT_DDS // .dds files embed mipmaps and texture compression. faster to load.
2018-08-02 20:08:37 +00:00
# define DECOMPRESS_ETC2
# define DECOMPRESS_RGTC
# define DECOMPRESS_S3TC
2018-11-10 09:42:01 +00:00
# define USE_VORBISFILE
2017-02-19 00:15:42 +00:00
# define NOBUILTINMENUS
2018-08-02 20:08:37 +00:00
# define NOLEGACY //just spike trying to kill off crappy crap...
2017-02-19 00:15:42 +00:00
# define AVAIL_DINPUT
2018-11-10 09:42:01 +00:00
2017-02-19 00:15:42 +00:00
# ifndef DEBUG
2018-08-02 20:08:37 +00:00
# define NOQCDESCRIPTIONS 2 //if 2, disables writing fteextensions.qc completely.
2017-02-19 00:15:42 +00:00
# endif
2018-06-08 10:02:21 +00:00
// Various package formats
2017-02-21 20:22:07 +00:00
# define PACKAGE_PK3
2018-11-10 09:42:01 +00:00
# define PACKAGE_TEXWAD // HL content support, WAD3
# define PACKAGE_Q1PAK // HL content support, PAK
2018-06-08 10:02:21 +00:00
# undef PACKAGE_DOOMWAD
2018-11-27 16:48:19 +00:00
# undef PACKAGE_VPK //legacy crap
2017-02-21 20:22:07 +00:00
2018-06-08 10:02:21 +00:00
// Map formats
2018-11-10 09:42:01 +00:00
# define Q3BSPS // What we use exclusively
2018-08-02 20:08:37 +00:00
# define Q1BSPS // HL content support
2017-02-19 00:15:42 +00:00
# undef Q2BSPS
2018-06-08 10:02:21 +00:00
# undef RFBSPS
2018-11-20 01:04:32 +00:00
# define TERRAIN
2017-02-19 00:15:42 +00:00
# undef DOOMWADS
# undef MAP_PROC
2018-06-08 10:02:21 +00:00
// Model formats
2017-02-19 00:15:42 +00:00
# define INTERQUAKEMODELS
2018-08-02 20:08:37 +00:00
# define HALFLIFEMODELS // HL content support
2017-02-19 00:15:42 +00:00
# undef SPRMODELS
# undef SP2MODELS
2018-03-24 04:02:09 +00:00
# undef DSPMODELS
2017-02-19 00:15:42 +00:00
# undef MD1MODELS
# undef MD2MODELS
# undef MD3MODELS
# undef MD5MODELS
# undef ZYMOTICMODELS
# undef DPMMODELS
# undef PSKMODELS
// What do we NOT want to use
2018-11-10 09:42:01 +00:00
# undef MVD_RECORDING //server can record MVDs.
2018-08-02 20:08:37 +00:00
# undef D3D9QUAKE
# undef D3D11QUAKE
# undef D3D8QUAKE
2017-02-19 00:15:42 +00:00
# undef AVAIL_WASAPI //windows advanced sound api
2018-03-31 19:47:03 +00:00
# undef AVAIL_DSOUND
2018-06-05 23:55:32 +00:00
# undef BOTLIB_STATIC //q3 botlib
2017-02-19 00:15:42 +00:00
# undef AVAIL_XZDEC //.xz decompression
2018-11-10 09:42:01 +00:00
# undef AVAIL_SPEEX //.xz decompression
2017-02-19 00:15:42 +00:00
# undef AVAIL_GZDEC //.gz decompression
2018-03-24 04:02:09 +00:00
# undef AVAIL_DZIP //.dzip special-case archive support
2017-02-19 00:15:42 +00:00
# undef AVAIL_PNGLIB //.png image format support (read+screenshots)
# undef AVAIL_JPEGLIB //.jpeg image format support (read+screenshots)
2017-02-21 20:22:07 +00:00
# undef AVAIL_MP3_ACM //.mp3 support (in windows).
2018-03-24 04:02:09 +00:00
# undef IMAGEFMT_KTX
# undef IMAGEFMT_PKM
2017-02-19 00:15:42 +00:00
# undef IMAGEFMT_BLP //legacy crap
2018-11-27 16:48:19 +00:00
# undef IMAGEFMT_VTF //legacy crap
2018-11-20 01:04:32 +00:00
# define IMAGEFMT_BMP //legacy crap
//#undef IMAGEFMT_PCX //legacy crap
2017-02-19 00:15:42 +00:00
# undef NETPREPARSE //allows for running both nq+qw on the same server (if not, protocol used must match gamecode).
# undef USE_SQLITE //sql-database-as-file support
# undef QUAKESTATS //defines STAT_HEALTH etc. if omitted, you'll need to provide that functionality yourself.
# undef QUAKEHUD //support for drawing the vanilla hud.
2018-03-04 14:41:16 +00:00
# undef QWSKINS //disabling this means no qw .pcx skins nor enemy/team skin/colour forcing
2017-02-19 00:15:42 +00:00
# undef SVRANKING //legacy server-side ranking system.
# undef RAGDOLL //ragdoll support. requires RBE support.
# undef HUFFNETWORK //crappy network compression. probably needs reseeding.
# undef SVCHAT //ancient lame builtin to support NPC-style chat...
# undef VM_Q1 //q1qvm implementation, to support ktx.
# undef Q2SERVER //q2 server+gamecode.
# undef Q2CLIENT //q2 client. file formats enabled separately.
# undef Q3CLIENT //q3 client stuff.
# undef Q3SERVER //q3 server stuff.
# undef HEXEN2 //runs hexen2 gamecode, supports hexen2 file formats.
# undef NQPROT //act as an nq client/server, with nq gamecode.
# undef WEBSERVER //sv_ftp + sv_http cvars.
# undef WEBCLIENT //uri_get+any internal downloads etc
# undef RUNTIMELIGHTING //automatic generation of .lit files
# undef R_XFLIP //old silly thing
# undef TEXTEDITOR //my funky text editor! its awesome!
# undef TCPCONNECT //support for playing over tcp sockets, instead of just udp. compatible with qizmo.
# undef IRCCONNECT //lame support for routing game packets via irc server. not a good idea.
# undef SUPPORT_ICE //Internet Connectivity Establishment, for use by plugins to establish voice or game connections.
# undef PSET_CLASSIC //support the 'classic' particle system, for that classic quake feel.
2017-02-21 20:22:07 +00:00
# undef HAVE_CDPLAYER //includes cd playback. actual cds. named/numbered tracks are supported regardless (though you need to use the 'music' command to play them without this).
2018-03-24 04:02:09 +00:00
# undef QTERM
# undef SIDEVIEWS
2018-03-25 09:36:14 +00:00
# undef MAX_SPLITS
2018-03-24 04:02:09 +00:00
# undef SUBSERVERS
# undef SV_MASTER
# undef HAVE_MIXER //openal only
# undef VM_LUA
# undef HLCLIENT
# undef HLSERVER
# undef FTPSERVER
//undef CLIENTONLY //leave this up to the makefiles.
# undef HAVE_TCP
# undef HAVE_GNUTLS //linux tls/dtls support
# undef HAVE_WINSSPI //windows tls/dtls support
2017-02-21 20:22:07 +00:00
# undef HAVE_JUKEBOX //includes built-in jukebox crap
# undef HAVE_MEDIA_DECODER //can play cin/roq, more with plugins
# undef HAVE_MEDIA_ENCODER //capture/capturedemo work.
# undef HAVE_SPEECHTOTEXT //windows speech-to-text thing
2018-08-04 07:05:20 +00:00
//#define SAVEDGAMES //Can save the game.
# undef PACKAGEMANAGER //Allows the user to enable/disable/download packages and plugins.
2018-11-10 09:42:01 +00:00
# undef HEADLESSQUAKE
# undef WAYLANDQUAKE
# undef AVAIL_FREETYPE // for truetype font rendering
2018-11-27 16:48:19 +00:00
# undef SERVER_DEMO_PLAYBACK //outdated crap
2017-02-19 00:15:42 +00:00
# ifdef COMPILE_OPTS
//things to configure qclib, which annoyingly doesn't include this file itself
- DOMIT_QCC //disable the built-in qcc
- DSIMPLE_QCVM //disable qc debugging and 32bit opcodes
# ifndef AVAIL_ZLIB
- DNO_ZLIB //disable zlib
# endif
2018-07-05 16:21:44 +00:00
# ifdef USE_INTERNAL_BULLET //makefile will respond to this by trying to link bullet into the engine itself, instead of as a plugin.
- DLINK_INTERNAL_BULLET
# endif
2017-02-19 00:15:42 +00:00
- DNO_SPEEX //disable static speex
2018-06-05 23:55:32 +00:00
# ifndef BOTLIB_STATIC
2017-02-19 00:15:42 +00:00
- DNO_BOTLIB //disable static botlib
# endif
2018-11-10 09:42:01 +00:00
- DLIBVORBISFILE_STATIC
//-Os //optimise for size instead of speed. less cpu cache needed means that its sometimes faster anyway.
2017-02-19 00:15:42 +00:00
# endif