Commit graph

185 commits

Author SHA1 Message Date
Spoike
b282a31f35 A few fixes for nehahara/reacc compat. I got a working progs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4620 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-03-01 11:38:53 +00:00
Spoike
fd70ec0c62 fix misc warnings.
add support for q3's shader remapping feature.
don't mask sky depth on q3bsp. apparently it causes problems.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4609 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-02-13 23:54:57 +00:00
Spoike
1bb752b582 sdl2 support.
hacky rendertarget stuff. not polished. don't use except for testing. feedback desired.
switched file system to use a qofs_t type instead. define FS_64BIT to make it 64bit (standard on 64bit cpus).
rewrote zip support, ditching unzip.c. this provided zip64 support, and unicode in zips.
changed local address enumeration to not be so stupid.
updated ode support a little to match some dp features.
changed fs_cache scheme, to not rebuild needlessly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4596 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-02-07 08:38:40 +00:00
Spoike
9a38addfaf c++11 style raw-string support
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4582 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-01-15 02:13:58 +00:00
Spoike
705e9ac9e8 fix a comment bug reported by gnounc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4577 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-01-13 02:33:11 +00:00
Spoike
bfe545222e added con_textsize to resize console separately from everything else.
qcc: added support for variable arguments via the va_arg intrinsic.
qcc: fix up some comment/whitespace issues with the preprocessor.
random hacks to try to improve dp compatibility a little.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4573 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-29 22:48:28 +00:00
Spoike
f762446a7d make cheat cvars allowed in single player by default.
fix an issue with referenced packs getting forgotten when running non-dedicated servers.
whichpack now always references packs even if allow_download_refpackages is disabled.
add setcursormode for compat with dp's csqc.
fix some qcc issues that came up.
bump some q3bsp sanity limits a little.
greater precision for android's vibrate feature.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4567 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-17 22:45:37 +00:00
Spoike
6defcc7a5f better parsing for #pragma target
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4556 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-07 00:24:06 +00:00
Spoike
218006198d fix q2 bsp texture animations.
fix q2 prediction.
fix q2 saved games issues.
fix q2bsp fullbright/fullwhite lights.
fix potential issues from svs.clients no longer being preallocated.
fix rtlights not doing q1 bsp texture animations.
misc crash fixes.
hack to allow a clickable hud when using a touchscreen.
gl_max_size no longer affects 2d images.
select faithful fps preset option by default.
gl_font a,b,c works to select fallback fonts. freetype fonts reused to reduce memory usage when the same font is used multiple times either with different sizes or as fallbacks as part of other fonts.
allow static member functions. allow static locals.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4552 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-12-02 14:30:30 +00:00
Spoike
f08489f141 .po support for qc.
rewrote messagemode to support utf8 properly, as well as left-arrow etc keys.
support for mouse-over images on console links and stuff.
added r_lerpmuzzlehack for certain viewmodels.
use libtool's dlopen stuff on cygwin to try to cover some cygwin path differences.
try to support utf-8 in filenames even in windows (only in nt, 9x is still ascii only).
added certificate validation for gnutls. gnutls now enabled by default in linux.
d3d11 tweaks. shadowmapping works.
tweaks for updated terrain format, to try to fix some inefficiencies/limitations.
xmpp plugin can now display avatars (xmpp /set avatars 1)
xmpp file transfers supported by default, but capability is disabled by default (can be enabled by hacking config).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4523 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-11-21 23:02:28 +00:00
Spoike
d396450a0a log file defaults changed to be more readable. timestamps now included by default. also fixed a bug in the location the log is written.
fixed numerous shadowmapping bugs. actually seems to work now. appears to draw more lights than is actually needed, however.
changed how keyboard focus works. can now have menu+console open at once, although you probably need shift+escape to get at it.
fixed a few issues with nexuiz compat. there are *still* other issues.
greatly refactored cd playback code. cd driver code is now a backend only and does not provide its own commands. track remapping accepts named faketracks. worked around missing notifications in vista+, so looping will now work.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4491 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-10-08 14:28:11 +00:00
Spoike
d741392ef2 revamp fteqcc a little to cope with a.b.c+=f;f++; more correctly/efficiently.
also fix some preprocessor issues with nexuiz's qc code.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4482 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-09-26 14:36:52 +00:00
Spoike
803c8c4878 fix while(1)->while(0) issues.
debug evaluation is more verbose (gives field listings when passed an entity).
added string length checks in various places.
sizeof(array) works again.
tweaked fields to be a little more user friendly, and not complain about classes so much when simply using entities.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4460 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-08-21 06:55:54 +00:00
Spoike
7d4c88814e fix for .unions so h2 compiles again.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4426 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-07-26 11:36:23 +00:00
Spoike
986d21f10c Fix a couple of bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4406 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-26 03:35:29 +00:00
Spoike
b6252d940c fixed a few warnings and errors
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4399 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-23 03:59:48 +00:00
Spoike
fa9252cefa splitscreen cleaned up more.
demo menu can now leave quake dir.
scissor+line rendering abstracted from csqc.
added a rain particle effect to the 'high' particle set.
added support for parsing ezquake's koi stuff. Still only generates utf-8.
implemented some string-buffer builtins from dp that have been stubs for quite some time.
http code now supports/uses gzipped downloads properly.
added support for non-blocking tcp connects.
#pragma optimize makes more sense with the gui version now.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4397 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-23 02:17:02 +00:00
Spoike
8aae46a71b fixes for classes and autoproto. also added #pragma autoproto
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4392 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-13 22:45:15 +00:00
Spoike
0ac9b88343 Misc fixes and tweaks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4390 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-11 02:06:06 +00:00
Spoike
9accc5ac56 fix class type assignments.
report class names with various field-related warnings.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4389 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-06 22:31:33 +00:00
Spoike
40a72c7bac fix a couple of issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4386 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-04 15:41:21 +00:00
Spoike
fc82e561be Rewritten how arguments and fields are stored. No longer mangles types quite so much.
Fixes for class support. Its actually usable now. Seriously! I've even modified my menu code to use it! Why don't you believe me?
Fixes for structs+pointers.
Added warnings for comparisons against incompatible function etc types. This'll probably generate a load of th_pain warnings in vanilla code.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4383 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-06-02 06:03:54 +00:00
Spoike
152f3cf78a fix a qcc issue with [x,y,z] and temp values, also fix an issue with comments and preprocessor.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4323 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-05-03 04:10:48 +00:00
Spoike
1e9af3f441 Early hack at emscripten compat.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4278 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-04-02 05:18:17 +00:00
Spoike
dd68115e58 ------------------------------------------------------------------------
r4255 | acceptthis | 2013-03-10 23:55:57 +0000 (Sun, 10 Mar 2013) | 2 lines

