Commit Graph

2047 Commits

Author SHA1 Message Date
Zack Middleton 2d6b68edd8 Fix win32 console partial print being overwritten 2013-01-10 16:29:54 -06:00
Zack Middleton 20cd170993 Make win32 console cursor visible 2013-01-10 15:34:54 -06:00
Zack Middleton c1ddacf5be Fix win32 input left on buffer and overwritten
The input line on the console screen buffer was moved up a line and
overwritten by CON_Print.

Remove input line when console shutdown as well.
2013-01-10 15:06:59 -06:00
Zack Middleton eb6b5e5eab Merge branch 'master' of https://github.com/ioquake/ioq3 2013-01-09 23:18:41 -06:00
Mark a99a214589 Fix #5849 - broken snapvector inverts player speed
Snapvector was converting floats to 16 bit integers instead of 32 bit integers.
2013-01-09 23:15:21 -06:00
SmileTheory ed87774a77 #5866: Fix surface culling through portals, and use the correct number of frustum planes. 2013-01-09 18:30:12 -08:00
Zack Middleton daa9619913 Don't look for colors past win32 input line length 2013-01-09 15:42:21 -06:00
Zack Middleton 768083b46f Fix win32 dedicated input line printing to backlog
Use to write win32 input line using WriteConsole then overwrite by
CON_Print, so when CON_Print removes color format characters the end of original input line was visable.

