Commit Graph

115 Commits

Author SHA1 Message Date
Zack Middleton 2e45edb550 5717 - Gamecode can open file "" for reading 2013-02-15 21:08:47 -06:00
Zack Middleton 6f88df262c Don't add pk3dirs if connecting to a pure server
Only .cfg etc would be read from pk3dirs, but they should be treated like pk3s that are not on the pure list.
2013-02-11 19:15:14 -06:00
Zack Middleton ebee21157c Change pk3dir README / comments to fit in better 2013-02-11 18:02:40 -06:00
Andrew Browne 37a9614179 5289 - Support for .pk3dir 2013-02-11 17:58:24 -06:00
Tim Angus 70b165ee33 Fix screwed up whitespace in files.c
Apologies to anyone merging this :(
2013-01-13 22:26:09 +00:00
Tim Angus 5fd456ff7c Fix FS_FOpenFileRead corner case
FS_FOpenFileRead is a fairly mental function that changes its return
behaviour depending on whether or not file is NULL or not. It turns out
in the case where file is NULL, we were returning the wrong value when
the file didn't exist.
2013-01-13 22:26:09 +00:00
Zack Middleton 82f83cd092 Fix some "> MAX_*" to be ">= MAX_*". 2012-11-18 19:09:54 +00:00
Zack Middleton d092ba6627 Fix restoring fs_game when default.cfg is missing. 2012-10-26 01:27:16 +00:00
Thilo Schulz b5456faaea Revert pk3dir patch because some users report the code gets stuck in an infinite loop in the new code 2012-07-02 01:03:55 +00:00
Thilo Schulz b757968839 Support for .pk3dir (#5298) - Patch by Andrew (dersaidin@gmail.com) 2012-07-01 18:00:18 +00:00
Zack Middleton ad5c5c32a6 REFACTOR [reletive -> relative]
From /dev/humancontroller.
2012-06-18 16:32:03 +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 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
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 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
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
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 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 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 c4f739b8d0 Fix extension name comparison for DLL files 2011-07-24 22:12:21 +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 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 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 af5020c57c - Don't try to load QVM/DLL files on pure servers
- Fallback after failed DLL load will be VMI_COMPILED, not INTERPRETED
2011-06-15 22:25:13 +00:00
Thilo Schulz 9219cde4e8 - Small change to search path order - local files not in .pk3s take precedence over files in pk3s. Should make life easier for modders/mappers wanting to override textures that are already contained in some older pk3
- Make VM loading more robust, change loading order: when vm_* == 0 first try loading DLL, then QVM in *each* search directory/path
- Fix FS_FileForHandle that would return a FILE pointer to invalid file handle 0
2011-06-15 22:09:26 +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 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
Tim Angus 52ead6fa36 * Crash recovery for com_pipeFile (Lakitu7) 2011-03-30 21:58:31 +00:00
Thilo Schulz 3bf8ec2dab (#4925) - com_pipefile to create a named pipe for sending commands from other processes, patch by Chris Schwarz 2011-03-10 01:01:27 +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 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 fef4d12d68 Refactoring patch by DevHC 2011-03-05 19:20:37 +00:00
Thilo Schulz 4dc750aedb Merge "which" command upstream from Tremulous, patch provided by Chris Schwarz 2011-02-10 23:07:07 +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
Zachary Slater 5e0d0efd2e http://www.angryflower.com/aposter.html
(minor English issues, most of which are via /dev/humancontroller)
2011-02-09 05:51:33 +00:00
Thilo Schulz 956c9a262a First batch of getting replacing malloc() with Z_Malloc 2011-02-09 00:02:42 +00:00
Thilo Schulz eb11388cac Fix STANDALONE in files.c 2011-02-08 20:27:49 +00:00
Thilo Schulz 7bb5906599 Patch by Simon McVittie to improve dynamic library loading (#4700) 2011-02-04 17:47:57 +00:00
Thilo Schulz 0eb5d1720c Fix banfile writing to wrong game directory 2011-02-04 12:34:11 +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
Ludwig Nussel a9fdf0ef3b need to hardcode "baseq3" to prevent download of id files even if compiled STANDALONE 2010-02-28 08:56:54 +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 606ce66726 This is true always, anyways. 2009-11-09 13:50:48 +00:00
Tim Angus 108705d31f * Rewrite win32 Sys_Mkdir to use CreateDirectory
* Make FS_ReplaceSeparators filter out runs of multiple separators
* Make FS_CreatePath skip creation of the root directory
2009-11-07 16:43:02 +00:00
Tim Angus 0f9a5e09eb * Improve displayed error message when pak?.pk3 is missing 2009-11-06 16:25:14 +00:00
Tim Angus eee9770fbf * Reimplement r1597-1598 in a better way (Oopss)
* Fix Sys_SetEnv warning
2009-11-05 20:20:23 +00:00