more verbose type-error messages.
fix an issue with chars going missing on the last line (reported by Hectate).
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4251 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 23:22:05 +00:00
Spoike
066dc81d8b ------------------------------------------------------------------------
r4254 | acceptthis | 2013-03-10 17:10:23 +0000 (Sun, 10 Mar 2013) | 1 line

oops.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4250 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 23:21:36 +00:00
Spoike
0543a97976 ------------------------------------------------------------------------
r4239 | acceptthis | 2013-03-08 02:41:00 +0000 (Fri, 08 Mar 2013) | 2 lines

Give the text edit input focus when alt-tabbing.
Display tooltips on mouseover for the various defs. You need to compile first for them to show.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4235 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 23:15:32 +00:00
Spoike
65b6b27a75 ------------------------------------------------------------------------
r4195 | acceptthis | 2013-02-10 17:40:18 +0000 (Sun, 10 Feb 2013) | 1 line

add support for \. for frikqcc compat.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4193 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:50:09 +00:00
Spoike
0ecf71adaf ------------------------------------------------------------------------
r4189 | acceptthis | 2013-02-05 12:54:29 +0000 (Tue, 05 Feb 2013) | 1 line

clipboard, icon, fullscreen support for glx. Numerous fixes for compile-time warnings.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4187 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:47:42 +00:00
Spoike
a339c727d0 ------------------------------------------------------------------------
r4175 | acceptthis | 2013-01-26 18:23:37 +0000 (Sat, 26 Jan 2013) | 8 lines

improved replacementdeltas+nq a little, still needs work.
embrace the menuqc! pr_dumpplatform now includes MENU defs+builtins.
swapped search ordering of paks+dirs, so progs.dat will be used instead of pak0.pak/progs.dat.
fteqcc slightly more sensible with if statements and void+vector types.
fteqcc shows the first line where models are precached/used instead of showing no line at all.
fix missing explosions when running qw gamecode.
accept channels between 8 and 255. 
support for sending fitzquake's increased stat limits.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4173 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:35:33 +00:00
Spoike
9e2969390d ------------------------------------------------------------------------
r4174 | acceptthis | 2013-01-25 15:56:53 +0000 (Fri, 25 Jan 2013) | 8 lines