"hi ^1guys" use to be shown as "hi guysys" in the console backlog.
2013-01-09 15:21:44 -06:00
Zack Middleton c501c1ad8a Colorize text on win32 console
Text input line color based on code by "spior"
Main colorize function based on Sys_AnsiColorPrint in sys_main.c
2013-01-08 17:20:01 -06:00
SmileTheory 3d311bdbe3 #5863 - Use proper texture coordinates for alpha tested materials when doing depth prepass. 2013-01-07 21:29:19 -08:00
SmileTheory af77b93597 #5818 - Modular renderer and Rend2 support for MSVC. 2013-01-07 20:30:49 -08:00
Zachary Slater 20a77764dd Increase various arbitrary limits - Bug #5463 2013-01-06 01:36:39 -08:00
Richard Allen 6a7a67a497 More fixes to the macosx buildsystem. This removes the SDL Framework and makes use of a SDL library that is position independant. This also brings back PPC builds into the UB and also as a standa alone build choice. 2012-12-31 01:32:15 +00:00
Zack Middleton 45bb0f7b53 Fix bot skill format so it doesn't always have a space at the beginning of it. 2012-12-29 03:35:48 +00:00
Zack Middleton a57a5cfd9b Changes from Ensiform:
- In G_AddBot, try to allocate clientNum before doing anything else.
- In G_AddBot, don't set SVF_BOT and inuse. It's done in ClientConnect, plus inuse causes ClientDisconnect to be run for no reason.
- In G_AddBot, only set skill in bot useinfo once.
- Avoid using cl->ps.clientNum to check if cl is a bot.
2012-12-29 03:33:00 +00:00
Zack Middleton b791040f42 - Fix spectator client being switched from follow to free after map_restart if following a client with a higher client number.
- Fix client unlinking issue caused by ent->s.number being set to followed client's ps->clientNum after map_restart. Reported by Ensiform.
2012-12-29 01:45:11 +00:00
Richard Allen 1c8fa31c0d Changed the MacOS-X build system to make UB's containing i386 and x86_64 arches and made make-macosx.sh not build UB's but only standard binaries 2012-12-20 00:15:17 +00:00
James Canete 98677b1c72 Missed a file in the previous commit. 2012-12-18 06:21:47 +00:00
James Canete 78b4a3bb7a Support r_srgb even without hardware support. Also tweak default autoexposure/tonemap settings to look good on both r_srgb 0 and 1. 2012-12-18 06:15:38 +00:00
Zack Middleton 26b1fcc471 Save all arguments from connect for reconnect command.
Remove unnecessary localhost check from reconnect command.
2012-12-16 19:20:08 +00:00
Zack Middleton 8ef0f36a3f Fix dedicated server crashing when using MSG_ReadDelta*, though it only happens if someone modifies the engine. (#5449) 2012-12-16 00:15:14 +00:00
Zack Middleton aac23d6934 Fix reconnect command to work after leaving server. (#5794) 2012-12-15 23:33:02 +00:00
Zack Middleton c5af65fe5f Fix passing arg9 (qvm only), arg10, and arg11 to vmMain for native libs and non-i386 compiled or interpated qvms. (Currently they aren't use in vmMain in game, cgame, or ui.)
Fix passing args[11] to args[15] from vm to engine on ppc64 and sparc64. Some of the args are used by game bot prediction syscalls. May have been causing bugs. Note: This was fixed for x86_64 in r2163.
2012-12-15 21:55:07 +00:00
Zack Middleton b943d506bf Fix clients being able to reset their player state and respawn using donedl. 2012-12-15 08:08:46 +00:00
James Canete 3bb7138b84 Fix a couple files not ending with a newline. 2012-12-15 00:40:08 +00:00
James Canete 082ecc4d6c Only declare var_SampleToView in lightall shader when it is actually used. 2012-12-15 00:39:17 +00:00
Zack Middleton d79ea2e5cd - Allow changing cl_voip without restarting.
- Fix assert failing in CL_ParseVoip() while flipping cl_voip off and on.
2012-12-14 07:32:07 +00:00
Zack Middleton 50475fc37b Fix server ignoring client move commands if voip data is included. 2012-12-13 23:54:58 +00:00
Zack Middleton 7786f95c06 Fix writting voip data in demos (broke in r2102). 2012-12-13 05:25:50 +00:00
James Canete f4a0a78b43 Split light sample into direct and ambient parts when using deluxemaps or per-vertex light vectors. Fixes #5813. 2012-12-10 22:35:57 +00:00
James Canete b356dac903 From /dev/humancontroller: Typo. 2012-12-06 21:53:52 +00:00
James Canete 374c551404 #5812 - Use refdef's coordinates when drawing to screen shadow fbo, and separate depth texture and screen texture coordinates in glsl shaders. 2012-12-06 01:55:45 +00:00
James Canete 736e1d5170 Oops, fix line endings in new files in previous commit 2012-12-04 03:05:34 +00:00
James Canete edb414b34a #5808 - Include and use .glsl in source (rend2) 2012-12-04 01:56:52 +00:00
Thilo Schulz 6b811ada7a Add length check here as well, thanks Ensiform 2012-12-03 17:58:55 +00:00
Zack Middleton 311acbe263 In q3_ui if uis.demoversion is set, hide "Team Arena" and "Mods" in main menu. (They aren't shown in id's q3a demo and use to be drawn under demo message). 2012-12-01 23:17:14 +00:00
Zack Middleton 29c406c9ec Fix function prototype for Info_RemoveKey_Big. Pointed out by Ensiform. 2012-11-29 17:09:28 +00:00
Zack Middleton 10a574e6ed Remove unused function CL_DisconnectPacket. Pointed out by Ensiform. 2012-11-24 20:55:47 +00:00
Zack Middleton b785f8a241 Changes suggested by DevHC:
- Remove "!target" checks from tell, vtell, and gc commands. Target was just set, cannot be NULL.
- Validate "order" in gc command before "player id."
2012-11-20 22:51:48 +00:00
James Canete 467619c034 Make software overbright optional (cvar r_softOverbright) and reduce the number of FBOs and FBO blits when able. 2012-11-20 03:34:16 +00:00
Zack Middleton 1f8db4c14a Remove references to non-existent functions CM_MarkFragments and CM_LerpTag. 2012-11-19 05:48:27 +00:00
Zack Middleton 3da8779180 - Check for invalid filename in OpenAL's RegisterSound function.
- Changed Base sound system to warn not error when sound filename is empty or too long.
2012-11-19 00:40:03 +00:00
Zack Middleton 6c1045a003 Remove unneeded name buffer in S_Play_f. 2012-11-18 23:30:26 +00:00
Zack Middleton d9bea4977b Improve "play" command, based on a patch from Ensiform. 2012-11-18 23:16:13 +00:00
Zack Middleton 98f04d39a6 #5799 - Change messagemode text box to display colors like in console input box. 2012-11-18 22:24:15 +00:00
Zack Middleton 05bc03d32d Remove anti tamper leftover code 'CL_ChangeReliableCommand'. From Ensiform. 2012-11-18 22:12:30 +00:00
Zack Middleton bf9b5cd7de - Fix up "gc" command, make it more like "tell". Based on patch by Ensiform.
- Add usage messages for gc, tell, vtell, and votell commands.
- Check player names in gc, tell, vtell, and votell commands.
2012-11-18 22:08:58 +00:00
Zack Middleton 1cdb3b33e7 Fix follow command to find clients whose name begins with a number. 2012-11-18 21:55:40 +00:00
Zack Middleton f13a87daad Change error message in CL_ConfigstringModified to specify out of range index like in server. 2012-11-18 19:14:07 +00:00
Zack Middleton 82f83cd092 Fix some "> MAX_*" to be ">= MAX_*". 2012-11-18 19:09:54 +00:00
James Canete d635193e19 Various shader fixes and optimizations. 2012-11-14 10:56:31 +00:00
James Canete b269acac94 Fix bugs where some surfaces weren't merged and others were counted as merged in R_MergeLeafSurfaces(). 2012-11-09 08:13:38 +00:00
James Canete 86984eb536 When calling qglDrawRangeElementsEXT(), use proper start and end parameters. 2012-11-07 00:06:51 +00:00
Zack Middleton 8234225459 Change more operator commands to require sv_running to be usable. Patch by Ensiform. 2012-11-01 06:03:15 +00:00
James Canete 262e8e96b6 Ensure the correct FBO is bound when drawing. (Fixes bug #5791.) 2012-10-30 22:05:07 +00:00
Zack Middleton c4288507e0 Don't draw cursor during Team Arena's loading screen. 2012-10-30 20:06:48 +00:00
Zack Middleton 016b74b633 Fix restoring old fs_game upon leaving a server. Patch by Ensiform. 2012-10-30 16:51:06 +00:00
Zack Middleton 17ee96e6c8 Clean up getting pshadowMap in Rend2's R_DecomposeSort(). 2012-10-30 09:00:58 +00:00
Zack Middleton faa0cb04c1 Show reason non-default renderer failed to load. 2012-10-30 07:43:44 +00:00
James Canete 32d1bc4f2a Fix some non-ASCII characters.
Patch originally by /dev/humancontroller, modified by me.
2012-10-30 03:00:46 +00:00
Zack Middleton 36c30f6782 Remove initializing "sv_mapname" cvar in game. It's set to "" and never used. 2012-10-29 19:18:06 +00:00
James Canete 3dff29e991 Remove ARRAY_SIZE, and use ARRAY_LEN instead. 2012-10-28 20:35:16 +00:00
James Canete 5cbe7888f8 Fix FBO_*() usage when framebuffers are unavailable or undesired. 2012-10-28 20:22:13 +00:00
Zack Middleton 6bc0e6fae4 Merge changes to GL_Cull from Rend2 into opengl1 renderer, behavior is the same. 2012-10-26 07:40:57 +00:00
Zack Middleton 3dfd2dac7e Split Rend2's printing OpenGL extensions string (> 1024 characters) into separate function and merged into opengl1 renderer. (Fixes bug #5559.) 2012-10-26 07:23:49 +00:00
Zack Middleton 64ed856dfd Add smiletheory to credits in q3_ui. 2012-10-26 04:16:25 +00:00
Zack Middleton c9e5537341 Remove gfxmeminfo command when shuting down Rend2. 2012-10-26 04:07:07 +00:00
Zack Middleton 3814f04a8a Fix gcc warnings in Rend2. 2012-10-26 03:56:45 +00:00
Zack Middleton d092ba6627 Fix restoring fs_game when default.cfg is missing. 2012-10-26 01:27:16 +00:00
James Canete 4f7eb9fa21 Added Rend2, an alternate renderer. (Bug #4358) 2012-10-26 01:23:06 +00:00
Zack Middleton 037565293f From /dev/humancontroller:
to further reduce confusion, rename constants like MAX_ENTITIES to MAX_REFENTITIES
2012-10-17 21:20:29 +00:00
Zack Middleton bc4ca164e0 From /dev/humancontroller:
really fix the confusion with game entity and refentity numbers

for any natural number M, the following is logical as a whole:
- the array size for refentities is M;
- the refentity number limit is M-1, ie., each refentity number is in [0..M-1];
- the special number for the world is M.

before r1429, the code was roughly the following:

// constants related to the game, should not be used by the renderer

// renderer stuff
refEntity_t refEntities[MAX_ENTITIES];
int numRefEntities = 0;

void addRefEntity(refEntity_t re)
{
	if (numRefEntities >= ENTITYNUM_WORLD)
		return; // full
	refEntities[numRefEntities++] = re;
}

void render(int num)
{
	if (num == ENTITYNUM_WORLD)
		renderWorld();
	else
		renderRefEntity(refEntities[num]);
}

so before r1429,
- the array size for refentities was 1023;
- the refentity number limit was 1021, ie., each refentity number was in [0..1021]; and
- the special number for the world entity was 1022.
this was a small waste of memory, as the last array element wasn't used.

r1429 changed
	if (numRefEntities >= ENTITYNUM_WORLD)
to
	if (numRefEntities >= MAX_ENTITIES).

this creates the following configuration:
- the array size for refentities is 1023;
- the refentity number limit is 1022, ie., each refentity number is in [0..1022]; and
- the special number for the world entity is 1022.

r1429 just makes things worse: it allows 1 more refentity to be added, but that entity doesn't get drawn anyway, as its number will be equal to the special number for the world. this is a small waste of not only memory, but also processing time.

perhaps in XreaL,

ENTITYNUM_WORLD is a game entity constant, and has nothing to do with refentities. a new REFENTITYNUM_WORLD constant should be added to denote the special number for the world, and that constant should be used in the renderer code in place of ENTITYNUM_WORLD. so define such a constant, and let it be equal to MAX_ENTITIES, which is 1023.
2012-10-17 21:17:37 +00:00
Zack Middleton d49d0753eb When in third person, don't play player's sounds as full volume in Base sound system. OpenAL already does this. (Related to bug 5741.) 2012-10-17 20:39:45 +00:00
Zack Middleton ce9f2ee5f9 Check last listener number instead of clc.clientNum in S_AL_HearingThroughEntity so sound work correctly when spectate following a client. (Related to bug 5741.) 2012-10-17 19:30:41 +00:00
Zack Middleton 0167b439c9 Don't include client.h in sdl_glimp.c as it is part of the external renderer lib. 2012-10-13 23:15:02 +00:00
Zack Middleton 0a8eb09834 Play correct team sounds when in spectator mode and following a player. 2012-10-11 18:22:41 +00:00
Zack Middleton cf30922932 Fix resetting single player level selection in q3_ui when there is no training level, such as in demoq3. 2012-09-30 06:21:08 +00:00
Zack Middleton a32dc4dca4 Fix arrow buttons in q3_ui join server menu to be selectable by mouse. 2012-09-30 03:59:10 +00:00
Zack Middleton 656a0145bc Added myself to ioq3 credits in q3_ui. 2012-09-30 03:10:10 +00:00
Zack Middleton 11811e8138 Fix UI player model FOV when using non-640x480 resolution. 2012-09-30 02:56:50 +00:00
Zack Middleton 2cb7f25093 Cache servers for each master server in q3_ui, otherwise servers from last updated master for shown for all Internet# sources. 2012-09-17 04:16:30 +00:00
Zack Middleton 02f3664b2e Fix game getting stuck in a do-while loop when "team follow1" or "team follow2" client sends a follownext or followprev command. 2012-09-10 01:22:13 +00:00
Zack Middleton c65142179f Fix g_warmup < 2 causing client prediction issues (bug #5740). (Reused code for tournament gametype.) 2012-09-09 22:14:15 +00:00
Zack Middleton e3fc1826b1 Send team info for team overlay to spectators for the team of the client they're following (bug #5740). 2012-09-08 23:19:06 +00:00
Zack Middleton 56ebe14239 Don't have g_teamAutoJoin affect bot's team
Bots set their team later, setting it here causes some bots to change team and die later. Can cause extra skulls to be spawn at beginning of harvester (bug #5740).
2012-09-08 22:32:41 +00:00
Zack Middleton b4a76e74f7 Remove a redundant code statement. 2012-09-04 21:13:25 +00:00
Zack Middleton 1aaf9d3e7b Use correct fallback height and width for r_mode -2. 2012-08-27 15:38:55 +00:00
Zack Middleton 42d3ff8d1d Added r_mode -2, uses desktop resolution. Bug #5408. Patch by Andrei Drexler and myself. 2012-08-27 14:52:41 +00:00
Zack Middleton a3ae0dc5ef Removed a check that was made unnessicary by r1644. 2012-08-24 18:04:44 +00:00
Zack Middleton dc8b48855d More MISSIONPACK ifdeffery. 2012-08-17 19:05:40 +00:00
Zack Middleton 9a69b738bf Added MISSIONPACK ifdef around GT_1FCTF code. 2012-08-17 06:18:37 +00:00
Zack Middleton b82c02fc03 Don't replay to status OOB requests in Team Arena single player. 2012-08-16 21:38:02 +00:00
Thilo Schulz 027ea8d6d3 Oops, still need this 2012-08-08 09:42:33 +00:00
Thilo Schulz ffac0e6757 Move argument passing from VM to engine to global variables which allows to get rid of lots of OS specific stuff and also fixes errors that happens when compilers add lots of boilerplate to the DoSyscall() function 2012-08-08 09:34:03 +00:00
Thilo Schulz ded2b11959 Fix this for real now. 2012-07-23 21:27:17 +00:00
Tim Angus 88cbeae0fd * Fix warning 2012-07-07 18:24:20 +00:00
Thilo Schulz 053aa8ead7 Fix windows as well 2012-07-07 18:22:19 +00:00
Tim Angus 37f2b4db90 * (bug #5709) Fix crash when invoked with --version 2012-07-07 17:32:19 +00:00
Zack Middleton 79bb668a9f Fixed G_LogPrintf format warning on 64 bit systems added in r2294. 2012-07-05 13:42:08 +00:00
Zack Middleton 2cfda4384b We should not try to broadcast via the IPv4 socket if that socket is closed.
Previously, error messages were generated when querying local servers while IPv4 was disabled. Patch from /dev/humancontroller.
2012-07-05 13:33:55 +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 2c0b262a5a Mark JPEG lib changes, file provided by Simon McVittie 2012-07-01 18:07:56 +00:00
Thilo Schulz b757968839 Support for .pk3dir (#5298) - Patch by Andrew (dersaidin@gmail.com) 2012-07-01 18:00:18 +00:00
Thilo Schulz 56f16e10d6 Various bugfixes by Tobias Kuehnhammer (#5270)
- A stupid bug where bots re-trigger jumppads if they fell onto it.
- A small "memset" bug concerning player animations.
- Reward sounds were never cleared and thus they are played on a map restart.
- Safer and more secure handling of disconnected clients and clients with 
  malformed or illegal info strings.
- first_gauntlet_hit.wav was not played (ops/ps) bug
- capturelimit not hit (from OAX)
2012-07-01 17:27:52 +00:00
Thilo Schulz 1af9c636a5 r_ignorehwgamma 1 does not actually turn on software gamma (#5511) - patch by Serge Belyshev 2012-07-01 17:01:30 +00:00
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
Thilo Schulz 5c4813da51 Add forced VM unloading to Com_Quit_f 2011-06-25 09:05:57 +00:00
Thilo Schulz 88f1fc7500 Fix ipv6 server query 2011-06-25 00:17:44 +00:00
Thilo Schulz eda3faccea Fix grenade rotation ends always the orientation (#5053), patch by Eugene C. 2011-06-24 13:15:03 +00:00
Thilo Schulz 23ceb05c87 Correct fix to (#5051), patch by Roughael 2011-06-24 13:10:45 +00:00
Thilo Schulz 19f54e5400 Allow recursive VM entry for VM operations as well 2011-06-23 00:00:27 +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 664f8e578d - align sse control word storage space to 16 byte boundary for snapvector
- replace some whitespace with tabs in snapvector.c
- Give gcc a bit more freedom in choice of registers
2011-06-22 14:36:11 +00:00
Thilo Schulz d9ea902c31 Fix by Laurent Desnogues for my feeble attempt at a fix 2011-06-21 19:33:02 +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 95691ded36 Fix x64 compilation on MSVC 2011-06-21 12:32:43 +00:00
Thilo Schulz 6a3142d2c1 Fix to (#5051) - strchr in GraphicsOptions_GetAspectRatios() might return NULL for some strange reason 2011-06-21 11:45:34 +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 adc143e050 Bug 5048 - Entity constant light does not work correctly, bug found by Eraesr (Eraser?) 2011-06-18 14:52:16 +00:00
Thilo Schulz 055bd3b464 Bug 5047 - Win32 dedicated server console title should use define, patch by Zack Middleton 2011-06-18 14:30:20 +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 b8f81e8065 Fixes for bugs introduced in last several revisions 2011-06-16 22:50:33 +00:00
Thilo Schulz dc24d7649c patch by Zack Middleton (#5044)
- Fix a few comments in tr_local.h
- A bit of refactoring of the cpp macros
2011-06-16 22:28:13 +00:00
Thilo Schulz fe1853477e Fix #lese in last commit 2011-06-16 22:20:03 +00:00
Thilo Schulz 77d764c457 Patch and description by ensiform (#5043):
This patch moves cg_particles.c out of cg_marks.c to the actual file that was
already there but not used.  By default WOLF_PARTICLES definition is commented
out if someone wants to use the old cg_particles.c changes.  cg_particles.c has
been added to the makefile and msvc projects.
2011-06-16 21:58:46 +00:00
Thilo Schulz 16d2ab5f8b Patch from Tremulous / description from Zack Middleton: (#5041)
Clear game logfile handle after closing file.

Game does not clear logFile handle when closing file. Might be an issue if
G_LogPrintf is called after this.

Patch from tremulous http://svn.icculus.org/tremulous?view=rev&revision=2041
2011-06-16 21:53:41 +00:00
Ludwig Nussel d8b7532fc1 remove static VM_BlockCopy from vm_powerpc 2011-06-16 08:09:06 +00:00
Thilo Schulz 8b7870b81f Fix wrong macro. MSVC win32 build should work again now. 2011-06-16 02:01:13 +00:00
Thilo Schulz 7ac6b087af Use Q_ftol for vm_interpreted 2011-06-16 01:26:17 +00:00
Thilo Schulz 83522282f1 Various fixes to vm_interpreted.c:
- Add opStack protection
- Fix dataMask check for OP_BLOCK_COPY
- Add instruction number check for conditional jumps
- Make errors in VM_PrepareInterpreter nonfatal
2011-06-16 01:11:45 +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 1ff28b3b2e Need space of len+1 for snprintf to work 2011-06-15 16:26:51 +00:00
Thilo Schulz f981087d7a - Merge http://svn.icculus.org/tremulous?view=rev&revision=2185, patch by Chris Schwarz
- Remove Q_snprintf as Com_sprintf exists already
2011-06-15 15:31:37 +00:00
Thilo Schulz a447aa82af Fix #if macros for idx64 and id386 2011-06-15 14:10:20 +00:00
Thilo Schulz 001cdf4497 - mingw64 now links against SDL64.dll to allow for 32 and 64 bit version in the same directory
- Add library files for MinGW64
2011-06-13 15:47:43 +00:00
Thilo Schulz 206edd3419 - Still forgot qasm-inline.h
- Leave GCC more freedom in choice of registers
2011-06-13 11:07:13 +00:00
Thilo Schulz 04821a529d Forgot the inline assembler parts, here they come! Using inline asm to get rid of all the boilerplate stuff 2011-06-13 10:54:37 +00:00
Thilo Schulz bb8f40531b - Fix macro that uses constant float suffix as argument
- retval variables in ftola.c must have type long, not int
2011-06-13 10:39:42 +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 471182cba0 Add static SDL libraries for compilation with MSVC 2011-06-12 15:28:44 +00:00
Thilo Schulz c2b7f5173f Fix forgotten IQM2 support in iqm.h, patch by Zack Middleton 2011-06-11 20:20:30 +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 45f576bd99 Bug 5036 - Grappling hook does not load trail shader, patch by Zack Middleton 2011-06-11 15:29:57 +00:00
Thilo Schulz 8ec565b58e Bug 5035 - Automatically selecting player model in q3_ui does not work if skin is not specified, patch by Zack Middleton 2011-06-11 15:26:36 +00:00
Thilo Schulz b96c1c8279 Fixes to IQM support, by Zack Middleton
- Bug 5029 - IQM skin support for upper case surface names
 - Bug 5030 - IQM version 2 support
 - Bug 5031 - Animated IQMs cause segfault
 - Bug 5032 - IQM does not setup tag axis/origin correctly
 - Bug 5033 - IQM bounds swap and segfault issues
2011-06-11 15:16:25 +00:00
Thilo Schulz 7a4ce592a4 - Adapt MSVC project files to new libjpeg, fix by Guillaume Bougard and cyrri
- add tr_model_iqm.c to MSVC project, by cyrri
2011-06-06 21:15:42 +00:00
Tim Angus b921058a9f * Remove misleading comment 2011-06-06 16:55:38 +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 eec06674fa (#5016) - Calls to trap_CM_PointContents don't update their origins based on moving entities (water). Patch by Ensiform 2011-06-06 15:05:10 +00:00
Thilo Schulz bd2b704c91 OpenBSD compile fixes, patch provided by Jonathan Gray (#4994) 2011-06-06 14:59:54 +00:00
Thilo Schulz e676b41c8f Fix wrong usage info message for cmd dumpuser, patch by Zack Middleton (#5024) 2011-06-06 14:54:18 +00:00
Thilo Schulz 0c43133695 Properly fill in occurances of "foobar" in GPL file headers, patch by Zack Middleton (#5024) 2011-06-06 14:52:49 +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 71b8fe477d - Use EmitCallDoSyscall() to call the jump violations function which guarantees 16-byte stack alignment
- Add x64 code for MSVC _asm() blocks, not tested yet.
2011-06-06 14:29:45 +00:00
Thilo Schulz c174143dc2 - Add x86_64 support to vm_x86.c
- Fix warning on mingw64
2011-06-01 15:17:18 +00:00
Thilo Schulz 3e229af710 Fix is*() functions for windows where long value is 4 bytes 2011-06-01 01:50:19 +00:00
Thilo Schulz eedccac818 Fix compilation on mingw64 2011-05-31 20:47:18 +00:00
Thilo Schulz bd8d60f55c Add instruction number checks to jumps and calls to SPARC VM, patch by David Miller 2011-05-24 19:46:52 +00:00
Thilo Schulz 4b1418c4ad - Implement opStack protection: Use register %ebx for scaled indexed addressing mode to access opStack, make opStack push/pop operate on %bl portion only
- Add a third pass to VM compilation for computation of jump address offsets, removing the need to dereference into vm->instructionPointers[] for every call/jump
- Make use of 0F opcode prefix relative jumps
- Call Com_Memcpy for OP_BLOCK_COPY
- Fix several missing range checks for vm->dataBase memory access
2011-05-23 00:46:46 +00:00
Thilo Schulz e08299faf4 - Do assignment of value 0xDEADBEEF after the 4-byte alignment
- Add all GPR to clobber list as GCC function callAsmCall seems to change register r11 without saving it to stack first, which may result in SIGSEGV in VM_CallCompiled()
2011-05-23 00:36:27 +00:00
Thilo Schulz b8ef880d85 I don't seem to get these constraints right. This should fix it 2011-05-19 03:47:35 +00:00
Thilo Schulz a42239e1e5 Fix VM call for release version, bug introduced by myself in r1994 2011-05-18 16:06:08 +00:00
Thilo Schulz 61d6e6eb68 Use scaled indexing mode n=4 for addressing opStack, this way we can use the 8 bit offset value in %%bl to address an OPSTACK_SIZE of 1024 which was the old value. 2011-05-18 00:17:02 +00:00
Thilo Schulz 3f9ec83ce0 - Use edx for CALLs instead of ecx, as the latter does not require any push to stack
- Make Linux AT&T asm code consistent with the MASM codeblock
2011-05-17 12:07:56 +00:00
Thilo Schulz c7a68bf283 - Set default opStack size to 256
- Fix integer wraparound. opStack offset in rbx will always be >= 0
2011-05-16 18:17:01 +00:00
Thilo Schulz 5aa3da2f84 - Fix SEGV in while loop getop() after t = b = 0
- Fix iss8, iss16 and iss32 which would not correctly detect 32-bit signed integer range
- Add support for "addb", "subb" etc. assembler mnemonic
- Change opStack protection for x86_64 VM: No overflow checks necessary anymore as offset register is 1 byte long only
2011-05-16 17:55:07 +00:00
Thilo Schulz 558ed62771 0 --> NULL 2011-05-15 14:58:56 +00:00
Thilo Schulz 01ed417ee1 Optimise VectorNormalize functions, patch by Matt Turner 2011-05-15 14:55:47 +00:00
Thilo Schulz b003422d92 - Fix lokisetup makefile problems
- Bump version number to 1.36
2011-05-15 14:49:38 +00:00
Thilo Schulz 3cdfb7aea8 Refactor and bugfix COM_*Extension functions, patch by DevHC 2011-05-15 14:11:26 +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 3ddc59a3ba move MIN/MAX definition, use MIN() instead of min(), patch by DevHC 2011-05-15 13:27:24 +00:00
Thilo Schulz 017bc7e5da - Add vm_x86.c optimization patch by Eugene C.
- Remove ASM syntax specific code (AT&T vs MASM) for OP_CALL and replace with machine code
2011-05-15 13:15:14 +00:00
Thilo Schulz 3125035c23 Fix typecast 2011-05-14 20:24:34 +00:00
Thilo Schulz 315632e821 Make bg_lib.c strchr ANSI-C conformant 2011-05-14 14:55:54 +00:00
Thilo Schulz 716caf396e - Reverting accidentally committed vm_x86.c
- Last commit contained some refactoring for vm_x86_64.c
2011-05-14 14:39:48 +00:00
Thilo Schulz 30059eb8ce ensure that ent->classname is always non-null (for entity numbers up to level.num_entities-1, and ENTITYNUM_WORLD and ENTITYNUM_NONE), for player entities and #ENTITYNUM_NONE in particular, patch by DevHC 2011-05-14 14:34:18 +00:00
Thilo Schulz 4b9ab42c2c Remove newlines from Com_Error calls, patch by DevHC 2011-05-14 14:32:43 +00:00
Thilo Schulz 4cfb7d376b Ffffuuuuuu I don't even know.... 2011-05-14 14:28:31 +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 c65234328a DevHC messed up 2011-05-11 14:33:12 +00:00
Thilo Schulz a9696d3558 Refactoring patch by DevHC 2011-05-11 14:21:27 +00:00
Thilo Schulz 86d96f12b9 Fix one byte overflow 2011-05-10 16:26:11 +00:00
Thilo Schulz 4374ff6ce9 Fix spawnflag behaviour for trigger_hurt, patch by DevHC 2011-05-10 11:11:37 +00:00
Thilo Schulz 9706e6ca29 whoops, that one was not Com_Error() 2011-05-10 10:18:07 +00:00
Thilo Schulz d0a095396e - Remove newlines in Com_Error()
- Update register description
2011-05-10 10:07:34 +00:00
Thilo Schulz a7ea395bd0 Add opStack protection to defend against malicious QVMs 2011-05-10 09:14:49 +00:00
Thilo Schulz 5f63ab9160 Choose better alignment for heavy-duty rendering structures, patch by Matt Turner (#4981) 2011-05-09 23:39:40 +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 2eb9975334 Fix nasty crash bug 2011-05-09 21:47:41 +00:00
Thilo Schulz 36314a1622 Add error handling to malloc as well 2011-05-09 15:40:30 +00:00
Thilo Schulz 2e3c902da9 fix overzealous cvar cheat protection, patch by cyrri (#4974) 2011-05-06 11:50:26 +00:00
Thilo Schulz 2ae1bf3dcd IQM skin support and print limit info, make other limit info consistent, patch by Zack Middleton (#4978) 2011-05-06 11:43:07 +00:00
Thilo Schulz 45824008d9 Remove C99 code constructs from IQM code, patch by gimhael (#4974) 2011-05-05 13:33:43 +00:00
Thilo Schulz 876fd7dcb9 - Add HOMEPATH default name define to q_shared.c, patch by uZu (#4973)
- Reverted change from (#4972) and implemented the other suggestion to be consistent with cl_cgame.c and cl_ui.c
2011-05-04 15:39:35 +00:00
Thilo Schulz 1062c1b87b Do use the SV_Game{Error,Print} functions (#4972) 2011-05-04 14:51:56 +00:00
Thilo Schulz bd2f6dbf05 [23:59:05] <ZTurtleMan> Thilo: altName (created using va) does not point to model filename in developer-only printf as va is used to load images before the printf. http://pastebin.com/1KCjz6Ct 2011-05-02 22:01:39 +00:00
Thilo Schulz d37b2da593 - Add licence headers to new files
- Add patch from Zack Middleton which fixes a few issues still
2011-05-02 20:30:14 +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 50721a6580 Remove sv_strictAuth cvar for STANDALONE games 2011-05-02 15:58:56 +00:00
Thilo Schulz b97a7e2583 Fix out of bounds array index (#4960) patch by Ben Millwood 2011-05-02 15:57:02 +00:00
Thilo Schulz bd9485f597 Do not retry image loader for image that failed, patch by Zack Middleton (#4968) 2011-05-02 15:53:20 +00:00
Thilo Schulz c5e2654b54 - Add Inter-Quake Model (IQM) Format support, patch by gimhael with minor modifications by myself (#4965)
- Changed model_t::md4 to model_t::modelData
- Fix R_ModelBounds for MD4, MDR and IQM models (#4966)
- Support Model format fallback similar to image formats in tr_image.c, patch by Zack Middleton (#4967)
2011-05-02 15:50:19 +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 06d12f6085 Replace a few numeric constants with already defined macros, patch by ZTurtleMan 2011-04-26 09:48:40 +00:00
Thilo Schulz a0582fb21a Fix a little quirk still 2011-04-26 02:32:05 +00:00
Thilo Schulz 797d127dfc Use memcmp instead of self-built while loop 2011-04-26 02:30:12 +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 5769bed4a3 Make Sys_SetEnv behave alike on Windows and Linux 2011-04-18 00:39:15 +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 e5c210236c Fix a few comments (#4591) 2011-04-13 23:42:55 +00:00
Tim Angus 01a274baf7 * Actually call Sys_PlatformExit 2011-04-09 12:33:56 +00:00
Thilo Schulz 31ec563999 Fix player queueing for tournament play (#4939) 2011-04-07 23:41:32 +00:00
Tim Angus 806a849bf2 * Fix jpeg warnings 2011-03-30 22:23:58 +00:00
Tim Angus 52ead6fa36 * Crash recovery for com_pipeFile (Lakitu7) 2011-03-30 21:58:31 +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 c1d8a260ae Fix dynamic lighting for moving world surfaces. Patch by gimhael, thx 2011-03-14 17:25:20 +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 1b27ae23c1 include vm_local.h in vm_powerpc_asm.c
Patch by Simon McVittie, bug 4930
2011-03-13 16:54:41 +00:00
Ludwig Nussel 55369f9535 add missing jconfig.h 2011-03-13 16:17:06 +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 0c10adaf92 - Migrate to jpeg-8c
- Add possibility to link against system libjpeg
2011-03-12 16:45:15 +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 641256f7f0 strtod exists in bg_lib.c now so Q_isanumber will work in the VMs, too. 2011-03-11 13:51:36 +00:00
Tim Angus a9830934ba * Fix misplaced ; in MSVC _vsnprintf wrapper 2011-03-10 22:06:55 +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 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 e5cec15fbf Fix bug where Com_StartupVariable would set CVAR_USER_CREATED on already existing cvars 2011-03-09 22:50:06 +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 37727b892c Rename cvar "in_joystickThreshold" to "joy_threshold" as QVMs use the latter name. 2011-03-08 02:14:39 +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 657c791257 Zack Middleton made me do it 2011-03-08 01:37:28 +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 97ed3650d7 Make Video settings menu revert some settings to default values via Cvar_Reset() instead of hardcoded values (#2589) 2011-03-07 23:07:24 +00:00
Thilo Schulz dd0161f475 Add in_availableJoysticks to list usable joysticks, similar to s_alAvailableDevices. Some parts of the patch provided by Zack Middleton 2011-03-07 22:56:03 +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 21668c0616 Fix systeminfo command, fix by DevHC 2011-03-05 19:11:56 +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 3639108763 Also send empty valued system cvars, fix proposed by DevHC 2011-03-05 19:07:56 +00:00