Commit graph

206 commits

Author SHA1 Message Date
Spoike
f4d3df7bf5 make sure the capture command doesn't switch between gamedirs while capturing.
added dimension_default global to provide default dimensions. expected to be a (var) constant.
support setcustomskin in menuqc.
implement some considerations for win95, so it can actually run on that horrendously outdated system.
provide scr_autoid and r_showbbox-field info when running csqc.
ignore vid_restarts at the end of config.cfg files from other engines. in fte, these are at best redundant and at worst overrides user settings.
fix issue with latched cvars not flagging the config as modified.
path command always shows filenames properly.
fix some fteqcc inlining bugs.
added precaches command to display all active precaches.
added docs for mapcluster.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4881 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-06-04 06:15:14 +00:00
Spoike
18de6445ba rewrote huge chunks of qcc code to track which symbols were used where.
this makes inlining more efficient, and allows stripping irrelevant defs.
(there may still be things broken due to this)
gui version behaves a little better now, and saves debug+optimisation etc settings on a per-mod basis, instead of using the windows registry to store which engine+path+args to run.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4850 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-04-14 12:24:05 +00:00
Spoike
052cba731d prevent generation of statements outside functions (inlining to constants is okay).
insert .qc files into tree view in .src order instead of alphabetically. make sure extra .src files appear at the root.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4837 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-07 18:07:30 +00:00
Spoike
911f98ffaa fix demo menu with system paths.
tweak some dp compatibility things. probably futile.
moved ode to a plugin.
added screenshot_mega command to take massive screenshots that are not tied to current video mode.
removed offscreen-gecko code completely.
added cvars to rescale offsetmapping from paletted sources, so it can be disabled where its ugly.
added support for zip weak encryption. the password defaults to 'thisispublic'. nothing is fool-proof.
gl: fix stereoscopic rendering.
gl: fix rendertargets with depth.
qc: added support for named builtins that do not have any specific number.
qc: added some new builtins. drawrotpic, drawtextfield, search_getfilemtime, and a few others.
qc: PF_Fixme now attempts to figure out which builtin you tried to call, for more friendly fatal error messages.
qccgui: stepover and stepout are now implemented, as is setnextstatement.
qccgui: added a way to annotate code with the asm statements generated from them.
qccgui: fixed double-clicking a src file.
qccgui: handles multiple .src files more usefully.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4832 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-02-02 08:01:53 +00:00
Spoike
2ea981fe90 qc: qc temp-strings are now garbage collected. this makes strzone redundant.
net: revert the player angles inversion thing from last build. hack some angles. gonna need to tweak the protocol.
net: cl_lerp_players is smoother, and defaulted. lets see how many people complain.
cl: fix juddering with chase_active+prediction.
cl: download progress where the total size is not known now displays something more sane.
cl: fixed some issues with rawinput keyboards.
cl: added autoupdate option to the menu.
cl: autoupdate defaults to a new 'tested' set of builds, instead of the completely untested svn builds. 
cl: added 'borderless windowed' option to the  menus. works on windows.
cl: saved games save a preview screenshot.
cl: fix some memory leaks on shutdown.
cl: added 'setrenderer random' option, might be useful for modders in that it helps highlight bugs/differences between renderers...
qc: r_showbboxes now displays the fields of the various entities.
tweaked entity lighting to overbright more gracefully.
gl: fixed crepuscular lighting.
qcc: added % operator.
qcc: added inline keyword.
qcc: some fixes for accessors.
qccgui: now prompts for exe+basedir.
sv: added sv_specprint, ala mvdsv.
sv: stats now sent over the unreliable channel instead of the reliable one. this allows them to change more frequently.
sv: rewrote speedcheat detection. clients will be throttled instead of kicked. unresponsive clients will be simulated instead of freezing in mid-air.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4829 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-01-21 18:18:37 +00:00
Spoike
7f6c2054d9 threaded loading code and associated/extensive tweaks.
unified image loading code a little between renderers.
support switching worldmodel in csqc. also associated bugfixes.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4758 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-10-05 20:04:11 +00:00
Spoike
0fb5e2bc25 Second attempt at accessors. syntax is a little more usable. also supports arbitrary custom fields too, without requiring it to use lots of string compares.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4747 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-08 23:35:32 +00:00
Spoike
11279542a1 Added an accessor data type, eg: accessor strbuf : rawtype : dereferencetype {get[]=bufstr_get;set[]=bufstr_set;length=buf_getsize};
accvar.foo is equivelent to accvar["foo"]. get* or set* accessors can be used without indexes, but only with * prefix notation on use. the rawtype isn't changable with this, so you can't set infokey values.
accvar.length works. array.length will also work too now, if you dislike sizeof's weirdness.

