Commit graph

133 commits

Author SHA1 Message Date
Spoike
d6d0105d3c A couple of changes.
Added a higher quality particle config.
Quick hack for crepuscular rays.
added new command, eg: pr_dumpplatform -FFTE -O csplat
used package reporting on servers, auto package downloading on clients, should be fully implemented.
Smoothed out players a little. Added option to menus.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3926 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-12-05 15:23:40 +00:00
Spoike
6398930473 Fixes bugs found by xonotic team ('0 0 0' being overlapped with globals, initialisers not being marked as referenced, fixed macro argument expansion to not crash when given long values).
Enables compilation of 'float foo=5;float foo=5;' (similarly functions, fields are never initialised anyway, the dupe is ignored so long as the initialisation is the same).
Fixed an offset bug with arrays stored within typedefed structs.
Fixed int += int to not require an explicit addstore operand.
Added support for ! operator in #if statements, as well as fixing a couple of other issues there, should be much more usable.
Added 'optional' keyword when defining function arguments. All trailing arguments must have it too. This allows stricter type checking with functions that take optional arguments.
Removed warnings with __variant types.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3921 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-11-08 06:00:35 +00:00
Spoike
f33873ddb7 committing for fixes for OMC
some minor changes. Mostly bug fixes and internal reorganisation.
Added code to provide an activex control as part of the npfte.dll plugin. If the dll is registered the regsvr32 way, the plugin can be used with IE as well.
fisheye/panoramic view enable is now controlled by rulesets instead of serverinfo.
server will list all pak files it has loaded. client will probably do the wrong thing and still needs fixing properly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3910 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-27 16:16:29 +00:00
Spoike
50a8624f59 no dupe _("") stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3908 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-06 19:59:53 +00:00
Spoike
f3bbed043b Some qcc changes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3905 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-03 02:45:44 +00:00
Spoike
6236971e48 Fix a couple of recent bugs in features that noone else uses.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3900 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-09-06 20:59:08 +00:00
Spoike
e8c1f669cc Couple of changes.
D3D now supports hlsl shaders. Much functionality is still missing, but sky and water surfaces are in.
IQM models now supported.
Engine physics code is now potentially callable from csqc, but there are some issues which need to be resolved before its enabled.
FTEQCC has had some pointer/struct/array functionality improved. Complex trees can now be navigated properly.
added r_dumpshaders command to dump internal glsl scripts for editing.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3896 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-09-03 03:49:43 +00:00
Spoike
261b104c09 Added a cvar to enable recording mvd files containing 'unsafe' extensions, so CSQC ents can now be recorded. This defaults to off, and is expected to be enabled for mods that are truely FTE only.
Recording qwd files works again.
Not all extensions are fully implemented, when recording both mvds and qwds, particularly the initial connection info (including model list length).
Ezquake's invalid chunk requests generate no protocol response. Ezquake should no longer kick itself after every download.
Couple of other bugs fixed.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3893 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-08-16 04:12:15 +00:00
Spoike
729d6181c2 Misc bugfixes, including q3bsp-rtlights and bloom. Matrix use clarifications. Working towards skeletal glsl code.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3890 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-30 14:14:56 +00:00
Spoike
f6856f7d2d Changed internal opcode names to always specify variable type.
The x86 jit appears to work properly after quick tests. Needs wider testing. Currently disabled still.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3857 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-08 18:59:48 +00:00
Lance
f6741d8dde My attempt at handling GCC warnings, everything but incorrect pointer types, #pragma warnings, " is deprecated etc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3787 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-15 13:23:13 +00:00
TimeServ
2091c2f83e accept trailing comma with enum and enumflags
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3786 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-03 22:37:56 +00:00
Spoike
fcb7dbd04b Cleanups, wine fixes, generic stuff, added makefile directive for use of gccs -combine option.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3753 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-12 13:51:40 +00:00
TimeServ
2fba86e3a0 progs version 3 support in qclib, attempt fix qtest traceline
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3745 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-04 13:59:06 +00:00
Spoike
ec206be55a divVerent's patch to enable subscoped locals, not sure if subscoped_away is required, but committing that anyway. Its copied from pastebin, so sorry for conflicts.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3705 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-22 00:33:19 +00:00
Spoike
3a413ede89 divVerent's patch to fix += operations involving function calls.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3704 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-22 00:13:49 +00:00
Spoike
ce07219448 Fixes, workarounds, and breakages. Hexen2 should work much better (-hexen2 says no mission pack, -portals says h2mp). Started working on splitting bigcoords per client, far too much work still to go on that. Removed gl_ztrick entirely. Enabled csprogs download by default. Added client support for fitzquake's 666 protocol, needs testing, some cleanup for dp protocols too, no server support, couldn't selectively enable it anyway. Now attempting to cache shadow meshes for explosions and stuff. Played with lightmaps a little, should potentially run a little faster on certain (intel?) cards. Tweeked npfte a little to try to avoid deadlocks and crashes. Fixed sky worldspawn parsing. Added h2mp's model format. Fixed baseline issue in q2 client, made servers generate q2 baselines. MOVETYPE_PUSH will not rotate extra if rotation is forced. Made status command show allowed client types. Changed lighting on weapons - should now be shaded.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3572 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-11 03:36:31 +00:00
Spoike
03bf08c0be Added -ffiletimes argument, which will cause fteqcc to ignore the compile if there were no changes. May be incompatible with some other features.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3557 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-18 10:01:57 +00:00
Spoike
244c08ad04 Attempted to add support for divVerent's varlen protocol extension info. This is more silencing warnings than anything else.
Also tweeked video code to remove 6 dead sw-only functions.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3556 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-18 08:42:59 +00:00
Spoike
0b1e3020d3 Trying to kill a few warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3542 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-11 10:53:13 +00:00
Spoike
e6f90bea14 Tweeks to the d3d renderer. Supports various shader features now. Other changes/fixes/breakages also.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3531 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-05-01 22:47:47 +00:00
Spoike
d0d380a19a Attempting to reduce the absurdity of ent.field[idx]=foo in fteqcc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3524 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-03-26 03:29:44 +00:00
Spoike
589ef03c05 FTE, now with added C support - no longer treating enums as regular ints.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3509 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-02-06 01:25:04 +00:00
Spoike
79a45e1a19 __NULL__ no longer triggers deprecation warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3423 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-07 04:34:32 +00:00
Spoike
66b78c0b11 Work In Progress branch.
In this version: replacement GL backend. Replacement D3D backend sharing code with GL. Lots of code reorganisation.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3401 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-04 21:16:50 +00:00
Blub
fbf5e5b627 OP_MULSTORE_V is actually vec*float, so translate it to OP_MUL_VF instead of OP_MUL_V - this allows the direct use of vec *= float
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3375 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-09-18 18:39:11 +00:00
Blub
e197253558 -Ocj must take OP_GOTO into account
this removes the unreachable-code warning when using 'break' at the end of an
if block within a loop


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3366 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-09-02 13:22:32 +00:00
Spoike
59d474b547 don't use -fiffloat by default due to the performance hit. but always force it to be active if we have an actual OP_IF_F instruction in the target.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3362 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-29 19:44:58 +00:00
Spoike
f62dc94d87 You can kill me now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3351 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-29 15:07:08 +00:00
Spoike
2158389bef Added IF_F instructions.
Added -fassumeint so constants are by default ints instead of floats (like in C). Use a decimal point and it'll be a float.
Fixed a couple of omissions/bugs reported by Blub.
Added lame x86 jit which is still buggy, incomplete, and disabled. And bigfoot will hate it.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3349 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-29 14:56:42 +00:00
Spoike
2513254510 My god, was I asleep when I did that?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3251 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-09 18:31:43 +00:00
Spoike
3b8c5d74bc I wonder how many more bugs there are left for Blub to find.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3235 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-05 21:44:17 +00:00
Spoike
2b58210060 Bugfixes courtesy of Blub:
Fixed new line counting in multi-line comments.
Fixed unary operators to favour a single term, except for the unary not operator.
Added:
Unary not operator warns whenever it consumes more than a single term.
Added more ways to optimise logic (a+0 = a).


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3232 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-03 19:02:42 +00:00
Spoike
1c985c65d2 and a bit more
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3221 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-06-13 12:25:39 +00:00
TimeServ
740f4a09f9 actually apply fteqcc intrinsics patch http://stud4.tuwien.ac.at/~e0725517/patches/fteqcc_fix_intrinsics.diff
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3204 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-05-24 18:56:05 +00:00
Spoike
9cd988a836 Added csqc->ssqc requests.
Fixed up cl_indepphysics. Sending is fully independent, bar sync points.
Fixed so #if 0 works in qc code.
Fixed up error conditions in qclib when features are not supported.
The webpage generator will now refcount properly.
Fixed error conditions when using glsl shaders.
If MULTITHREAD is defined, r_loadlit will not light inside a separate thread.
We now generate VBOs for bsp objects. Shaders/rtlights don't use them yet.
Fixed up MVD/multiview playback a bit. It now looks like it works! (cl_hightrack will no longer track the same person in all views).
Fixed error conditions when attempting to download versioned csprogs.
Reduced the number of places that a q3-style marked up string is expanded. I think there are a couple places left still though. Approximated ezquake colour codes.
Memory mapped read file access in win32, where we can. Not sure about this. Lets see how things pan out.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3195 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-05-24 10:11:17 +00:00
Spoike
ff22785542 Should fix certain compiler issues reported to me by Blub\0, found when compiling nexuiz code. This is Blub's fix.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3189 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-05-11 00:17:31 +00:00
Spoike
5f1a9d8cbf added cprint console command.
fixed nq client loading-screen persisting bug
fixed nq clients getting flooded by packets.
fixed nq clients not receiving any entities
removed a bit of redundant code in pmove
fteqcc: merged array function calls with real function calls, fixing return values in the process.
vid_preservegamma now defaults to off. windows sucks.
tweeked the prototype FTE_CSQC_SKELETONOBJECTS a bit. still not official nor advertised.
added a little bit more functionality to halflife support
csqc got some pmove tweeks. this is how I want it to work. nothing has been changed that is really incompatible with darkplaces in this commit.
added markers around some ext_csqc_1 features.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3178 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-19 00:50:42 +00:00
Spoike
262bc69548 So I can define globals/functions as static.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3147 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-03-29 23:47:29 +00:00
Spoike
dce284811e Minor update...
Q3 clients can connect to q1 gamecode (sv_listen_q3).
hacked support for SendFlags. It'll work compatibly, just not efficiently.
Unified shared qc builtins.
fteqcc supports int |= float, more params in macros, &~= operator.
Additional recent DP QC extensions.
Particle system abstraction. 'r_particlesystem classic' (vs null or script) will revert to truly classic particles.
Nexuiz might run again.
Network address revamp (sv_port and sv_port_ipv6 can both be used to specify an ipv4 address:port and both corrently accept clients). localhost now properly favours ipv4 (use ::1 for ipv6 localhost).
Download system revamp.
Numerous other changes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3051 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-09 22:29:28 +00:00
Spoike
819d541362 local float blob = someformula; works now.
added support for -TDP (and #pragma TARGET DP). It is identical to -TFTE except for the instructions used. To be used with Blub's patch when he commits it for DP. It should allow more, this is a first-version.
#if defined(A) && defined(B) will also work as expected. Careful with nesting however, as complex formulas will not. Please use only a single operator.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3047 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-10-16 23:04:36 +00:00
Spoike
0629d013b5 Fixed bug causing parameter conflict in statements like func(array[idx], func2(blah))
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3043 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-10-13 09:17:47 +00:00
Spoike
0a4c047eec Greater internal control over which variables are saved. Fixed a bug regarding temps and array references, which a couple of the nexuiz people found but didn't report (personally I found it was needed to be able to fire, but whatever).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3037 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-10-05 02:55:01 +00:00
Spoike
7c6f37c4ae Yes Blub, I suck.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3026 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-07-17 07:41:59 +00:00
Spoike
887a278bce patch from Blub\0 to fix issues with compiling:
b = min(a, b);
with -TFTE active.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3024 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-07-10 20:38:17 +00:00
Lance
8c6dccbb70 BlackHC's patch to add support for \ (backslash) in macros
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2879 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-26 18:32:41 +00:00
Spoike
d591079731 Fixes Black's latest bug. Ensure saved return values are in a locked temp, and not corrupted by the following function call.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2874 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-23 15:54:36 +00:00
Molgrum
0f02f12b8b s/compatable/compatible (take notice that sv_compatablehulls will have a changed name too)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2717 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-05 18:08:47 +00:00
Molgrum
379efc8376 s/thier/their
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2716 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-05 17:43:26 +00:00
Spoike
7ea15cfdc1 Fixed a recent bug. EvaluateDebugString (ie: the give command) can now accept numbers as entities to retrieve fields from.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2518 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-06-19 23:55:04 +00:00