Commit Graph

99 Commits

Author SHA1 Message Date
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 ffc2a08589 pass network addresses around as a pointer rather than as a struct. They've grown quite a bit from vanilla code and can now be quite large. this should give more efficient network filtering+matching.
Added version+time+date to segfault lots.
try to use vbo+vao as needed.
added a manifest file in order to disable uac emulation and its virtual store lies.
particles now support a sort of namespace. eg: an effect called "cfg.effect" will load up the 'cfg' particle config and use its 'effect' effect (but not replace any explicit effects). You can still create particle effects called 'cfg.effect' with no issue.
Added support for fsarchive plugins.
Added a sys_register_file_associations command. .bsp not yet handled, but demo playback should work fine.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4324 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-05-03 04:28:08 +00:00
Spoike 944c675b2e Use SDL1.3 text input instead of button input, this gives (me) actual unicode values, so you're no longer all forced to use an en-gb charmap, lucky you.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4301 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-04-08 06:47:27 +00:00
Spoike a77bd67602 ------------------------------------------------------------------------
r4196 | acceptthis | 2013-02-12 19:06:07 +0000 (Tue, 12 Feb 2013) | 9 lines

split in/out client frames, so that we can cope with separate packet/movement sequences for nq+prediction.
Make default ports a little more explicit.
interpolate input frames. should make things smoother when the input rate does not match video rate.
fix centering of crosshairs
make sure skins are flushed properly on vid_restart, so 24bit skins don't get messed up.
keep sounds ticking even when inaudible.
qc addressable block now has a max of 2gb.
.__variant works as a function argument.
NQ clients now receive player physics consistant with QuakeWorld.
------------------------------------------------------------------------


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4194 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-03-12 22:53:23 +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 c6c3d3f4e0 Trimmed some dead files.
Quick hack preliminary d3d11 renderer. I'm not likely to touch this again for quite some time.
Sys_Error works properly on android, with an error message shown. Should be less of a stab in the dark if you get errors. Seg faults are still instantly fatal. Not much I can reliably do about those - most of the juicy ones will likely occur within the gl drivers (even if its my fault) and java will still call in to it.
Stereoscopic (quad-buffered) rendering is in the gl renderer. You'll likely need a quatro to use it despite it being a gl 1.0 feature. No idea about ati. See r_stereo_method for non-quad-buffered alternatives.
Tweaked networking to not overflow so much. Needs testing against other qw clients.
Fixed an issue with surface numbers > 32k on limit-breaking maps.
Fixed a preparse issue resulting in QW clients dying with the ne_ruins map's progs.
Support for the DP-variant of BSP2. The depricated RMQ variant is still supported.
QTV proxy now uses ipv6 hybrid sockets where possible. Preliminary pext support.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4105 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-09-30 05:52:03 +00:00
Spoike fe23d72d69 Android tweeks
memory freeing tweeks
batch data rearranged a little (to try to reduce memory).
RBSP/FBSP fixed. lightstyles now supported.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4059 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-07-05 19:42:36 +00:00
Spoike 53116a9763 tweaked console completion to be less spammy and to show descriptions for commands where available.
added a few descriptions to a few cvars.
tweaked strzone/strunzone, added memalloc/memfree/memcpy/memset (use pr_dumpplatform to dump out a new defs).
tweaked android to use a smaller audio buffer, hopefully reducing latency slightly. let me know if this results in bugs...

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4005 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-03-19 06:30:41 +00:00
Spoike 4496bb6ea0 Removed limit on strcat builtin's length.
Fixed issues with DP7 protocol.
Fixed .fatness.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3965 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-28 10:30:44 +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 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 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
TimeServ 26e2638301 revert qcjit undefine..
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3870 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-13 05:49:32 +00:00
TimeServ a0e7300da2 add cl_yieldcpu, fix setmodel with NULL pointer
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3869 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-07-13 05:48:09 +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
Spoike dc2212aa84 Fixed a couple of warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3728 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-29 21:01:40 +00:00
Spoike 4505f7321b various small bugfixes, mvd+voip should work again, qcjit changes, towards usability.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3700 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-18 17:02:47 +00:00
Spoike dfd02ad9e3 Fix hexen2 cd tracks.
Fix zalon's crash.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3605 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-09-05 10:42:23 +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 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
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 519983dee2 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2992 fc73d0e0-1445-4013-8a0c-d673dee63da5 2008-06-01 22:06:22 +00:00
Spoike 7584ae2e34 Changed the pf_clientstat function and parameters to match the ordering originally documented in the ext_csqc extension I posted on wiki.quakesrc.org, as per krimzon's recommendation. Updated qclib to support querying fields based on their offset rather than purely a name basis, to support the clientstat change.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2869 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-23 01:31:01 +00:00
Spoike 4a823c3601 bigfoot: Works for me(TM)
final 64bit qcvm portability issues fixed (I hope).
new qc extension: DP_QC_UNLIMITEDTEMPSTRINGS (assuming pr_tempstringcount = 0)
fixed a couple of issues with msg_entity being random.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2475 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-03-11 16:51:45 +00:00
Spoike d27d3c5b6d Less warnings (none at the gcc-default warning level)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2046 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-03-04 20:43:48 +00:00
Spoike 0ad239ca6a Fixed all warnings in MDebug.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1948 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-02-11 14:51:36 +00:00
Mark Olsen b3b3a7a83a Renamed vector to _vector to avoid name clashes on Altivec systems.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1623 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-11-29 13:30:20 +00:00
Spoike d4d365175d I've been fixing warnings.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1448 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-10-07 16:27:20 +00:00
Spoike 7903310326 Lots of small changes. q3 player models are working and things, though csqc. md5mesh is supported (md5anim through an alternate 'format' to specify model name and a list of md5anims).
Lots of cool stuff.