updated preprocessor to comply slightly more with C.
fixed int emulation a little to be more robust. utility functions must be defined in advance. this avoids stealth dependancies resulting in unexpected bugs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4745 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-09-05 19:17:57 +00:00
Spoike
957afd8c3b map command now strips parms+spawnflags. use changelevel if you want to keep that (unlike nq, we still won't kick players).
fix some compiler warnings.
update the emscripten port.
reduce bss a little (as emscripten blatently can't cope with it)
support for '_wateralpha'. also support for cvar_foo too.
demo_jump works in nq demos.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4732 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-25 07:35:41 +00:00
Spoike
402aa52362 misc fixes, tweaks, and hacks.
qc rt target api now uses names instead of numbers. shaders can name such rendertargets in advance.
added timing info to qc profiling, instead of just opcodes executed.
added sv_showconnectionlessmessages, to show all messages that don't relate to a client, so omc can see if he's getting DDOSed easily.
try to show proper error messages with the xmpp plugin, at least for certain things.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4714 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-08-03 14:47:47 +00:00
Spoike
d3b9818f25 be more lax with state opcodes, accept variables in either argument.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4705 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-07-01 07:01:33 +00:00
Spoike
a4db77b22f rewrite download code detect rates and get the best speeds practical.
client can cope with files over 4gb.
added download resumption. hopefully.
fix some q3 bugs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4685 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-06-12 23:08:42 +00:00
Spoike
6c84350afd Try to fix a few issues.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4670 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-30 03:57:30 +00:00
Spoike
faae661e9e fixed up sort ordering to be more correct.
drawstrings now tint the string, and should now work as expected with ^3 colours.
tweaked qcc's utf-8 parsing. utf-8 chars are now valid in identifiers. invalid chars (like pesky nbsp) are more verbose, and can actually be found.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4667 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-21 06:21:09 +00:00
Spoike
025f95238e try to compensate for id's bugs/warnings, for ease of use.
fix a couple of bugs/spam.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4662 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-18 23:02:04 +00:00
Spoike
d7f83cbdc7 moving q2 temporary entities to particle configs.
fix 'bind alt_k' result.
don't generate a luma from 8bit if there's a custom diffuse image.
add support for #append.
#includelist now supports macro expansion.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4657 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-05-16 01:34:58 +00:00
Spoike
dd8628eb2a tweak particle system a little for more compat.
added a couple extra effects to r_particledesc high
try and solve the trailparticles madness once and for all by autodetecting which set of arguments is used.
fix some annoyances with menuqc.
rebuild fs cache when doing vid_restart, to avoid insane reload times.
add profiling support.
qcc: be more permissive with {a,b,} in array definitions.
tweaked logfrag builtin to not loose frags quite so easily. should be more robust now. Whether tools agree or not is a different matter... but there's always the possibility that it'll just work.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4644 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-24 01:53:01 +00:00
Spoike
3d71834373 pointer arithmetic.
fix issue with classes not doing nonvirtual properly.
fix virtual functions existing separately from basic fields.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4642 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-14 09:16:41 +00:00
Spoike
d124fe8cf0 Fix misc bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4632 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-04-03 02:39:51 +00:00
Spoike
2e1a70e319 rewrote ban code, merging bans+nonbans+cuffs+mute+cripple+deaf+lagged+vip. added timeouts. new penalties have no dedicated command. use the addip command for it.
maplist command now generates links.
implemented skin objects for q3. added a csqc builtin for it. also supports compositing skins.
playing demos inside zips/pk3s/paks should now work.
bumped default rate cvar.
added cl_transfer to attempt to connect to a new server without disconnecting first.
rewrote fog command. alpha and mindist arguments are now supported. fog change also happens over a short time period.
added new args to the showpic console command. can now create clickable items for touchscreen/absmouse users.
fixed menus to properly support right-aligned text. this finally fixes variable-width fonts.
rewrote console tab completion suggestions display. now clickable links.
strings obtained from qc are now marked as const. this has required quite a few added consts all over the place.
probably crappy attempt at adding joypad support to the sdl port. no idea if it works.
changed key bind event code. buttons now track which event they should trigger when released, instead of being the same one the whole time. this allows +forward etc clickable buttons on screen. Also simplified modifier keys - they no longer trigger random events when pressing the modifier key itself.
Right modifiers can now be bound separately from left modifiers. Right will use left's binding if not otherwise bound. Bind assumes left if there's no prefix.
multiplayer->setup->network menu no longer crashes. added rgb colours to the translation view (but not to the colour-changing keys).
added modelviewer command to view models.
added menu_mods menu to switch mods in a more friendly way. will be shown by default if multiple manifests exist in the binarydir.
clamped classic tracer density. scrag particles no longer look quite so buggy.
added ifdefs to facilitate a potential winrt port. the engine should now have no extra dependencies, but still needs system code+audio drivers to be written.
if it can't set a renderer, it'll now try to use *every* renderer until it finds one that works.
added experimental mapcluster server mode (that console command). New maps will be started up as required.
rewrote skeletal blending code a bit.
added cylinder geomtypes.
fix cfg_save writing to the wrong path bug.
VFS_CLOSE now returns a boolean. false means there was some sort of fatal error (either crc when reading was bad, or the write got corrupted or something). Typically ignorable, depends how robust you want to be.
win32 tls code now supports running as a server. added connect tls://address support, as well as equivalent sv_addport support.
exposed basic model loading api to plugins.
d3d11 backend now optionally supports tessellation hlsl. no suitable hlsl provided by default. !!tess to enable.
attempted to add gamma ramp support for d3d11.
added support for shader blobs to speed up load times. r_shaderblobs 1 to enable. almost vital for d3d11.
added vid_srgb cvar.
shadowless lights are no longer disabled if shadows are not supported.
attempt to add support for touchscreens in win7/8.
Wrote gimmicky lua support, using lua instead of ssqc. define VM_LUA to enable.
updated saved game code. can again load saved games from vanilla-like engines.
changed scale clamping. 0.0001 should no longer appear as 1.
changed default mintic from 0.03 to 0.013 to match vanilla qw. I don't know why it was at 0.03. probably a typo.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4623 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-03-30 08:55:06 +00:00
Spoike
7e80062ab9 Added x11 unicode input support. Added wayland support (FTE_TARGET=linux-wayland). Added properly support for rpi+egl (FTE_TARGET=linux-rpi, warning: expects to cross-compile).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4622 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-03-30 00:39:37 +00:00
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