Commit graph

2142 commits

Author SHA1 Message Date
SmileTheory
bff574e04e #5878: Ensure surfaces are drawn before executing full-screen render commands, and when at the end of the render command list. 2013-02-12 20:53:59 -08:00
Zack Middleton
c0d5ba9e06 Fix compiling 2013-02-11 20:45:17 -06:00
Zack Middleton
91194bfc3e Fix possible delta from invalid entity 2013-02-11 20:36:14 -06:00
Zack Middleton
62cef99b28 Extend Team Arena name edit fields to MAX_NAME_LENGTH 2013-02-11 19:51:36 -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
Zack Middleton
c9137d9d14 Update invalid g_gametype right away 2013-02-11 16:43:18 -06:00
Zack Middleton
50e85b23b3 Remove newlines from Rend2 error messages 2013-02-11 16:37:00 -06:00
Zack Middleton
eab1f9720a Add missing traps to cg_local.h 2013-02-11 16:28:41 -06:00
Tobias Kuehnhammer
2147f2b7c2 Adds Z checking to CanDamage function. 2013-02-11 16:02:01 -06:00
Zack Middleton
ac621642ac Unify/cleanup max snapshot entities on client and server 2013-02-11 15:49:47 -06:00
Zack Middleton
d815052df0 Fix renderering TrueType Fonts in Rend2
Reported by Axel Isouard (exidl)
2013-02-11 14:33:38 -06:00
Zack Middleton
75598f1a2b Fix IPv6 favorites in q3_ui
This does however allow favorites to contain hostnames which was explicitly not allowed before.
2013-02-08 18:11:03 -06:00
Zack Middleton
81f92fe7f0 Extend Team Arena Favorite Address edit field to hold an IPv6 address 2013-02-08 18:10:22 -06:00
Zack Middleton
7b34987823 Fix resolving IPv6 favorites in Team Arena UI 2013-02-08 16:47:27 -06:00
Zack Middleton
2b7bf5b37e Merge branch 'master' of https://github.com/ioquake/ioq3 2013-02-07 21:04:28 -06:00
Zack Middleton
7ccdff6e12 Fix creating favorite when not on view favorite servers 2013-02-07 21:03:33 -06:00
Zack Middleton
fe47952bf5 Increase favorite address buffer size in Team Arena UI
Now it can hold an IPv6 address.
2013-02-07 20:55:51 -06:00
SmileTheory
649f0c351f Merge branch 'reactionmerge' 2013-02-04 20:34:58 -08:00
SmileTheory
9bace5bac7 Merge Reaction renderer features, remove "#ifdef REACTION"s 2013-02-04 20:33:58 -08:00
Zack Middleton
80b0792980 Remove MSG_WriteDeltaUsercmd and MSG_ReadDeltaUsercmd 2013-02-02 22:26:22 -06:00
Jeremy Davis
617107429d Use Q_strncpyz in G_AddRandomBot 2013-02-02 21:58:01 -06:00
Zack Middleton
9c741f95ea Remove some unused defines from msg.c 2013-02-02 21:40:03 -06:00
Zack Middleton
b4ad5a8411 Fix MSG_ReadDeltaKey setting bit 1<<bits often
MSG_ReadDeltaKey would often set 1<<bits, it should never be set. It exceeds the size of what was being read.
Worked okay for weapons/forward/right/up as they stored as chars (value would wrap around to correct value, lucky).
Angles had the wrong value, not sure if it was causing issues.
2013-02-01 22:07:52 -06:00
SmileTheory
cda1c46e3a Merge branch 'HEAD' of https://github.com/ioquake/ioq3.git into suntest 2013-01-30 17:28:34 -08:00
SmileTheory
974b938f8f Starting sunlight experimentation branch 2013-01-30 17:27:36 -08:00
Tim Angus
b9355c5f12 The in_mouse stuff makes no sense in SDL2 2013-01-28 09:25:38 +00:00
Tim Angus
51df89ab13 Remove the SMP renderer feature 2013-01-24 22:53:08 +00:00
Tim Angus
b43f766141 Update bundled SDL headers/libs 2013-01-21 22:40:05 +00:00
Tim Angus
42586b782b Improve console key situation 2013-01-21 22:20:15 +00:00
Tim Angus
9b8711d2e1 Fix wacky patch for r_ignorehwgamma 2013-01-19 21:39:35 +00:00
Tim Angus
aaea838d39 Convert SDL text input to UTF-32 2013-01-19 21:35:09 +00:00
Tim Angus
3105d62027 Allow hardware gamma, in theory 2013-01-18 21:53:37 +00:00
Jeremy Davis
3f489fe5f2 Make UI_CVAR_CREATE use VM specific code
Makes cvar be flagged as VM created and unset ROM if ARCHIVE is set.
2013-01-17 15:21:29 -06:00
Tim Angus
61ed67bd1a Make the mousewheel work 2013-01-17 19:04:27 +00:00
Tim Angus
f478761e07 Use SDL 2 instead of SDL 1.2 2013-01-17 18:20:03 +00:00
Zack Middleton
9c701a781b Run toggleconsole in binds while in menu or message mode 2013-01-16 23:06:35 -06:00
Zack Middleton
4ba14425ed Add togglemenu to q3_ui controls menu 2013-01-16 23:04:50 -06:00
Zack Middleton
bf2b04254a Add togglemenu command
Allow togglemenu to be run in binds while in menu or message mode.
2013-01-16 23:03:09 -06:00
Jeremy Davis
4de32b1c1a Fix error message in BG_EvaluateTrajectory 2013-01-14 14:50:12 -06:00
Jeremy Davis
76f906703e Fix error message in BG_EvaluateTrajectoryDelta 2013-01-14 00:22:57 -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
693e51c654 Remove old FIXME, pmove_framecount isn't networked 2013-01-11 17:29:39 -06:00
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
Thilo Schulz
2e2e54e3c5 Fix quirk reported by Zack Middleton 2011-03-04 21:51:34 +00:00
Thilo Schulz
75cd136c44 (#4922) Use screenYScale, not screenXScale, for scaling Y, by Zack Middleton 2011-03-04 20:32:03 +00:00
Thilo Schulz
b764150a97 (#4291) Redundant statement in client console, by Zack Middleton 2011-03-04 20:29:24 +00:00
Thilo Schulz
0b538a929e (#4919) Extra variable in missionpack ui's bind_t structure, by Zack Middleton 2011-03-04 20:26:57 +00:00
Thilo Schulz
8bdd8e6705 (#4918) Gametype clamping using constant integer in missionpack ui, by Zack Middleton 2011-03-04 20:23:29 +00:00