fix fteqcc 'tui'.
Added new warning to detect non-utf-8 strings. Doesn't check for overlong.
Added new warning to detect uninitialised locals.
Fix ///* inside #if.
Renamed -Olm to -Olo, and fixed the bugs that stopped it from working. Uses the uninit locals check to prevent breakages.
Optimised -Os.
'local const foo' definitions no longer sit within the local variables block.
Fixed confusion between OP_BOUNDCHECK and jumps.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4172 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:32:25 +00:00
Spoike
8d5b217266 ------------------------------------------------------------------------
r4169 | acceptthis | 2013-01-17 08:55:12 +0000 (Thu, 17 Jan 2013) | 31 lines

removed MAX_VISEDICTS limit.
PEXT2_REPLACEMENTDELTAS tweaked, now has 4 million entity limit. still not enabled by default.
TE_BEAM now maps to a separate TEQW_BEAM to avoid conflicts with QW.
added android multitouch emulation for windows/rawinput (in_simulatemultitouch).
split topcolor/bottomcolor from scoreboard, for dp's colormap|1024 feature.
now using utf-8 for windows consoles.
qcc warnings/errors now give clickable console links for quick+easy editing.
disabled menutint when the currently active item changes contrast or gamma (for OneManClan).
Added support for drawfont/drawfontscale.
tweaked the qcvm a little to reduce the number of pointers.
.doll file loading. still experimental and will likely crash. requires csqc active, even if its a dummy progs. this will be fixed in time. Still other things that need cleaning up.
windows: gl_font "?" shows the standard windows font-selection dialog, and can be used to select windows fonts. not all work. and you probably don't want to use windings.
fixed splitscreen support when playing mvds. added mini-scoreboards to splitscreen. 
editor/debugger now shows asm if there's no linenumber info. also, pressing f1 for help shows the shortcuts.
Added support for .framegroups files for psk(psa) and iqm formats.
True support for ezquake's colour codes. Mutually exclusive with background colours.
path command output slightly more readable.
added support for digest_hex (MD4, SHA1, CRC16).
skingroups now colourmap correctly.
Fix terrain colour hints, and litdata from the wrong bsp.
fix ftp dual-homed issue. support epsv command, and enable ipv6 (eprt still not supported).
remove d3d11 compilation from the makefile. the required headers are not provided by mingw, and are not available to the build bot, so don't bother.
fix v *= v.x and similar opcodes.
fteqcc: fixed support for áéíóú type chars in names. utf-8 files now properly supported (even with the utf-8 bom/identifier). utf-16 also supported.
fteqcc: fixed '#if 1 == 3 && 4' parsing.
fteqcc: -Werror acts on the warning, rather than as a separate error. Line numbers are thus more readable.
fteqcc: copyright message now includes compile date instead.
fteqccgui: the treeview control is now coloured depending on whether there were warnings/errors in the last compile.
fteqccgui: the output window is now focused and scrolls down as compilation progresses.
pr_dumpplatform command dumps out some pragmas to convert more serious warnings to errors. This is to avoid the infamous 'fteqcc sucks cos my code sucks' issue.
rewrote prespawn/modelist/soundlist code. server tracks progress now.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4167 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:29:40 +00:00
Spoike
53a7b3d47c added support for external capture plugins - and using avcodec as a plugin.c.
The ragdoll API is potentially usable now, but still really limited.
Enabled SQL requests by default using sqlite. Note that you'll need the sqlite dll to use this. MySQL should still be usable, but I didn't try. MySQL requires -DUSE_MYSQL to compile it, and a dll and -mysql argument to enable it.
Fixed nacl.
NPFTE plugin now invokes an exe to run the game rather than running the game within the browser.
externvalue builtin now accepts & prefix to return a pointer instead.
Fixed vector autocvars.
uri_get, bufstr_add, bufstr_free, now functional.
QC debugger can now show asm if line numbers are not available.
Added support for QC watchpoints. Use the watchpoint command.
gl_specular now give specular even without rtlights, thankfully not as blatently, but its there.
android will not crash due to supported audio formats, and gles2 can be selected via a cvar (requires full FTEDroidActivity/program restart).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4152 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-11-27 03:23:19 +00:00
Spoike
20403759b0 Stricter typedefs/typenames, so no more random types appearing which were not intended.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3974 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-02-05 01:38:51 +00:00
Spoike
567e9f112b added DP_QC_ENTITYSTRING builtins.
mvd playback fixes/cleanups
r_fb_models more closely matches ezquake.
readded str[i] support.
fixed char constants (outside of strings).
string table compression no longer affects distinction between "" and string_null.
multiplayer savedgame fixes.
don't bugilly change hexen2's playerclass on loadgame, and preserve the STR_foo globals which are not marked for saving.
fix small bug on player renames. added a temp debug print to try to catch the issue onemanclan is having.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3961 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-24 04:24:14 +00:00
Spoike
fb214142a3 tcpconnect fixes
lots of hexen2 fixes
fixed clipped decals again, still not using any...
fixed zips over 2g
rewrote bloom to use glsl. should be slightly more usable now.
lots more hexen2 fixes

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3957 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-17 07:57:46 +00:00
Lance
0b7e5ce3e6 Proper fix to my previous failed fix
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3955 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-04 16:51:50 +00:00
Lance
5c52aa9975 Hopefully a solution for Win64 + SDL... or hack
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3954 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-04 16:08:33 +00:00
Spoike
ac526f0e1b patch to use extern properly. divVerent neededed it, so we might as well.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3950 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-01 17:34:32 +00:00
Lance
dd006b6edd removed some redundant code required for mingw64
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3932 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-12-23 02:53:12 +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
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
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
d5ab16befc heightmap semi-functional again, but still useless.
A few bugs fixed.
Slightly better compatibility with DP.
Added breakpoint_csqc command to set breakpoints in csqc to better debug csprogs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3793 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-20 04:10:46 +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
56ef606d0e fix typos
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3746 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-03-04 15:35:16 +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
Lance
47c3a6873b MinGW64 fixes, unbreaking FTEQCC too
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3703 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-19 03:51:37 +00:00
Lance
6a0549acc1 FTE_TARGET=win64 (thanks to MinGW64), 64bit MinGW64 static libs, and fix for undefined references to vsnprintf within qclib when using MinGW64
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3688 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-08 14:42:05 +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
8c96747ad3 Removed the limit on macro contents lengths.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3540 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-03 21:49:48 +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
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
e1e589e729 keep using num*sign when the token has no . in it, since in such cases it shouldn't become NaN, and we cannot use atof on tokens like 0xABC which end up, too
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3369 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-09-04 10:35:41 +00:00
Blub
25c5f6ba1b null-terminate before using atof, not afterwards...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3368 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-09-02 17:04:55 +00:00
Blub
e0f2bb3a50 using atof() for floats in QCC_PR_LexNumber() so huge numbers don't create NaNs
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3363 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-09-01 22:23:47 +00:00
Spoike
222529619e Can I go back to bed now?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3358 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-29 17:51:13 +00:00
Spoike
5a5f38dbfc Yeah, I suck. Really works properly now. Maybe.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3357 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-29 17:24:20 +00:00
Spoike
5e5ad719c2 Fixed LexNumber to properly replace LexFloat.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3356 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-29 16:53:22 +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
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
b3b885c122 Trying to clean up qclib a little.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3220 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-06-13 11:57:52 +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
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
Lance
2e768fe44c Blub/0's fteqcc macro line fix to quote "seem to be some problems with
newlines in macros (causing wrong line numbers in error/warning 
outputs)"


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3146 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-03-20 01:12:01 +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
bf8eed727e Reject double dots in macro names (fred.4 is allowed but fred..4 is not). This allows Hexen2 code to compile again.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3050 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-10-30 11:10:58 +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
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
8af647d7d4 Blub\0's latest patch. This one fixes up for arguments.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3027 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-07-27 02:48:59 +00:00
Mark Olsen
c44fb03810 CHARACTURE -> CHARACTER
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2883 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-28 13:28:35 +00:00
Mark Olsen
83d23423ab characture -> character
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2882 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-28 13:27:30 +00:00
Lance
ff6630d28c Patch from BlackHC, Increase maximum macro size and fix endless loop bug caused by empty macros
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2880 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-27 01:14:44 +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
ae0a8461b7 Black's fix for #define macro parameters in fteqcc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2868 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-23 00:37:56 +00:00
Spoike
67f89fa7f0 Expanded the maximum length of frame macro names to 64-1 characters as per LordHavoc's patch. Also added a message when a frame macro name is too long.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2861 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-16 03:43:53 +00:00
Molgrum
8f285d7787 Fix an error here that I caused.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2588 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-08 14:50:53 +00:00
Spoike
3671902d06 Added a warning for void() functionname() {} functions.
Fixed the ent.field.field += bug; by swapping the order of statements.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2495 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-04-15 17:35:58 +00:00
Spoike
24f1ed093a lol! added support for the ?: trinary operator.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2491 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-04-12 00:02:47 +00:00
Mark Olsen
af6b5bdc77 Support forward declaration of classes (hopefully). Reject declarations of already declared classes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2396 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-09-28 02:46:42 +00:00
Spoike
42c43d960f mostly miscilaneous changes (some old stuff that I don't remember), lightsampling changes, qtv changes, avi sound changes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2379 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-09-17 00:59:22 +00:00
TimeServ
9a2c2c386f remove octal escape code parsing (broken code)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2350 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-07-14 19:54:26 +00:00
TimeServ
913e26b1ae musicvolume uses callback, cosmetic fix to qclib, disabled sw r_drawflat until there's a solution to make it like gl's r_drawflat
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2250 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-07 20:57:30 +00:00
Spoike
45a50b2e8e Two things.
1: make qclib's qcc more consistant, by passing in a '-src src' instead of hardcoding it inside qclib.
2: fixes the 'vote kick'/op_load bug in cutf.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2150 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-04-02 23:47:27 +00:00
Spoike
b5b74f2529 Rotating BSP fixes, hexen2 fixes, and a few extra bugs...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2134 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-03-23 19:22:12 +00:00
Spoike
3399f05c3b Randomer found a way to crash fteqcc, but he still needs to fix his code.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2018 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-02-23 23:03:12 +00:00
Spoike
ac60336e9e Slightly easier to use.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1867 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-01-14 03:37:22 +00:00
Spoike
503eff6421 Reworked the filesystem. We now support a virtual filesystem. Many places accept stream usage, although many formats do not support this.
I'm not sure if this will break anything. It shouldn't do, but it might.

Not everything is ported over yet. Ideally there would be no more use of fopen anywhere else in the engine, and com_gamedir would be made static to fs.c
There are a couple of other changes too.

http/ftp stuff is currently disabled.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1728 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-12-21 03:07:33 +00:00
Spoike
0371d2cab6 Print out a warning count, added an entnum intrinsic.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1718 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-12-16 17:15:43 +00:00
Spoike
339d478659 I wonder how much this will break. Ahh well. It works for me, and I need to go to bed.
Well, plugins should be able to read/write files through the engine. audio decoding plugin interface is in (might be changed later).
TCPConnect is in.
msg_filter and scr_centersbar.
some recording fixes too.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1634 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-11-30 01:20:53 +00:00
Spoike
27044fbbcb Fix for erroneous warning messages when definining compiler constants.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1498 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-10-17 17:17:20 +00:00
Spoike
184ca975fc Removed the prints, added a -Wno-mundane, and readded some ifstring stuff that black took out a while ago. grr. if he carelessly breaks anything like that again.... grr.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1384 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-28 16:57:10 +00:00
Spoike
13cade8fe9 fixed some minor issues
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1337 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-15 05:55:43 +00:00
Spoike
43a1890bcc Fixed an issue with fteqw's pr_fixbrokenqccarrays cvar when used with mutators. Also fixed field remapping with regard to multiple fields with the same offsets.
Played around with classes a bit. Should work a bit better now.
Added an extra compiler flag, to allow for fast-tracking arrays in supported engines. It uses a global to detect it, but we don't yet set that global anywhere in the loader. This will probably have issues in DP.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1325 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-14 04:36:07 +00:00
Spoike
347311db8c q3 fixes and misilaneous minor changes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1298 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-08 22:52:46 +00:00
TimeServ
4ed3f5b009 poundonly -> hashonly
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1270 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-05 23:50:46 +00:00
TimeServ
cf1ec0b425 poundonly flag for preqcc-dependant mods
constant name max increased to 64


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1267 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-09-03 21:42:22 +00:00
Spoike
d98ae49588 Added fix for var void() func = blah;
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1257 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-08-27 05:45:45 +00:00