r_shadows is still broken due to depth sorting of model (and thier depth value being written too late).


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1196 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-08-03 23:14:59 +00:00
Mark Olsen c5c278da85 origional -> original.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1173 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-07-28 15:52:31 +00:00
Spoike f1ea7c0c06 Q2 works, models are depth sorted (the same time as particles).
some extra macros added. We have a full set of dp te effect builtins (but not parsing them all yet... so not advertising them either).
Dedicated server does not build. I need to add some functions to svmodel.c
sound should work properly with roq/cin/avi playback.
gl_detail should work like in ezquake. there's also a new gl_detalscale cvar
bss size should be a small ammount smaller.
all the dp te builtins will send something. But fte can't parse all of them yet.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1145 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-07-14 01:57:34 +00:00
Spoike 03dfb7f399 Added comments to the interface, and qclib does it's own endian checking now. No more sharing with the engine.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1048 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-05-22 13:42:10 +00:00
Spoike 8641ac86f5 64bit should compile properly now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1038 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-05-20 03:32:53 +00:00
Spoike 4a0c02b685 Hopefully, the server will now run on 64bit archetectures.
Also, a piece of unitialialized memory should now be fixed.
there's a con_centertext cvar added
an extra default particle texture.
further dp protocol compatability stuff.
EF_ADDATIVE works on models and supposedly sprites. will do sw sprites too at some point.

Linux makefile needs work still.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1017 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-05-17 02:36:54 +00:00
Spoike 7c418ca423 qc string_t is now an int instead of char *, stringtable is char * instead of int.
Some fixes and extra stuff for nexuiz, but it took a protocol extension, which is currently assumed instead of queried.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1015 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-05-15 18:49:04 +00:00
Spoike 4c9337fd35 some bug fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@936 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-04-02 18:00:45 +00:00
Spoike d7bb31a516 Some changes. QC execution has been tweeked a little. It needs further work still.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@925 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-03-28 00:11:59 +00:00
Spoike ce3c561cfe CSQC is standard now, and secure via the same md4 as a map currently has.
Particle system functions renamed a bit, a few other cleanups in that area.
Console handling tweeked. Better rules for subconsoles and plugins. Commands are coloured if it'll be execed, which should help reduce occurences of chat being commands. tab compleation tweeked, partial compleation no longer changes the suggestion.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@895 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-03-10 03:55:18 +00:00
Spoike 9ae7e2621d SOFTWARE RENDERING IS BROKEN: DO NOT USE ASM VERSION.
Lots of changes.
CSQC should be functional, but is still tied to debug builds. It WILL have some bugs still, hopefully I'll be able to clean them up better if people test it a bit.
Precompiled headers are working properly now. Compile times are now much quicker in msvc. This takes most of the files this commit.
Restructured how client commands work. They're buffered outside the network message, some multithreaded code is in. It needs a bit of testing before it's active.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@885 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-02-28 07:16:19 +00:00
Spoike acde8ade44 CSQC support changes and some small bugfixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@874 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-02-12 18:56:04 +00:00
Spoike 4576ea829f A few changes. Reacc support
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@872 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-02-09 19:32:30 +00:00
Spoike 51da6d3abf Fixed some warnings and stuph.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@829 fc73d0e0-1445-4013-8a0c-d673dee63da5
2005-01-24 23:47:32 +00:00
Spoike 789e38265b bye bye quirky behaviour
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@507 fc73d0e0-1445-4013-8a0c-d673dee63da5
2004-11-23 00:29:10 +00:00
Spoike e91176eff5 Does that stop it thinking structures have changed? probably not, but it's worth a try.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@468 fc73d0e0-1445-4013-8a0c-d673dee63da5
2004-11-17 18:14:49 +00:00
Spoike 9c59fafc3e lots of changes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@228 fc73d0e0-1445-4013-8a0c-d673dee63da5
2004-09-20 23:25:38 +00:00
Spoike 5a872df165 All lower case now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@155 fc73d0e0-1445-4013-8a0c-d673dee63da5
2004-09-07 18:16:59 +00:00