Commit graph

1692 commits

Author SHA1 Message Date
Thilo Schulz
c9fc250532 Incorrect number of overbright bits printed by GfxInfo_f() (#5510) - fix by Serge Belyshev 2012-07-01 16:59:20 +00:00
Thilo Schulz
ca44693f34 More intelligent exponentiation in strtod/strtol (#5487) - patch by Ben Millwood 2012-07-01 16:43:28 +00:00
Thilo Schulz
a3c7003d9c prevent using getinfo as an amplifier for DDOS attacks (#5678). Patch by DevHC 2012-07-01 14:18:31 +00:00
Zack Middleton
b340c9d835 Fixed fatal error ("OP_BLOCK_COPY out of range!") when using qvms on Mac OS X powerpc (see r2031 and r2034). 2012-06-29 18:35:55 +00:00
Zack Middleton
3b09685b42 - Have NET_Sleep work with Windows' INVALID_SOCKET again...
- Use SOCKET_ERROR in NET_Sleep.
2012-06-19 22:36:54 +00:00
Zack Middleton
725c9df608 #5672 - Fixed incorrect type usage in NET_Sleep(), patch from Özkan Sezer. 2012-06-19 16:12:16 +00:00
Zack Middleton
68b3b0922b static-ize inline functions for Clang/LLVM
From /dev/humancontroller.
2012-06-19 15:56:21 +00:00
Zack Middleton
afa607c3b6 Added kicknum, kickall, and kickbots commands, patch by Ensiform. 2012-06-19 15:52:08 +00:00
Zack Middleton
945f01d4af more '\n' business
From /dev/humancontroller.
2012-06-19 15:14:57 +00:00
Zack Middleton
4cfbbe506c when interacting with QVMs, Clang/LLVM requires the standard use of the va_*() macros instead of (fast) call hacks
From /dev/humancontroller.
2012-06-19 14:57:51 +00:00
Zack Middleton
64c26ec338 fix a WRONG size argument to a memset() call found by Clang/LLVM
From /dev/humancontroller.
2012-06-19 14:53:40 +00:00
Zack Middleton
2db73231eb remove a bunch of superfluous formatting calls
From /dev/humancontroller.
2012-06-19 14:52:22 +00:00
Zack Middleton
20c6d1e33f rename trap_Printf() to trap_Print() in the game module, as that function has nothing to do with printf()-like formatting
From /dev/humancontroller.
2012-06-19 14:51:02 +00:00
Zack Middleton
6067cadc72 Removed 0xAD character, from /dev/humancontroller. 2012-06-19 14:47:30 +00:00
Zack Middleton
2a4f775d6c Fixed comment in server.h (ent->v.absmax to ent->r.absmax). 2012-06-18 22:25:35 +00:00
Zack Middleton
cd3654a21f Only have bots issue vtaunt commands in Team Arena. 2012-06-18 20:11:09 +00:00
Zack Middleton
f40042113a Let's actually use MOD_CHAINGUN! From Ensiform. 2012-06-18 17:12:35 +00:00
Zack Middleton
56a918b9ac Made more code for Team Arena be inside ifdef MISSIONPACK, from Ensiform. 2012-06-18 17:09:33 +00:00
Zack Middleton
a375f898f5 REFACTOR [anough to enough] 2012-06-18 16:39:58 +00:00
Zack Middleton
2579738256 Removed unneeded va() and use CG_Error instead of trap_Error in cgame. Found by Ensiform. 2012-06-18 16:36:21 +00:00
Zack Middleton
1d70ffc9b2 fix the usage description of the clientkick server command (also rename SV_KickNum_f() to SV_ClientKick_f())
found by Ensiform
2012-06-18 16:33:13 +00:00
Zack Middleton
ad5c5c32a6 REFACTOR [reletive -> relative]
From /dev/humancontroller.
2012-06-18 16:32:03 +00:00
Zack Middleton
f3e7012bdb REFACTOR [a vs an]
From /dev/humancontroller.
2012-06-18 16:31:16 +00:00
Zack Middleton
4bd24d3182 never set groundEntityNum to -1, use ENTITYNUM_NONE instead
From /dev/humancontroller.
2012-06-18 16:28:39 +00:00
Zack Middleton
7f9a04fd80 REFACTOR
From /dev/humancontroller.
2012-06-18 16:27:00 +00:00
Zack Middleton
997615168a fix some typos
From /dev/humancontroller.
2012-06-18 16:25:13 +00:00
Zack Middleton
ad8d3dc567 remove a bunch of unused stuff from game
From /dev/humancontroller.
2012-06-18 16:23:43 +00:00
Zack Middleton
af90948182 bring some freeish()ing operations ahead from after Errorish() calls
From /dev/humancontroller.
2012-06-18 16:17:39 +00:00
Zack Middleton
a4c61d874d add a missing '\n', remove some unwanted ones
From /dev/humancontroller.
2012-06-18 16:16:57 +00:00
Zack Middleton
c3ca5c1caa non-missionpack build throws up a few "0" plums
found by Ensiform
2012-06-18 16:14:48 +00:00
Zack Middleton
2834a58600 add missing commands to autocompletition
found by Ensiform
2012-06-18 16:11:35 +00:00
Zack Middleton
62f7fab62e add the "execq" command, a more quiet version of the "exec" command
in exec/execq, always print the extension for the filename

From /dev/humancontroller.
2012-06-18 16:09:14 +00:00
Zack Middleton
6ff3b03376 fix IPv6-only operation of Windows binaries
the SOCKET type is unsigned on Windows, and should be casted to an int before comparing with the highestfd variable (note: ``int highestfd = -1;'')

From /dev/humancontroller.
2012-06-18 16:05:47 +00:00
Zack Middleton
c16338cfa9 fix wrong socket ID comparison, from /dev/humancontroller 2012-06-18 16:03:06 +00:00
Zack Middleton
2131536d07 Call sound files 'audio' not 'wav' in debug messages. 2012-06-18 16:00:38 +00:00
Zack Middleton
a17dafc5e7 Cleaned up game server command usage messages. 2012-06-18 15:58:48 +00:00
Zachary Slater
b5acc31a4d CVE-2012-3345 2012-06-14 18:28:58 +00:00
Zack Middleton
fb1f629bbc Removed unnessicary "!!". 2012-06-01 19:49:07 +00:00
Zack Middleton
22ecd68cf2 In CheckTeamLeader, make sure to only set one client as team leader. Reported by Tobias Kuehnhammer. 2012-05-20 21:22:11 +00:00
Zack Middleton
5abf7e3d84 #5503 - SIGSEGV with r_vertexlight 1 in missionpack (patch by Serge Belyshev). 2012-05-07 23:06:00 +00:00
Zack Middleton
2c5d0c1e3a Fixed two issues pointed out in a PVS-Studio static code analyzer article (bug #5505). 2012-05-07 22:47:19 +00:00
Zack Middleton
c211114cb0 #5462 - do not require clients to have a matching qagame.qvm (adapted from OpenArena) 2012-05-07 22:26:03 +00:00
Thilo Schulz
d2b035eb73 Fix (#5312) introduced by rev 2103 2012-05-04 15:59:52 +00:00
Ryan C. Gordon
f3a61afd09 Minor hack to SDL headers for building on Linux. 2012-04-11 04:51:58 +00:00
Zachary Slater
a07b8587f1 updating SDL includes to 1.2.15
Listen to this if this doesn't work out properly:
http://timedoctor.org/fun/swf/starwars/tauntaun-soundboard.swf
2012-04-10 06:44:04 +00:00
Zachary Slater
3a98b67e01 updating mac SDL stuff to 1.2.15 2012-04-10 06:01:16 +00:00
Zack Middleton
1db2124a65 Moved dpi variable inside BUILD_FREETYPE ifdef. 2012-04-07 16:34:21 +00:00
Zack Middleton
a55a059abc Fixed some issues found using clang static analyzer. 2012-04-07 02:53:42 +00:00
Zack Middleton
ce3ec3ceef #5453 - Tell command for server. 2012-04-05 22:43:32 +00:00
Zack Middleton
395225cb7e #5439 - Potential memory leak in host name resolution. (Eugene C.) 2012-04-05 21:29:51 +00:00
Zack Middleton
88020d5fb8 #5485 - Use Sys_LoadDll to search in the local directory for the fallback default renderer. Patch by Harley Laue. 2012-04-04 17:21:17 +00:00
Zack Middleton
021ce233b2 #5484 - Remove unneeded tr_local.h include from sdl_input.c. Patch by Harley Laue. 2012-04-04 17:16:11 +00:00
Zack Middleton
b211b35853 Use FreeType include macros instead of filenames directly (per the API docs), patch by Radegast. 2012-04-02 17:23:46 +00:00
Zack Middleton
de1360f268 Fixed up warning messages in tr_font.c 2012-03-29 06:35:33 +00:00
Zack Middleton
c8e790e4af Use tabs in tr_font.c 2012-03-29 05:42:30 +00:00
Zack Middleton
5e9c7f5b37 Removed set but not used variable 'satLevels' from tr_font.c. 2012-03-29 05:31:18 +00:00
Zack Middleton
4b7a623cc0 Make sure font glyph shader names are null-terminated. 2012-03-29 05:28:09 +00:00
Zack Middleton
94fb80f021 Fixed possibly placing a font glyph (at the beginning of a row) past the bottom of a font cache image. 2012-03-29 05:15:46 +00:00
Zack Middleton
f15a3cca21 Fixed writing pre-rendered font TGAs, needed to flip image. 2012-03-29 04:49:36 +00:00
Zack Middleton
ea0102d403 - Added support for enabling FreeType Support (make USE_FREETYPE=1).
- Fixed compiling tr_font.c for dynamic renderer.
2012-03-29 04:05:13 +00:00
Zack Middleton
33d66c8034 Added range checks to j_*_axis cvars. 2012-02-15 18:47:50 +00:00
Zack Middleton
7a1efc19a4 Support up to 16 joystick axes, select which to use with j_*_axis cvars. 2012-02-15 18:26:08 +00:00
Zack Middleton
91fd58f6e4 Allow analog joystick up axis to be remapped too. 2012-02-15 18:09:24 +00:00
Zack Middleton
7d8b751afd Patches by symlink.
#5313 - EF_CONNECTION set on wrong eFlags
#5314 - snc drawn in nirvana instead at lagometer
2012-02-06 21:28:40 +00:00
Zack Middleton
c84377854a Unix clients can now enter commands from tty console. Patch by Rambetter with some edits by me. (#4799) 2012-02-06 21:05:57 +00:00
Thilo Schulz
3241ca6e7b Add the new ioquake3 master server as standard for sv_master2 2012-01-24 23:42:16 +00:00
Zack Middleton
5729c8c518 Changed three filename buffers to be MAX_QPATH (not MAX_QPATH*2), filename lengths are limited to MAX_QPATH by engine and elsewhere in game logic. 2012-01-17 23:06:06 +00:00
Zack Middleton
73744a84c6 Fixed UI to use MAX_QPATH for skin filename buffer length. 2012-01-17 22:38:49 +00:00
Zachary Slater
89f7863254 bugzilla bug #5273
exploit resolved, we're now disallowing forwardmove of -128 and vice versa

Thanks, devhc!
2011-12-25 09:07:36 +00:00
Thilo Schulz
dfd3245c38 Fix build for new modular renderer on MacOSX 2011-12-15 21:12:38 +00:00
Zack Middleton
34b22e9119 Reverted r2209... 2011-12-08 23:34:51 +00:00
Zack Middleton
93d1d0f83e Show warning when renderer cannot load model after checking all supported formats, instead of after each format. 2011-12-08 23:17:37 +00:00
Zack Middleton
2fbf9d9006 Removed unused functoin Hunk_Trash. 2011-12-08 22:54:45 +00:00
Zack Middleton
a5c88d0e0d Removed an unused variable (which wasn't compiled in as _DEBUG isn't defined using make). 2011-12-08 22:53:58 +00:00
Zack Middleton
7b2f842053 Show file/line/label in Com_Error messages when run out of memory in debug build. 2011-12-08 22:25:25 +00:00
Zack Middleton
5c1ddf4020 Enable zone and hunk debug in debug build. 2011-12-08 22:24:48 +00:00
Zack Middleton
943d94bf0b Use GENTITYNUM_BITS for jumppad_ent bits. 2011-12-03 20:27:18 +00:00
Thilo Schulz
66820c79f4 Fix net_restart when networking was temporarily disabled 2011-12-03 02:23:38 +00:00
Zack Middleton
fe64955c0c Removed duplicate setting of contents for trigger_hurt. 2011-11-28 17:36:58 +00:00
Zack Middleton
88e9d66633 Disable blood on HUD when com_blood is 0. 2011-11-18 21:36:59 +00:00
Thilo Schulz
3ecd92ed91 Add color combination green-magenta for anaglyph 2011-11-18 12:47:42 +00:00
Zack Middleton
fd0d156338 Added missing newlines to game dedicated chat messages. 2011-11-10 04:49:07 +00:00
Zack Middleton
0724458818 Fixed usage of various entity defines. 2011-11-05 01:02:35 +00:00
Zack Middleton
4e59ef714b Print developer message when renderer runs out of free entities. 2011-11-05 00:56:26 +00:00
Zack Middleton
b648d6f17b Client no longer tries to run UI_SHUTDOWN on ui vms with an unsupported API version. 2011-11-03 03:52:46 +00:00
Thilo Schulz
6283e552d4 My bad. Revert the FPU control word to old value instead of the new one of course. Thanks to marky for reporting this 2011-10-28 21:54:06 +00:00
Zack Middleton
9064a13409 Fixed showing number of qvm jump table targets (r2180 caused it to show 0 on alloc). 2011-10-28 19:43:43 +00:00
Tim Angus
4ccd548512 * I zigged when I should have zagged 2011-10-28 18:51:31 +00:00
Tim Angus
fd986dae06 * Fix various warnings with GCC and clang 2011-10-27 21:32:28 +00:00
Tim Angus
675e7a641a * clang support 2011-10-21 22:48:53 +00:00
Thilo Schulz
f9cde509b2 [18:48:20] <Ensiform> Thilo: http://pastebin.com/2UUmSCQK fixes point contents on the server side related to the cg fix with moving water. Dunno why s.origin and s.angles was ever used, the rest of sv_world.c always uses r.currentOrigin and r.currentAngles
[18:58:10] <Thilo> mhm
[18:58:15] <Thilo> Ensiform: it doesnt break anything?
[18:59:20] <Ensiform> nah
2011-10-14 17:03:59 +00:00
Thilo Schulz
d4f8c4716d Force unload of running VMs when quitting through signal handler 2011-10-14 13:52:28 +00:00
Thilo Schulz
89d986a35b Fix a few string literals 2011-09-28 03:13:30 +00:00
Thilo Schulz
b93a88455a Allow interpreted VM on pure servers 2011-09-27 22:56:10 +00:00
Thilo Schulz
7eba074ce4 Allow VM_Restart to load unpure qagame.qvm so that local server won't crash after map_restart if server operator has qagame.qvm residing outside pak file (#5196)
Thanks to "rg3" for providing a shell account
2011-09-27 22:16:07 +00:00
Thilo Schulz
d176ebe84a Add some checks when reloading QVMs via VM_Restart() 2011-09-27 21:49:01 +00:00
Thilo Schulz
acc2da023c Throw error when making calls to empty VM 2011-09-27 21:17:21 +00:00
Thilo Schulz
8a500d71da Set default rounding mode to FE_NEAREST again. Thanks to Matthias Bentrup for providing some explanations. 2011-09-27 14:43:20 +00:00
Thilo Schulz
ebec84c55d Fix q3vm execution on x86/x86_64 MacOSX 2011-09-27 01:38:13 +00:00
Thilo Schulz
7a1f2bc92b Bug 5238 - cURL wrong use of curl_easy_setopt property, by Adrian Fuhrmann 2011-09-21 15:17:22 +00:00
Zack Middleton
3f79d04536 Center ioq3 credits vertically. 2011-09-20 03:39:23 +00:00
Zack Middleton
2943488927 Added option for selecting sound system (SDL or OpenAL) and option for setting SDL sound quality to q3_ui sound menu.
Sound settings must now be applied before they take affect (needed for sound system and SDL sound quality changes).
2011-09-20 03:29:22 +00:00
Thilo Schulz
af4607c026 Bug 5178 - Sound quality menu option has no effect 2011-09-19 22:38:51 +00:00
Thilo Schulz
bc3e989967 Bug 5199 - IQM joint matrices wrong, patch by James Canete 2011-09-19 22:15:24 +00:00
Thilo Schulz
9124d26afb Fix latest commit for x86 msvc 2011-09-19 21:57:15 +00:00
Thilo Schulz
c927fab58f Implement Mathias Benthrup's suggestion for x86 ASM snapvector implementation which reduces cache misses. 2011-09-19 18:30:24 +00:00
Thilo Schulz
98af5f4bb0 Fix missing return instruction for fpu ftol on msvc. Thanks to Ensiform for reporting. 2011-09-19 15:49:45 +00:00
Zack Middleton
beff4a3c47 Only include libmumblelink.h if USE_MUMBLE is defined, reported by Ensiform. 2011-09-19 02:15:46 +00:00
Zack Middleton
b14c6d581c Use correct variable for getting buffer length, reported by Ensiform. 2011-09-19 02:10:17 +00:00
Zack Middleton
2b50313c9a Use platform's path separator in FS_Path_f (for consistent output on Windows), reported by Ensiform. 2011-09-18 18:07:57 +00:00
Zack Middleton
0866b667e0 Fixed win32 dedicated server console output. It use to write input line and then write output over the top of it. Reported by Ensiform. 2011-09-12 20:14:36 +00:00
Zack Middleton
3774a8aeee Restored loading ".dat" journal files from disk when connect to pure servers. Accidentally broke in r1911, reported by Ensiform. 2011-09-12 14:54:01 +00:00
Zack Middleton
f7a20068ee Support vm syscalls with up to 15 args using 64 bit compiled vm (like interprated vms). 2011-09-09 21:54:14 +00:00
Zack Middleton
b7fa3e7073 Use EXEC_NOW instead of hardcoded 0 in cl_ui.c 2011-09-09 21:50:45 +00:00
Zack Middleton
72d00c568b Use BIGCHAR_WIDTH instead of hardcoded 16 in cl_scrn.c 2011-09-09 21:49:03 +00:00
Zack Middleton
22d6240fe2 Removed unused kbutton_t declarations in client.h 2011-09-09 21:48:38 +00:00
Zack Middleton
237b09f4ab Fixed some function name comments in cl_cin.c 2011-09-09 21:48:07 +00:00
Zack Middleton
4632d85553 Removed unused IN_ButtonDown and IN_ButtonUp functions. 2011-09-09 21:47:25 +00:00
Zack Middleton
4113f63a63 Changed the joystick axis to key remap to start at K_JOY17 (fits better with hat_keys and K_JOY16 is used by button). 2011-09-09 21:46:37 +00:00
Zack Middleton
d9b72dedc1 Require gamename if not supporting legacy protocol. 2011-09-07 19:38:19 +00:00
Zack Middleton
56f5fedee9 - Only need cl_cURLLib cvar if USE_CURL_DLOPEN is defined.
- Try to load libcurl-4.dll on win32 (it use to be included in the NSIS installer).
2011-08-29 13:57:46 +00:00
Thilo Schulz
de182882f1 Fix auto game-restart when disconnecting from a server that explicitly set fs_game to "baseq3" instead of "" 2011-08-24 14:47:57 +00:00
Zack Middleton
abe85940ae Disabled getting motd from update server in standalone build. 2011-08-22 20:30:45 +00:00
Zack Middleton
1469df546e Reverted r2145 per Timbo's suggestion. 2011-08-11 20:57:39 +00:00
Zack Middleton
1609d1c42b - Added r_mode -2 for using display resolution.
- Changed q3_ui's very high video settings use display resolution.
2011-08-11 05:14:42 +00:00
Zack Middleton
8e689739f4 Removed "Color Depth" from q3_ui system settings, it didn't control anything. 2011-08-11 03:57:23 +00:00
Thilo Schulz
a248451e66 Fix warning on MacOSX 2011-08-10 21:21:54 +00:00
Thilo Schulz
08acc75a1a - More MacOSX changes to Makefile
- Ship libSDL-1.2.0.dylib with x86_64 platform support
2011-08-10 21:14:17 +00:00
Thilo Schulz
99e157e066 - Add x86_64 platform for MacOSX
- Fix compilation on MacOSX gcc
2011-08-10 20:48:53 +00:00
Thilo Schulz
3b642f9032 Add hack to allow server the setting of game cvar values that are important for playerstate prediction for legacy gamecode. 2011-08-09 12:19:27 +00:00
Zack Middleton
5d24905c8d Simulate line buffering and fix the overflow bug in Com_ReadFromPipe(), patch from DevHC. 2011-08-05 21:45:22 +00:00
Zack Middleton
a87b059ab7 Don't grab mouse till UI loads. 2011-08-05 19:47:33 +00:00
Zack Middleton
06231971ed Use STDOUT_FILENO instead of 1 in con_tty.c 2011-08-05 16:19:01 +00:00
Thilo Schulz
52aed503b5 Bug 5146 - Remove last of warnings under gcc 4.6.1 for Linux, patch by q3urt.undead@gmail.com 2011-08-05 13:33:15 +00:00
Thilo Schulz
c1b3b6f0be Fix compilation on non-x86 platforms, by Simon McVittie 2011-08-05 12:11:27 +00:00
Zack Middleton
6242d16e0d Support five master servers in Team Arena server browser. 2011-08-05 08:28:01 +00:00
Zack Middleton
f220db0e08 Fixed viewing sv_master[3-5] in q3_ui server browser (don't give engine fake sources). 2011-08-05 08:10:54 +00:00
Tim Angus
85ae08e800 * Fix some grammar in DLL loading
* s/Sys_LoadQVMDll/Sys_LoadGameDll/
2011-08-03 14:32:49 +00:00
Thilo Schulz
06628af7c5 Don't do game_restart if game directory changed from "" to "baseq3" or "baseq3" to "" 2011-08-03 00:58:33 +00:00
Thilo Schulz
0bc54ab696 Fix game restart after curl download finished 2011-08-02 23:34:50 +00:00
Thilo Schulz
63c2b017d6 Remove executable property from these files 2011-08-02 20:26:46 +00:00
Thilo Schulz
86a7cd3dea Fix crash bug introduced in r2116. traceEnt does not always have to be a client, so gauntlet attacking something that is not a client will crash the game. Thanks to Ensiform for reporting 2011-08-02 20:04:18 +00:00
Thilo Schulz
c21dee0b37 [16:31:51] <ZTurtleMan> Thilo: two small fixes, one for r2112 and one for r2116. http://pastebin.com/raw.php?i=h19r211Z 2011-08-01 14:40:53 +00:00
Thilo Schulz
800a3c8d7b Fix ARCH_STRING macro for mingw64 2011-08-01 14:38:37 +00:00
Thilo Schulz
eb9fe030c4 Batch of bug fixes for gamecode. Patch compiled and log message written by Tobias Kuehnhammer (#5144)
################################################################################
This Patch fixes:
################################################################################

- The "fraglimit warning" was not played at all, if on the blue team.
- The "where" console command was broken.
- Obelisk explosion wasn't drawn if no Rocketlauncher was loaded.
- Impact marks sometimes didn't draw at all.
- IMPORTANT BUGFIX: No killing for cheaters with Lightning gun and Gauntlet.
- If two doors are close to each other a spectator couldn't fly through them.
- More robust, efficient and logical respawning routine.
  NOTE: The game.qvm will get notable smaller and will use LESS MEMORY!
- Drowning sounds are fixed. Now they are played as intended. (as the id
comment
  in the source code shows).
- Some AI bugs (OVERFLOW!) in the bot movement code.
- Several "Team Arena" Overload and Harvester bugs.
- Stops bots from attacking a team mate (player) who only changed teams.
- Some voice chats and CTF commands fixed.
- "Team_ReturnFlag" was called twice, which did wired things sometimes. 
  NOTE: (G_RunItem checks CONTENTS_NODROP already!)
- A bugfix for Gauntlet animation.
- Incorrect CTF scoring.
- A bunch of corrected comments and print lines ("\n").
- Some regularity of expression and some small trivial bugs.

################################################################################
Details:
################################################################################

********************************************************************************
BUG: in gamemode GT_TEAM the fraglimit warning will not be played if joining
the
     blue team!
--------------------------------------------------------------------------------
Solution: In "CG_CheckLocalSounds": if cgs.scores2 > highScore, highScore
should
          be cgs.scores2.
********************************************************************************
BUG: the "where" console command doesn't work as expected (it's always 0 0 0) 
     but not in id Quake 3 Arena. It seems that now Ioquake3 is affected!
--------------------------------------------------------------------------------
Solution: In Function "Cmd_Where_f" ent->s.origin should be 
          ent->r.currentOrigin.
********************************************************************************
BUG: in gamemode GT_OBELISK obelisk explosion won't be drawn if there is no 
     Rocketlauncher loaded. (The "maps without Rocketlauncher" bug)
--------------------------------------------------------------------------------
Solution: in "cg_main.c": cgs.media.rocketExplosionShader should be registered 
          if gamemode is GT_OBELISK.
********************************************************************************
BUG: Impact marks sometimes doesn't draw at all. Not easy to reproduce if you 
     don't play (io)Quake3 every day and know the places where it happens! ;) 
     But anyway...
     Test: start q3dm12 go to "Long Jump Canyon" (where the small platform 
     teleporter for the BFG is) place yourself at the point where the railgun 
     spawns, look in the direction where the red suspended armor is. Now shoot
     at the sloped wall on the out/leftside of the door you see. (the sloped 
     wall should be nearly in the center of your screen now). If you choose the 
     correct brush face and shoot up and down at this brush face, the impact 
     marks sometimes aren't visible.

     There are hundreds of custom maps where this can happen!
--------------------------------------------------------------------------------
Solution: I replaced the function "SnapVectorTowards" with the one from 
         "Wolfenstein - Enemy Territory (GPL Source Code)"
********************************************************************************
BUG: Normally "NOCLIP" cheaters are logically not allowed to fire a gun.
     Unfortunatly the Gauntlet (and Lightning gun) was forgotten and not 
     restricted to that. All weapons except those two were handled correct. 
--------------------------------------------------------------------------------
Solution: Make Gauntlet and Lightning gun not firing for someone who cheats 
          with "NOCLIP" (like all other weapons).
********************************************************************************
NOTE: A few bugfixes are not mine and are reported here: 
      http://www.quake3world.com/forum/viewtopic.php?f=16&t=9179.

      Thanks to Quake3world, for all those years and the good guys there!
********************************************************************************
BUG: During making a mod I found a very strange bug, which mainly occurs if
     someone tries to implement a lot of singleplayer monsters which should
walk
     slowly (like the "Crash" bot). So if someone wants to make slow down bots
     or monsters when they are walking towards a goal and alter the function
     "BotMoveInGoalArea" then the bots/monsters do stupid things. Otherwise and
     this is the default (also buggy) behavior they start running although they
     shouldn't (as seen with the "Crash" bot and will not be fixed here).
--------------------------------------------------------------------------------
Solution: Fix overflow in bot user command. BUGFIX from "Hunt" mod by J. 
          Hoffman.
********************************************************************************
BUG: in function "BotMoveToGoal" the special elevator case doesn't make sense.
--------------------------------------------------------------------------------
Solution: in "be_ai_move.c": ((result->flags & MOVERESULT_ONTOPOF_FUNCBOB) ||
                              (result->flags & MOVERESULT_ONTOPOF_FUNCBOB)) 
                   should be ((result->flags & MOVERESULT_ONTOPOF_ELEVATOR) ||
                              (result->flags & MOVERESULT_ONTOPOF_FUNCBOB)).
********************************************************************************
BUG: in function "BotWantsToRetreat" and "BotWantsToChase" this is wrong:
     "(bs->enemy != redobelisk.entitynum || bs->enemy !=
blueobelisk.entitynum)"
--------------------------------------------------------------------------------
Solution: "... redobelisk.entitynum) && (bs->enemy != blueobelisk.." is
correct.
********************************************************************************
BUG: in gamemode GT_OBELISK there are too many node switches for bots 
     (test: mpq3tourney6 with many bots). If that happens, game becomes 
     unplayable. I don't know if this is the best solution but here it is:
--------------------------------------------------------------------------------
Solution: In function "AINode_Battle_Fight" right after:
if (!BotEntityVisible(bs->entitynum, bs->eye, bs->viewangles, 360, bs->enemy))
{
   I added this: 
#ifdef MISSIONPACK
    if (bs->enemy == redobelisk.entitynum || bs->enemy == 
                                                        blueobelisk.entitynum)
{
    AIEnter_Battle_Chase(bs, "battle fight: obelisk out of sight");
    return qfalse;
    }
#endif
********************************************************************************
BUG: in gamemode >= GT_TEAM, after team change, bots will (sometimes) not stop
     shooting at you, although you are on their team now. It seems that the 
     configstrings are f***** up or not reliable in this case!
--------------------------------------------------------------------------------
Solution: In function "BotTeam" and "BotSameTeam" get the real team values.
********************************************************************************
BUG: Some of the bots voice commands are wrong. They are commanded to attack
the
     enemy base but they say "Okay, I will defend!"
--------------------------------------------------------------------------------
Solution: Corrected some voice commands in "BotCTFOrders_FlagNotAtBase" and
         "Bot1FCTFOrders_EnemyDroppedFlag"
********************************************************************************
BUG: Spectators couldn't fly through doors if they are very close to each
other.
     You can test it with some regular id maps (q3dm14, q3dm12) but there are
     also many custom maps where this can happen! This is annoying because in 
     the worst case you can't move at all and are caught inside a door.
--------------------------------------------------------------------------------
Solution: There is a solution in a mod called "Hunt" by J. Hoffman. 
          Bugfix is included in this patch!
********************************************************************************
BUG: During making a mod I found it very hard to implement some of my ideas
     (something like "Limbo" or "Meeting") because of the way the player spawn
     effect, intermission and spawning on victory pads is handled. I reworked
it
     a bit and simplified it so that the effect is handled when a client      
     respawns
     (as the name says) and not when a client begins. I think this will help 
     more
     mod makers everytime they want to make changes to spawning of players,
bots
     on victory pads or monsters... and want to avoid spectators with 
     Machineguns
     which can kill and score... :()

     NOTE: I also renamed the poorly named function "respawn" 
           to "ClientRespawn". If someone searches the code base for "respawn" 
           it was really hard to find the correct place for what was 
           meant. "respawn" is used so often, that you really get headache ... 
           now with "ClientRespawn" it's easier!

     IMPORTANT: The whole respawning, moving to intermission point and 
                everything related to that is now done in a more reliable way 
                without changing the default behavior. (How critical the whole 
                spwaning mess was did you see by yourself (ioquake3 rev. 2076). 
                With this patch it's safer. 
                Trust me, I spent hours of fixing silly problems...
-------------------------------------------------------------------------------- 
Solution: Simplified "ClientBegin" and moved the teleport event  
          to "ClientSpawn".
********************************************************************************
BUG: If a player is dying or hurted under water the hurt/dying sounds AND the
     drowning sounds are played together. This is silly. Moreover it's no good
     idea to let the server play client sounds! There was a solution in a mod 
     called "Q3A++" by Dan 'Neurobasher' Gomes which fixes the problem.
--------------------------------------------------------------------------------
Solution: Created a "CG_WaterLevel" function to play the appropriate sounds.
********************************************************************************

################################################################################
2011-08-01 11:39:33 +00:00
Thilo Schulz
8ab91bde8e - Fix already defined command warnings for minimize
- Fix recursive CL_Shutdown warning and "command already defined" warnings when quitting while playing on a server that changed the gamedir.
2011-08-01 10:16:40 +00:00
Thilo Schulz
404fe4e6e0 Don't search system directories for renderer lib 2011-08-01 09:33:48 +00:00
Thilo Schulz
5a1449bd51 Add forgotten file for last rev 2011-08-01 01:30:54 +00:00
Thilo Schulz
40dfcee06e Modular rendering system. Patch by use.less01
This might break MSVC builds. I'll take care of it later
2011-08-01 01:19:55 +00:00
Thilo Schulz
8ab958fab9 Fix pak order when reconnecting to a server.
When /connect to the same server is issued while already connected, an initial call to CL_Disconnect will remove all pak file references
and reset the pak order.
Reordering only occurs through FS_Restart, which in turn is called when checksum feed changes. Because we reconnect to the same server,
checksum feed never changes and pak file order is not restored to server order again. With certain pak file constellations between client/server,
this may result in an inability to load files from paks which are not correctly detected as referenced paks.
2011-08-01 01:14:26 +00:00
Thilo Schulz
e5ddcee71e Some more removal of unused code in addition to r2104, by Zack Middleton 2011-07-31 19:24:08 +00:00
Thilo Schulz
2e94ec6b85 Bug 5134 - q3_ui incorrectly tells user to refresh servers while auto-refreshing, patch by Zack Middleton 2011-07-31 19:21:56 +00:00
Thilo Schulz
f697df05aa Fix strange ifdeffery (#5140) 2011-07-31 19:20:50 +00:00
Thilo Schulz
fb34e78b7e Fix cvar flags to get rid of warnings (#2881) 2011-07-31 19:12:16 +00:00
Thilo Schulz
3752b1d7c4 Change DLL search path order for external libraries that are linked at runtime, like libcurl or libopenal to:
* system library paths
  * executable path
  * fs_basepath
2011-07-29 20:18:37 +00:00
Thilo Schulz
ba385fa43c - Switch master server protocol to dpmaster for better game separation. Based partly on patch by Zack Middleton
- Get rid of ugly cvars sv_heartbeat and cl_gamename and replace with single com_gamename
- Remove sv_flatline. Flatlines are ignored by dpmaster and are considered to be insecure because flatlines can be udp-spoofed.
2011-07-29 13:46:50 +00:00
Thilo Schulz
23f6fd1633 Bug 5094 - Code cleanup, patch by Zack Middleton and DevHC. Fixes unused-but-set gcc warnings 2011-07-29 12:27:00 +00:00
Thilo Schulz
1ea7ab1f42 Fix menu corruption on IRIX (#5097), patch by Rainer Canavan 2011-07-29 11:42:57 +00:00
Thilo Schulz
2349148cf1 - Apply parts of Ben Millwood's target bitfield patch (#3787)
- Fix Ryan's FIXME and have voip packet buffer on the server dynamically allocated via Z_Malloc and store pointers in a circular buffer
- Improve voip target parsing on top of Ben Millwood's patch
- Add new "spatial" target where speaker is spatialized in 3d space and can be heard by all clients in hearing range (s_alMaxDistance)
  (#4467)
- Decrease voip sound lengths from 240ms to 80ms per voip packet to mitigate udp packet loss and decrease latency
- Protocol version incremented to 71
2011-07-27 15:47:29 +00:00
Thilo Schulz
41ac8a232a Bug 5096 - Define PRODUCT_VERSION in q_shared.h if it is not, patch by Zack Middleton 2011-07-27 00:04:29 +00:00
Thilo Schulz
62757b28f4 Fix last "noreturn" warnings 2011-07-27 00:02:45 +00:00
Thilo Schulz
b6a4aa3ecc Include q_shared.h instead of redefining these 2011-07-26 23:56:21 +00:00
Thilo Schulz
c4f739b8d0 Fix extension name comparison for DLL files 2011-07-24 22:12:21 +00:00
Tim Angus
22552c7bab * Replace usage of system with fork/exec 2011-07-24 22:01:50 +00:00
Thilo Schulz
1972bf97db Fix client crash on windows with old OpenAL 2011-07-22 16:43:27 +00:00
Thilo Schulz
5cad803e58 Revert attribute patch from r2090 because the jpeg functions really shouldn't be deviating from the codebase unnecessarily 2011-07-18 22:04:22 +00:00
Thilo Schulz
dd859ae43d Shut up returning functions with noreturn attribute warning 2011-07-18 22:02:16 +00:00
Tim Angus
b248479376 * Fix various issues with unix Sys_Dialog 2011-07-18 19:32:25 +00:00
Thilo Schulz
66f0777552 - Bug 5083 - Cross compiling for 64bit is missing libcurl.a
- Fix a compiler warning for cross compile
2011-07-18 16:32:36 +00:00
Thilo Schulz
9dc32d55e2 Bug 4812 - GCC __attribute__ annotations for printf, non-returning functions etc., patch by linux@youmustbejoking.demon.co.uk and Zack Middleton 2011-07-18 14:56:57 +00:00
Thilo Schulz
69a7ada911 Fix delta compression breaking due to packet queuing 2011-07-18 14:23:54 +00:00
Tim Angus
ea6cf5fda9 * Use specific exit code for xmessage 2011-07-18 10:14:04 +00:00
Thilo Schulz
8a831d34ab Fix legacy protocol with new packet queueing 2011-07-17 23:43:33 +00:00
Thilo Schulz
242c938d7f Fix alignment issues in message sending/reading that would crash IRIX, thanks to Canavan for supplying a shell where I could fix this (#5077) 2011-07-17 01:41:39 +00:00
Thilo Schulz
4c5e9963e3 Fix compile for USE_VOIP=0 2011-07-16 11:14:20 +00:00
Thilo Schulz
ac054c198d Bug 5075 - Fix comments in quake3 configs, patch by q3urt.undead@gmail.com 2011-07-16 11:06:56 +00:00
Thilo Schulz
e6ba500164 Move rate limiting / queued packet sending logic from Com_Frame() to sv_main.c 2011-07-15 16:51:54 +00:00
Thilo Schulz
58a5d3d383 Have server send protocol version in challengeResponse so protocol negotiation works. (Where did this one get lost?) 2011-07-15 14:49:51 +00:00
Thilo Schulz
f6d6ed4b30 - Revert back to Z_Malloc from Hunk_FreeTempMemory introduced in r2077 as Hunk_FreeTempMemory must be freed in LIFO order (#5079)
- Introduce SV_ClientFree() to prevent memory leaks r2077 was supposed to fix
2011-07-15 14:44:06 +00:00
Thilo Schulz
265d6e0374 Remove one unnecessary loop in the beginning 2011-07-13 19:16:25 +00:00
Thilo Schulz
1c3ecb3d3c - Make sure at least one round of download packets and packet queues gets sent each frame
- Fix timeVal select timeout value for case of unlimited data rate and now downloads are active
2011-07-13 18:57:32 +00:00
Thilo Schulz
d827447da8 - Forgot to mention: last rev (2077) bumped default protocol version to 70
- Fix queued packet rate control
2011-07-13 18:37:26 +00:00
Thilo Schulz
ac30d86db0 - Improve snapshot rate and data rate control
- Make server send packet fragments and queued packets when server is idle
- Voip protocol detection is tied to com_protocol making past-end-of-message reading unncessary
- Use Hunk_AllocateTempMemory() for buffering VOIP packets and fix buffering scheme that ryan hates so much
- Disable packet scrambling for new protocol as it is useless now
- Get rid of the old packet scrambling functions predating latest point release
- Use Hunk_AllocateTempMemory() for netchan packet queue to fix memory leak when client gets disconnected with packets in the queue
- Use Hunk_AllocateTempMemory() for download blocks to fix memory leak when client gets disconnected with download blocks in the queue
- Fix SV_RateMsec to account for udp/udp6 packet lengths
2011-07-13 17:11:30 +00:00
Thilo Schulz
a844c94af1 - Add dual protocol support to team arena demo selector
- Fix demo selection in team arena menu on case sensitive file systems
- Some changes in the way how vanilla q3 demo file lists are compiled in the menu
2011-07-13 08:40:30 +00:00
Thilo Schulz
e06c117e9e - Implement dual protocol support (#4962)
- Fix several UDP spoofing security issues
2011-07-12 11:59:48 +00:00
Thilo Schulz
309c322b80 Forgot to set default rate back to 100kbyte/s 2011-07-12 11:01:49 +00:00
Thilo Schulz
e52a492f61 - Greatly improve UDP downloading speed for clients
- Add download rate control cvar sv_dlRate
- Don't send snapshots to downloading clients
2011-07-12 11:01:20 +00:00
Thilo Schulz
1d880da777 Permit downloading files larger than 65 Megabytes via UDP by working around short int wraparound. 2011-07-12 00:34:25 +00:00
Thilo Schulz
7c5ec6aac4 Bug 5069 - Remove unused variable console_color, by uZu 2011-07-08 13:09:59 +00:00
Thilo Schulz
f011fe9914 Bug 5066 - Plasmagun and BFG don't play the explosion when they hit players, patch by Ensiform 2011-07-07 23:14:31 +00:00
Thilo Schulz
cbd3c24542 Bug 5067 - Remove references to unused teamtournament gametype. Toggle areaportal on mover ents where due is needed, patch by Ensiform 2011-07-07 23:13:20 +00:00
Thilo Schulz
b8627b8774 Fix indentation 2011-07-07 23:05:09 +00:00
Thilo Schulz
0ed9c43453 Make naming a bit more foolproof for new macro 2011-07-07 16:21:06 +00:00
Thilo Schulz
7666c2f54c Add fixes to ui menu by Ensiform and DevHC (#5062) 2011-07-07 16:12:53 +00:00
Thilo Schulz
74e538ffcf - Add better protection against DoSing connecting users from connecting
- Have Com_sprintf return string length
- add STR_LEN macro for static strings
2011-07-07 16:07:58 +00:00
Thilo Schulz
53d89b6c10 More color fixes for railgun
Show other players' railgun color and their firetime state.
Show snapshot client's color on world item models of railgun.
Fix the impact mark using color2 (spiral) rather than color1 (beam).
Credits go to Ensiform and Harekiet for the refire portion.
2011-06-28 08:28:12 +00:00
Thilo Schulz
c52bfbd5a8 All patches by Zack Middleton:
- Bug 5057  - Two weapon number range checks allows invalid number
- Bug 5058  - Railgun explosion cannot be colorized
- Bug 5059  - Client's railgun does not glow in third person and mirror
- Bug 5060  - Warning in RAVENMD4 R_GetAnimTag cross compiling with amd64-mingw32
2011-06-27 23:53:40 +00:00
Thilo Schulz
2f502aceb2 - Fix opStack size for vm_x86.c
- Change opStack alignment to 16 for vm_x86_64.c
2011-06-27 20:22:32 +00:00
Thilo Schulz
774ed53948 Make g_doWarmup archived cvar 2011-06-25 20:36:36 +00:00
Thilo Schulz
8a72bbb38f Make sound fallback behaviour for music streams less verbose 2011-06-25 09:35:03 +00:00