Commit graph

395 commits

Author SHA1 Message Date
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
e06c117e9e - Implement dual protocol support (#4962)
- Fix several UDP spoofing security issues
2011-07-12 11:59:48 +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
8a72bbb38f Make sound fallback behaviour for music streams less verbose 2011-06-25 09:35:03 +00:00
Thilo Schulz
88f1fc7500 Fix ipv6 server query 2011-06-25 00:17:44 +00:00
Thilo Schulz
d57ba6a57b - Automatically reset fs_game to "" if it was supplied by the user and is equal to com_basegame
- Fix problem where users could change values of CVAR_INIT variables after the call to Cvar_Get() via Com_StartupVariable()
- Move sound shutdown after client shutdown so VMs don't hold invalid sound handles in memory
2011-06-22 23:00:36 +00:00
Thilo Schulz
2d1187b287 - Clear ip address listings after a NET_Restart
- check for oldGameSet instead of the gamename string
2011-06-21 13:31:19 +00:00
Thilo Schulz
90ede2cb48 - Bug 5034 - q3_ui: fill whole screen and allow cursor to move to edge in widescreen, by Zack Middleton
Check if uivm is loaded before using it

  Patch adds a check for uivm before using it, fixes running dedicated server
  using client binary.

  Missing uivm check pointed out by Ensiform.

- Bug 5049 - TA UI forces overstrike mode on when focusing an edit box, by Ensiform
- Bug 5052 - Missing podium timer initialization, by Eugene C.
2011-06-21 11:36:25 +00:00
Thilo Schulz
df1687c5c7 Fix unnoticed bug in game_restart 2011-06-21 11:29:31 +00:00
Thilo Schulz
dee3724a13 - Improve game_restart:
* differing screen resolutions and network settings are now honoured when changing fs_game
  * Fix hunk memory leak on game_restart
  * Move cls.state and cls.servername to clc so connection state is fully preserved over game_restart
  * Revert back to previous fs_game after disconnecting from a server that triggered a game_restart
  * Fix error dialog popping up after every game_restart if an error happened previously (reported by Ensiform)
- Fixed that not all commands added by CL_Init() would be removed by CL_Shutdown()
2011-06-21 11:18:35 +00:00
Thilo Schulz
a5f31084d4 - Fix memory leak in DMA sound after S_Shutdown()
- Make codec load use temp hunk memory instead of zone mem
- Fix sound issues with direct sound and game_restart (#4526)
2011-06-17 23:29:19 +00:00
Thilo Schulz
03201aff22 - Add MASM assembler files for MSVC x64 projects to support vm_x86 in x64 mode
- Clean up ftol()/snapvector() mess
- Make use of SSE instructions for ftol()/snapvector() if available
- move ftol/snapvector pure assembler to inline assembler, this will add x86_64 and improve support for different calling conventions
- Set FPU control word at program startup to get consistent behaviour on all platforms
2011-06-13 09:56:39 +00:00
Thilo Schulz
fa3b3978f6 Bug 5034 - q3_ui: fill whole screen and allow cursor to move to edge in widescreen, patch by Zack Middleton 2011-06-11 20:18:16 +00:00
Thilo Schulz
f5deb4a88b Fix return values for several syscall functions, patch by Zack Middleton (#5018) 2011-06-06 15:08:00 +00:00
Thilo Schulz
698a9c51ec Fix newlines in Com_Error, patch by Zack Middleton (#5023) 2011-06-06 14:51:02 +00:00
Thilo Schulz
b509d770a7 - Remove Q_strrchr(), replace with standard, portable strrchr()
- Add strrchr() to bg_lib.c, patch by DevHC
2011-05-15 14:08:03 +00:00
Thilo Schulz
c95bd0a684 Remove newlines from Com_Error message format strings, patch by DevHC 2011-05-12 14:02:48 +00:00
Thilo Schulz
59271903a2 More codec loader troubles with extensions 2011-05-12 12:25:36 +00:00
Thilo Schulz
68338a8268 Fix crash bug in new codec audio loader, thanks brain for reporting 2011-05-12 10:53:36 +00:00
Thilo Schulz
a9696d3558 Refactoring patch by DevHC 2011-05-11 14:21:27 +00:00
Thilo Schulz
185d2d6b60 Add codec fallback support for sound files not found, Patch by Zack Middleton (#4982) 2011-05-09 22:40:25 +00:00
Thilo Schulz
2e3c902da9 fix overzealous cvar cheat protection, patch by cyrri (#4974) 2011-05-06 11:50:26 +00:00
Thilo Schulz
86c41d39da Fix sending reliable commands before being connected, patch by Eugene C. (#4971) 2011-05-02 16:03:35 +00:00
Thilo Schulz
d34c6b7e0b Revert protocol 69 pending further discussion (#4962) 2011-04-27 20:17:45 +00:00
Thilo Schulz
a5580d8974 - Harden the client and server protocol against UDP spoofing attacks. This will defend ioquake3 against http://aluigi.altervista.org/papers/q3noclient.txt (#3041)
- Retains full compatibility to the old but unsecure protocol between clients and servers
- Harden the connection process against DoS attacks, possibly connected to UDP spoofing
2011-04-27 16:03:35 +00:00
Thilo Schulz
9541fca878 Add better support for analog joysticks, patch by use.less01 2011-04-19 13:26:15 +00:00
Thilo Schulz
3551b0fa3c Let codec loader decide which extension to give to extensionless filenames 2011-04-18 18:55:58 +00:00
Thilo Schulz
6a203bc8e9 - Fix data alignment issue with glReadPixel call, reported by Guillaume Bougard (#4954)
- Fix data alignment issue in raw AVI recording for weird resolutions (like 1366x768)
2011-04-18 16:06:10 +00:00
Thilo Schulz
6b82f4fd09 Consider key states before startup, patch by Zack Middleton (#4950) 2011-04-17 22:09:05 +00:00
Thilo Schulz
16b99e354b Fix JPEG compression for screenshots and mjpeg video recording with new JPG library 2011-03-17 16:00:45 +00:00
Thilo Schulz
d3f8dffe39 Bug 4936 - Wrong color for non-ascii symbols in console 2011-03-17 12:53:47 +00:00
Thilo Schulz
379dfbf496 - Properly use ALC_ALL_DEVICES_SPECIFIER in sound info
- Properly use ALC_CAPTURE_DEVICE_SPECIFIER in sound info
2011-03-14 16:36:40 +00:00
Tim Angus
e0eb1b4227 * Fix whitespace 2011-03-14 16:04:49 +00:00
Thilo Schulz
182b344818 - Remove alext.h dependency and manually add the required macros
- Use ALC_DEFAULT_ALL_DEVICES_SPECIFIER instead of ALC_DEFAULT_DEVICE_SPECIFIER if extension exists
2011-03-14 15:57:39 +00:00
Ludwig Nussel
246b496693 include alext.h for ALC_ALL_DEVICES_SPECIFIER
This assumes OpenAL Soft (Simon McVittie, bug 4927)
2011-03-13 15:46:27 +00:00
Thilo Schulz
bce3848523 Make buffers for device lists a bit longer. Just in case. 2011-03-11 13:53:22 +00:00
Thilo Schulz
a3def2744f - Fix a compiler warning
- Fix the detection of the enumeration extensions
- Fix default device for s_alInputDevice
- Adjust formatting of S_AL_Info output
2011-03-09 23:34:15 +00:00
Thilo Schulz
7ca1dc6f8b - I accidentally committed patch by slacker from (#4915) in r1916. Patch adds input device selection support
- Add check for ALC_ENUMERATE_ALL_EXT before using ALC_ALL_DEVICES_SPECIFIER in device enumeration
- Patch readme for new cvars by Zack Middleton
2011-03-09 12:59:25 +00:00
Thilo Schulz
8c3f320504 (#3767) Some protection from malicious qvms - patches and ideas by Amanieu d'Antras and Ben Millwood 2011-03-08 01:39:34 +00:00
Thilo Schulz
0a6f873999 Add g_humansplayers (found by server) and g_needpass (cvar) to serverinfo (#4702) 2011-03-07 23:12:16 +00:00
Thilo Schulz
c0cca7a0a8 - Fix potential out-of-bounds read in files.c, fix by using new FS_IsExt
- Add capability to load demos with com_protocol suffix, partially applied patches from Simon McVittie
- Fix demo loading if protocol number has more digits than 2
- Minor refactoring, replace all occurances of suffix "dm_" with global macro DEMOEXT
2011-03-07 22:08:48 +00:00
Thilo Schulz
0387b8002e Add cvar "protocol" so user can change protocol version on command line, for standalone games. Most of the patch by Simon McVittie with a few minor modifications by myself 2011-03-05 19:10:23 +00:00
Thilo Schulz
b764150a97 (#4291) Redundant statement in client console, by Zack Middleton 2011-03-04 20:29:24 +00:00
Thilo Schulz
6516be2fed Support non-256x256 videos in shaders, by Zack Middleton (#4745) 2011-02-11 14:46:34 +00:00
Thilo Schulz
8bb9a261bd Auto complete demos on not in pk3s while in pure servers. Patch by Zack Middleton (#4794) 2011-02-11 14:30:55 +00:00
Thilo Schulz
614f315ce8 Fix console tab autocomplete for exec and condump on pure servers, patch by Zack Middleton 2011-02-10 19:58:20 +00:00
Thilo Schulz
a56e448850 Add minimize command (#4531) 2011-02-10 19:21:13 +00:00
Thilo Schulz
3b40467599 Finally fix missionpack compiling for STANDALONE=1, yes, this is tested. 2011-02-09 00:42:54 +00:00
Thilo Schulz
48b03a035b Ok, getifaddrs() is not POSIX compliant. Fix #3984 as suggested by Vincent Cojot 2011-02-07 05:20:31 +00:00
Thilo Schulz
44fb8f49b6 Fix adding multiple entries for same server when using globalservers several times, patch by Tequila 2011-02-06 17:59:23 +00:00
Tim Angus
c61ad8a074 * Fix fp literals 2011-02-04 17:22:42 +00:00
Thilo Schulz
31d99e2c4e Fix division by zero, reported by Simon McVittie 2011-02-04 17:16:53 +00:00
Thilo Schulz
67a8b273c2 - Add cvars cl_gamename, sv_heartbeat, sv_flatline so standalone games can customise their messages to the master server 2011-02-04 13:25:51 +00:00
Thilo Schulz
3148416c04 - Change runtime standalone detection:
* com_standalone now read-only
  * add new cvars com_basegame, com_homepath
  * standalone now automatically detected when com_basegame is set to something different than baseq3 and no id pak pk3s are found
  * This fixes https://bugzilla.icculus.org/show_bug.cgi?id=4699
- Replace a few hardcoded string literals with macros
- Add checks for Team Arena PK3s to FS_CheckPak0()
2011-02-04 12:04:56 +00:00
Thilo Schulz
cd3e202fca - Add parameter checking to CL_*Ping* functions.
- Remove unused CL_UpdateServerInfo function
2011-01-27 17:07:07 +00:00
Zachary Slater
e2e8b566e7 Sony NGP Support.
Alan Cox provided these patch notes:
Guvf vf npghnyyl n cngpu gb eryvrir hapbzsbegnoyr btt/ibeovf pbafgreangvbanoyr pbzcvyr-gvzr jneavatf sebz /qri/uhznapbagebyyre

Gunaxf 2 lbh.
2011-01-27 07:30:21 +00:00
Zachary Slater
275d3b45b5 Patch from /dev/humancontroller (thx) 2011-01-27 07:00:35 +00:00
Thilo Schulz
5c0ae99642 Make number of supported master servers tunable via define 2011-01-25 02:04:25 +00:00
Tim Angus
c081b9c1fd * (bug #4800) Don't prepend a slash to console commands if they're empty
* (bug #4800) Limit console input length such that there is always room for a
  leading slash
2010-12-19 17:35:01 +00:00
Thilo Schulz
eb2860f756 Fix "unhandles OpenAL error", and sound fallback behaviour for model files. Thanks Ansa89 for reporting, and Zack Middleton for the patch. 2010-08-29 18:11:15 +00:00
Thilo Schulz
5fe2a61910 Second batch of bug fixes reported and patched by Zack "ZTurtleMan" Middleton:
#4740
#4741
#4742
#4743
#4744
2010-08-29 18:08:29 +00:00
Ludwig Nussel
34d616dbef enable (dummy) cdkey calls in standalone mode to prevents mods from crashing 2010-02-28 08:58:03 +00:00
Tim Angus
005f870ebe * Sys_Dialog for more user friendly error reporting
* (bug #3932) Recovery from bad video settings
2010-02-15 16:20:33 +00:00
Ludwig Nussel
6f9b34ef75 avoid setting cvars by name each frame 2010-01-06 13:47:41 +00:00
Ludwig Nussel
9b1a3387cb fix mumble coordinate transmission 2010-01-06 13:47:38 +00:00
Ludwig Nussel
42b8b8ecec make reason for voip disable more visible 2010-01-06 13:47:35 +00:00
Ludwig Nussel
6ebc650542 set default rate to broadband 2010-01-06 13:47:32 +00:00
Ludwig Nussel
4abf1aa398 mmap could fail, handle gracefully 2010-01-04 16:02:01 +00:00
Ludwig Nussel
f19d437564 update mumble link interface for version 1.2 2010-01-04 14:12:18 +00:00
Tim Angus
3b63c54a24 * Fix demo playback being broken, not entirely sure by what or when 2009-11-11 10:51:33 +00:00
Thilo Schulz
be0a82d496 - Add stopmusic command
- Make cvar s_muted read-only
2009-11-10 01:55:54 +00:00
Thilo Schulz
2a0812bc06 Mute sounds with 0 volume when game is minimized/unfocused instead of Stopping all sounds. Fixes (#4336) 2009-11-10 01:08:15 +00:00
Thilo Schulz
e8ae8f5d3a Remove leftover stub 2009-11-10 00:25:48 +00:00
Thilo Schulz
258429efe7 - Add unset command for cvars created by the user
- Fix crash bug when maximum number of cvars has been reached
- Fix cvar_restart
- Add possibility to cleanly switch mods ingame (#2819)
2009-11-09 22:41:42 +00:00
Thilo Schulz
018de1dd2e Added TTimo's QuakeLive-style mouse acceleration, thanks Gabriel Schnoering and TTimo for the patch. (#3693) 2009-11-02 16:17:10 +00:00
Thilo Schulz
e345f9f81f New batch of fixes for the OpenAL part:
- Don't play sources outside the listening range (Thanks Kpaxian for bringing this to my attention)                                                         
 - Handle previously unhandled errors for old OpenAL sample implementation which does not support AL_SEC_OFFSET (sounds won't be synchronized then),
   thanks to Tequila from SmokingGuns for reporting this.
2009-10-27 11:13:33 +00:00
Thilo Schulz
0ecfcfa872 Make not playing loop sources weaker in priority, so if we have reached the maximum number of sources, inaudible loops are removed first. 2009-10-26 23:20:05 +00:00
Thilo Schulz
0adae90465 Fix another issue I didn't know about: cgame does not kill sound loops it startet, just stops sending the entity information for these loops. Changed it so that loops added with AddLoopingsound() are being killed again as soon as the entity to the source is not sent anymore. 2009-10-26 05:02:18 +00:00
Thilo Schulz
0bdf52e2fb Show color codes in full length, patch by Amanieu (#4318) 2009-10-25 19:51:32 +00:00
Thilo Schulz
3c501df298 A few more last fixes that will handle some special cases 2009-10-24 08:33:12 +00:00
Thilo Schulz
1ea420e8a8 Better stop than just pause. 2009-10-23 23:51:00 +00:00
Thilo Schulz
898f1ed2f7 Don't kill sources out of range, just pause them. Make sure the listener gets the impression sources have been continuing to run in the background. 2009-10-23 23:32:52 +00:00
Thilo Schulz
465c6101e0 remove redundancy 2009-10-23 12:30:00 +00:00
Thilo Schulz
d12751f62b Synchronize looping ambient sounds (#2984) 2009-10-23 12:18:49 +00:00
Thilo Schulz
fd57c987c4 Fix infinite loop in case an invalid pk3 file has been downloaded from the server. Thanks tjw for reporting (#3074) 2009-10-19 22:36:17 +00:00
Thilo Schulz
290f51e353 - Change default openal lib to libopenal.so.1
- USE_OPENAL_DLOPEN=1 now default
2009-10-13 15:39:39 +00:00
Thilo Schulz
fc539dc46a Improve OpenAL error handling, patch by Ben Millwood. https://bugzilla.icculus.org/show_bug.cgi?id=3776 2009-10-13 15:23:17 +00:00
Thilo Schulz
186f30a74f Fix netcode inconsistency, thanks to /dev/humancontroller for the patch, see http://bugzilla.icculus.org/show_bug.cgi?id=4060 2009-10-12 17:17:15 +00:00
Thilo Schulz
d86dd71327 Fix environment variable handling for Linux, make setenv command added before parsing of configuration files. (https://bugzilla.icculus.org/show_bug.cgi?id=3626) 2009-10-12 16:03:18 +00:00
Thilo Schulz
387dc9d6ff Don't need a call to va() for this 2009-10-12 03:21:02 +00:00
Thilo Schulz
691da05b74 Whoops.. don't make it overwrite cmds in case of recursive error. 2009-10-11 18:34:15 +00:00
Thilo Schulz
fee5a4a157 Fix recursive error for disconnect after reliable client command overflow. Thanks to /dev/humancontroller for reporting. https://bugzilla.icculus.org/show_bug.cgi?id=3616 2009-10-11 18:31:00 +00:00
Thilo Schulz
ff2f143882 Make s_volume cvar affect volume of S_Base_RawSamples, thanks to Jay Weisskopf for reporting. https://bugzilla.icculus.org/show_bug.cgi?id=3474 2009-10-08 22:26:10 +00:00
Thilo Schulz
dd572db7d6 Rewrite of key event processing, thanks to /dev/humancontroller and Ben Millwood. https://bugzilla.icculus.org/show_bug.cgi?id=3374 2009-10-03 23:35:07 +00:00
Ryan C. Gordon
b9f033d1fa Prevent hang in S_UpdateBackgroundTrack() with some sample rates.
Fixes Bugzilla #4022.
2009-09-15 06:19:04 +00:00
Ryan C. Gordon
6978dcf645 Don't send a 0-length command to cgame during map_restart.
Fixes Bugzilla #3965.
2009-09-15 06:15:00 +00:00
Ryan C. Gordon
d47be89f0a Removed broken music fading code from snd_dma.
Fixes Bugzilla #3757.
2009-09-15 00:53:02 +00:00
Ryan C. Gordon
2cf2911131 Added s_muteWhenUnfocused cvar (thanks, Chris!).
Fixes Bugzilla #3768.
2009-09-14 16:25:29 +00:00
Tim Angus
64a0a078d2 * Fix warning in cl_main.c
* Fix bug #4026 (SDL dx backend doesn't work on some machines)
2009-09-14 12:34:31 +00:00