]> git.xonotic.org Git - xonotic/darkplaces.git/log
xonotic/darkplaces.git
3 years ago(Round 6) Break up host_cmd.c
cloudwalk [Tue, 30 Jun 2020 17:28:21 +0000 (17:28 +0000)]
(Round 6) Break up host_cmd.c

Introduce cl_cmd.c. Move several commands and cvars to it.
Renamed Cmd_ForwardToServer prefixes to CL_ and moved them to cl_cmd.c

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12762 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix broken recoil with r_stereo
cloudwalk [Tue, 30 Jun 2020 15:00:02 +0000 (15:00 +0000)]
Fix broken recoil with r_stereo

Patch by Gustaf Alhäll
https://gitlab.com/xonotic/darkplaces/-/merge_requests/50

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12761 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd PEDANTIC and CONFIG_PEDANTIC to compile as standard c11 if desired.
cloudwalk [Tue, 30 Jun 2020 15:00:02 +0000 (15:00 +0000)]
Add PEDANTIC and CONFIG_PEDANTIC to compile as standard c11 if desired.

Usage:
make <target> [-jN] PEDANTIC=1

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12760 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDisable PRVM_64 until it can be developed further. Improves perf. in some cases
cloudwalk [Tue, 30 Jun 2020 15:00:01 +0000 (15:00 +0000)]
Disable PRVM_64 until it can be developed further. Improves perf. in some cases

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12759 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix remaining warnings
cloudwalk [Tue, 30 Jun 2020 05:10:51 +0000 (05:10 +0000)]
Fix remaining warnings

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12758 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd EOF newlines
cloudwalk [Tue, 30 Jun 2020 05:10:49 +0000 (05:10 +0000)]
Add EOF newlines

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12757 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoComply with ISO C11. Engine will now compile with -pedantic, w/o extra warnings
cloudwalk [Tue, 30 Jun 2020 05:10:48 +0000 (05:10 +0000)]
Comply with ISO C11. Engine will now compile with -pedantic, w/o extra warnings

But don't actually use -std=c11 because computed gotos is a gcc
extension that makes the QCVM 30 percent faster in all situations.
c11 obviously disables gcc extensions. But this is a nice thing to
achieve as far as portability is concerned.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12756 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd -Winline flag
cloudwalk [Tue, 30 Jun 2020 05:10:47 +0000 (05:10 +0000)]
Add -Winline flag

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12755 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoImplement standards-compliant chat input editing functionality
cloudwalk [Mon, 29 Jun 2020 03:21:08 +0000 (03:21 +0000)]
Implement standards-compliant chat input editing functionality

Contributed by terencehill.

This, among other things, implements Key_Parse_CommonKeys, which
replaces Key_Console and unifies key handling code.

It's now possible to:
* move cursor to an arbitrary position with rightarrow/leftarrow and insert text
* paste text with ctrl-v
* enable insert mode with the Insert key
* clear the whole message with ctrl-u
* move to the beginning/end of the message with home/end
* move to the previous/next word with ctrl-rightarrow/leftarrow
* move to the previous/next character ignoring colors with shift-rightarrow/leftarrow

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12754 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoMove abortframe to top of host_t to avoid struct alignment warning with MSVC
cloudwalk [Mon, 29 Jun 2020 03:21:08 +0000 (03:21 +0000)]
Move abortframe to top of host_t to avoid struct alignment warning with MSVC

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12753 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd -Wc++-compat flag and fix its sole warning. This *should* be safe.
cloudwalk [Mon, 29 Jun 2020 03:21:07 +0000 (03:21 +0000)]
Add -Wc++-compat flag and fix its sole warning. This *should* be safe.

Famous last words...

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12752 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoUse PRIx64 in C++-friendly form
cloudwalk [Mon, 29 Jun 2020 03:21:07 +0000 (03:21 +0000)]
Use PRIx64 in C++-friendly form

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12751 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd -Wshadow cflag and eliminate its warnings, including with g++
cloudwalk [Mon, 29 Jun 2020 03:21:06 +0000 (03:21 +0000)]
Add -Wshadow cflag and eliminate its warnings, including with g++

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12750 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRename render_modellight_lightdir to render_modellight_lightdir_world and add a _loca...
havoc [Mon, 29 Jun 2020 00:16:58 +0000 (00:16 +0000)]
Rename render_modellight_lightdir to render_modellight_lightdir_world and add a _local variant, which is transformed into entity space, so that rotating entities are lit correctly.

Thanks to kristus for persistently reporting this bug until it was understood.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12749 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix compiling in VS2019 - wrong include syntax for local includes.
havoc [Mon, 29 Jun 2020 00:09:50 +0000 (00:09 +0000)]
Fix compiling in VS2019 - wrong include syntax for local includes.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12748 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix snd_xmp.c compiling in VS2019 - can't have empty structs.
havoc [Mon, 29 Jun 2020 00:07:39 +0000 (00:07 +0000)]
Fix snd_xmp.c compiling in VS2019 - can't have empty structs.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12747 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix some warnings found by cppcheck
cloudwalk [Sat, 27 Jun 2020 21:32:00 +0000 (21:32 +0000)]
Fix some warnings found by cppcheck

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12746 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix playermodel fallback failing on Xonotic, allowing invisible playermodel
cloudwalk [Sat, 27 Jun 2020 21:31:59 +0000 (21:31 +0000)]
Fix playermodel fallback failing on Xonotic, allowing invisible playermodel

Added CVAR_SERVER flag to playermodel (and playerskin for good measure).

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12745 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRemove Con_Warnf and Errorf. Use macros to change color and identify the message
cloudwalk [Sat, 27 Jun 2020 04:29:43 +0000 (04:29 +0000)]
Remove Con_Warnf and Errorf. Use macros to change color and identify the message

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12744 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoImplement RGBstring_to_colorindex to simplify code (terencehill)
cloudwalk [Sat, 27 Jun 2020 02:27:22 +0000 (02:27 +0000)]
Implement RGBstring_to_colorindex to simplify code (terencehill)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12743 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix client version of ambientsound
cloudwalk [Sat, 27 Jun 2020 02:27:22 +0000 (02:27 +0000)]
Fix client version of ambientsound

It was getting values from the wrong parameter fields. They should be
switched.

Fix by terencehill

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12742 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoCorrect typo in builtin description comment, found by terencehill
cloudwalk [Sat, 27 Jun 2020 02:27:21 +0000 (02:27 +0000)]
Correct typo in builtin description comment, found by terencehill

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12741 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix buffer position check
cloudwalk [Sat, 27 Jun 2020 02:27:21 +0000 (02:27 +0000)]
Fix buffer position check

Fix by terencehill

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12740 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd missing builtin to menudefs.qc, discovered by terencehill
cloudwalk [Sat, 27 Jun 2020 02:27:20 +0000 (02:27 +0000)]
Add missing builtin to menudefs.qc, discovered by terencehill

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12739 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoIn Nicks_CompleteCountPossible, use MAX_SCOREBOARDNAME for buffer size
cloudwalk [Sat, 27 Jun 2020 02:27:20 +0000 (02:27 +0000)]
In Nicks_CompleteCountPossible, use MAX_SCOREBOARDNAME for buffer size

Prevents potential buffer overflow.

Fix by terencehill

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12738 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDynamically specify float precision when QC sets cvars. Fixes rounding errors
cloudwalk [Sat, 27 Jun 2020 02:27:19 +0000 (02:27 +0000)]
Dynamically specify float precision when QC sets cvars. Fixes rounding errors

Fix by terencehill

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12737 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoWrap cvar callback around ifdef
cloudwalk [Sat, 27 Jun 2020 02:27:19 +0000 (02:27 +0000)]
Wrap cvar callback around ifdef

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12736 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoCall cvar callbacks after the cvar is set. Potentially fixes heap corruption.
cloudwalk [Sat, 27 Jun 2020 02:27:18 +0000 (02:27 +0000)]
Call cvar callbacks after the cvar is set. Potentially fixes heap corruption.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12735 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix null pointer crash when unsetting a cvar.
cloudwalk [Thu, 25 Jun 2020 15:18:15 +0000 (15:18 +0000)]
Fix null pointer crash when unsetting a cvar.

When fixing up cvars to use the new "hash" table, I got the logic in
Cvar_FindVarLink wrong. That has been fixed.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12734 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRevert "Use double for cvar values. Fixes a number of bugs caused by atof precision...
cloudwalk [Thu, 25 Jun 2020 14:34:45 +0000 (14:34 +0000)]
Revert "Use double for cvar values. Fixes a number of bugs caused by atof precision loss"

This reverts commit eed1ea81a1b9b9c04fad76b3f1bfeec6ea9c44db.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12733 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoUse double for cvar values. Fixes a number of bugs caused by atof precision loss
cloudwalk [Wed, 24 Jun 2020 16:48:10 +0000 (16:48 +0000)]
Use double for cvar values. Fixes a number of bugs caused by atof precision loss

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12732 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoTypo
cloudwalk [Wed, 24 Jun 2020 15:47:37 +0000 (15:47 +0000)]
Typo

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12731 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoActually fix color not being applied correctly
cloudwalk [Wed, 24 Jun 2020 15:39:07 +0000 (15:39 +0000)]
Actually fix color not being applied correctly

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12730 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix color not applying correctly
cloudwalk [Wed, 24 Jun 2020 15:19:56 +0000 (15:19 +0000)]
Fix color not applying correctly

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12729 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix remnants of fog being applied to UIs
cloudwalk [Wed, 24 Jun 2020 14:15:20 +0000 (14:15 +0000)]
Fix remnants of fog being applied to UIs

Thanks to nico for reporting this

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12728 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDon't apply gl_lightmaps to UI elements
cloudwalk [Wed, 24 Jun 2020 13:47:02 +0000 (13:47 +0000)]
Don't apply gl_lightmaps to UI elements

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12727 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRemove hack in changelevel
cloudwalk [Wed, 24 Jun 2020 13:47:01 +0000 (13:47 +0000)]
Remove hack in changelevel

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12726 d7cf8633-e32d-0410-b094-e92efae38249

3 years ago(Round 5) Break up host_cmd.c
cloudwalk [Wed, 24 Jun 2020 13:47:01 +0000 (13:47 +0000)]
(Round 5) Break up host_cmd.c

name, color, rate, and rate_burstsize commands

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12725 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDon't lerp nailgun and super nailgun. Trades smoothness for better muzzle flash
cloudwalk [Wed, 24 Jun 2020 01:03:59 +0000 (01:03 +0000)]
Don't lerp nailgun and super nailgun. Trades smoothness for better muzzle flash

Added a cvar to define models that should not be lerped. Taken from
Quakespasm.

Todo: Use a proper EF_ flag

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12724 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoImplement classic Quake-style weapon bobbing. Enable by default for Quake.
cloudwalk [Wed, 24 Jun 2020 01:03:33 +0000 (01:03 +0000)]
Implement classic Quake-style weapon bobbing. Enable by default for Quake.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12723 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoEradicated the CVAR_NQUSERINFOHACK flag, for good
cloudwalk [Tue, 23 Jun 2020 03:54:38 +0000 (03:54 +0000)]
Eradicated the CVAR_NQUSERINFOHACK flag, for good

This is a massive commit, admittedly. But pretty much every single
change goes together and this could not be split up, unfortunately.

I implemented a few new functions and turned a lot of the userinfo keys
into cvars, just like their QW counterparts. CMD_INITWAIT is also gone
and replaced by CMD_USERINFO to denote special server-from-client
commands that specifically change a userinfo string of a given client.

I'm sure there's a cleaner way to do this, especially the holy callback
trinity I implemented to avoid an infinite loop when synchronizing
topcolor and bottomcolor with _cl_color and vice versa. But, if this
gets rid of decade old legacy cruft, and makes it all easier to maintain
down the road, that's a plus for me.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12722 d7cf8633-e32d-0410-b094-e92efae38249

3 years ago(Round 4) Break up host_cmd.c
cloudwalk [Tue, 23 Jun 2020 03:54:29 +0000 (03:54 +0000)]
(Round 4) Break up host_cmd.c

reconnect and disconnect commands

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12721 d7cf8633-e32d-0410-b094-e92efae38249

3 years ago(Round 3) Break up host_cmd.c
cloudwalk [Mon, 22 Jun 2020 15:36:12 +0000 (15:36 +0000)]
(Round 3) Break up host_cmd.c

The quit and version commands.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12720 d7cf8633-e32d-0410-b094-e92efae38249

3 years ago(Round 2) Break up host_cmd.c
cloudwalk [Mon, 22 Jun 2020 15:31:55 +0000 (15:31 +0000)]
(Round 2) Break up host_cmd.c

This time, demo code. Some parts of demo code were littered in cl_main.c
as well, and have been moved.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12719 d7cf8633-e32d-0410-b094-e92efae38249

3 years ago(Round 1) Break up host_cmd.c
cloudwalk [Mon, 22 Jun 2020 15:16:13 +0000 (15:16 +0000)]
(Round 1) Break up host_cmd.c

Massive move operation of pretty much every single SV_ function.
There are some functions that are dual server and client in purpose that
need to be broken up, but that will require manual effort other than
mere copying.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12718 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFirst massive rename and move
cloudwalk [Mon, 22 Jun 2020 15:15:49 +0000 (15:15 +0000)]
First massive rename and move

A lot of these functions belong on their respective side of the engine.
host.c and host_cmd.c appear to be a dumping ground for misc functions
that Quakeworld engines have a proper place for. This is part of the
moving operation. There's still plenty more functions that need to be
put in their respective places.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12717 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoMove Sys_InitConsole to Con_Init
cloudwalk [Mon, 22 Jun 2020 15:15:22 +0000 (15:15 +0000)]
Move Sys_InitConsole to Con_Init

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12716 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoConsolidate FS_Init and associated code
cloudwalk [Mon, 22 Jun 2020 15:14:57 +0000 (15:14 +0000)]
Consolidate FS_Init and associated code

This is a minor cleanup to make refactoring Host_Init
slightly easier later.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12715 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoChange prefix of cmds in host_cmd.c to match the side of the engine they belong
cloudwalk [Mon, 22 Jun 2020 15:14:32 +0000 (15:14 +0000)]
Change prefix of cmds in host_cmd.c to match the side of the engine they belong

SV commands get the SV_ prefix. CL commands get CL_.

They will be moved later.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12714 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoPartially revert r12699 pending better solution
cloudwalk [Sun, 21 Jun 2020 20:39:05 +0000 (20:39 +0000)]
Partially revert r12699 pending better solution

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12713 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoNot sure how these didn't make it into the last commit
cloudwalk [Sun, 21 Jun 2020 20:29:19 +0000 (20:29 +0000)]
Not sure how these didn't make it into the last commit

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12712 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd process nice settings to the sys struct
cloudwalk [Sun, 21 Jun 2020 19:55:11 +0000 (19:55 +0000)]
Add process nice settings to the sys struct

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12711 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoMerge Cmd_Init_Commands into Cmd_Init
cloudwalk [Sun, 21 Jun 2020 19:54:46 +0000 (19:54 +0000)]
Merge Cmd_Init_Commands into Cmd_Init

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12710 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRevert "Initialize console commands and cvars before anything else"
cloudwalk [Sun, 21 Jun 2020 19:54:20 +0000 (19:54 +0000)]
Revert "Initialize console commands and cvars before anything else"

This reverts commit c29be2ab7e92f63b899fcc6ac5a2db1ac6707f12.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12709 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoPut the loading plaque back in Host_Main for now, so resolution is unbroken
cloudwalk [Sat, 20 Jun 2020 15:40:08 +0000 (15:40 +0000)]
Put the loading plaque back in Host_Main for now, so resolution is unbroken

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12708 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd missing parens around inline assignment. Fixes +vid_* options in VID_Start
cloudwalk [Sat, 20 Jun 2020 14:52:15 +0000 (14:52 +0000)]
Add missing parens around inline assignment. Fixes +vid_* options in VID_Start

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12707 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoInitialize console commands and cvars before anything else
cloudwalk [Sat, 20 Jun 2020 14:51:49 +0000 (14:51 +0000)]
Initialize console commands and cvars before anything else

The idea is to divide initialization into stages. I'm starting with
cvars and commands. Next will be memory allocations.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12706 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRemove commented out code/unused prototype
cloudwalk [Sat, 20 Jun 2020 03:30:00 +0000 (03:30 +0000)]
Remove commented out code/unused prototype

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12705 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoSplit off common CRC16 and MSG_ functions into separate files
cloudwalk [Sat, 20 Jun 2020 03:29:39 +0000 (03:29 +0000)]
Split off common CRC16 and MSG_ functions into separate files

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12704 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDefer menu initialization until after stuffcmds. Implemented MP_Start_f
cloudwalk [Sat, 20 Jun 2020 01:00:27 +0000 (01:00 +0000)]
Defer menu initialization until after stuffcmds. Implemented MP_Start_f

Also start loading plaque in CL_Init.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12703 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRemove vid.samples checks when switching modes. Engine doesn't have MSAA anymore
cloudwalk [Sat, 20 Jun 2020 01:00:02 +0000 (01:00 +0000)]
Remove vid.samples checks when switching modes. Engine doesn't have MSAA anymore

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12702 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoImplement command-line support for setting vid_borderless
cloudwalk [Sat, 20 Jun 2020 00:59:37 +0000 (00:59 +0000)]
Implement command-line support for setting vid_borderless

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12701 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd missing video capture ifdefs
cloudwalk [Fri, 19 Jun 2020 15:36:52 +0000 (15:36 +0000)]
Add missing video capture ifdefs

Fix from nico: https://gitlab.com/xonotic/darkplaces/-/merge_requests/93
Fixed up indentation in a few of the #ifdefs

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12700 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoHost_Main improvements. Workaround to avoid crash with +map no longer needed.
cloudwalk [Fri, 19 Jun 2020 15:24:18 +0000 (15:24 +0000)]
Host_Main improvements. Workaround to avoid crash with +map no longer needed.

* FreeType2 now tries to load by default, regardless of game.
  This fixes font issues if this cvar is turned off after the subsystem
  is already initialized. This has no side effects in Quake as far as I
  can tell.

* Host_StartVideo has been moved to CL_Init where it honestly should be.
  This makes it easier to initialize the engine without a client
  compiled in. The FT2 fix allows initialization to happen early without
  screwing with the fonts.

* VID_Start will now parse +vid_width and +vid_height just the same as
  -width and -height, as well as +vid_fullscreen 1 and 0 for -fullscreen
  and -window respectively.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12699 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix black screen during any loading screen if the console is open
cloudwalk [Fri, 19 Jun 2020 12:27:06 +0000 (12:27 +0000)]
Fix black screen during any loading screen if the console is open

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12698 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoIn Host_Main, clarify the purpose of a few of the timers by renaming them
cloudwalk [Fri, 19 Jun 2020 12:26:41 +0000 (12:26 +0000)]
In Host_Main, clarify the purpose of a few of the timers by renaming them

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12697 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoIn Host_Main, remove timer check. sv_timer and cl_timer are always > 0
cloudwalk [Fri, 19 Jun 2020 12:26:16 +0000 (12:26 +0000)]
In Host_Main, remove timer check. sv_timer and cl_timer are always > 0

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12696 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoIn Host_Main, loop until host.state == host_shutdown instead of infinitely.
cloudwalk [Fri, 19 Jun 2020 12:25:50 +0000 (12:25 +0000)]
In Host_Main, loop until host.state == host_shutdown instead of infinitely.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12695 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd libxmp files to VS projects
cloudwalk [Thu, 18 Jun 2020 16:58:08 +0000 (16:58 +0000)]
Add libxmp files to VS projects

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12694 d7cf8633-e32d-0410-b094-e92efae38249

3 years agolibxmp: minor fixes and cleanup
cloudwalk [Thu, 18 Jun 2020 16:57:43 +0000 (16:57 +0000)]
libxmp: minor fixes and cleanup

* fix a missing ifdef
* adjust developer console output
* check the library version when linking to shared lib too
* comment a unused API function

Patch from nico: https://gitlab.com/xonotic/darkplaces/-/merge_requests/92

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12693 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDisable readonly on two cvars so recent improvements actually work
cloudwalk [Thu, 18 Jun 2020 16:57:18 +0000 (16:57 +0000)]
Disable readonly on two cvars so recent improvements actually work

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12692 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoOrganize system and host globals into structs. Implement host state tracking
cloudwalk [Thu, 18 Jun 2020 16:57:13 +0000 (16:57 +0000)]
Organize system and host globals into structs. Implement host state tracking

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12691 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoImplement the find command. Basically apropos but three less characters to type
cloudwalk [Wed, 17 Jun 2020 23:50:14 +0000 (23:50 +0000)]
Implement the find command. Basically apropos but three less characters to type

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12690 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd *.code-workspace to .gitignore
cloudwalk [Wed, 17 Jun 2020 23:35:53 +0000 (23:35 +0000)]
Add *.code-workspace to .gitignore

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12689 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix dumb mistake allowing cheats to be used despite sv_cheats being 0...
cloudwalk [Wed, 17 Jun 2020 16:55:25 +0000 (16:55 +0000)]
Fix dumb mistake allowing cheats to be used despite sv_cheats being 0...

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12688 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAuto-register serverfromclient commands to forward to the server on the client
cloudwalk [Wed, 17 Jun 2020 16:55:23 +0000 (16:55 +0000)]
Auto-register serverfromclient commands to forward to the server on the client

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12687 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoIterate through interpreters and compare with stored bitmasks to add commands
cloudwalk [Wed, 17 Jun 2020 01:30:38 +0000 (01:30 +0000)]
Iterate through interpreters and compare with stored bitmasks to add commands

This is much, much simpler. This also fixes an issue where quite a few
of the userinfo commands couldn't be used while disconnected.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12686 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoPrepend unbindall to config.cfg to override default.cfg binds
cloudwalk [Tue, 16 Jun 2020 16:37:27 +0000 (16:37 +0000)]
Prepend unbindall to config.cfg to override default.cfg binds

The engine will now respect the user's binds, even if they're all blank.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12685 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoCorrect wrong function names in the VM_SAFEPARMCOUNT calls, found by terencehill
cloudwalk [Tue, 16 Jun 2020 14:52:30 +0000 (14:52 +0000)]
Correct wrong function names in the VM_SAFEPARMCOUNT calls, found by terencehill

These didn't break the built-ins, because they just applied to error
messages.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12684 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoImplement "forcenearest" particle effect key, ported from wrath-darkplaces
cloudwalk [Tue, 16 Jun 2020 14:52:29 +0000 (14:52 +0000)]
Implement "forcenearest" particle effect key, ported from wrath-darkplaces

Fixed compile warning too.

Ported by Mario: https://gitlab.com/xonotic/darkplaces/-/merge_requests/79

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12683 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoImplement XMP module sound support
cloudwalk [Tue, 16 Jun 2020 13:41:46 +0000 (13:41 +0000)]
Implement XMP module sound support

This implements support for libxmp in the engine. It will dlopen by
default and is therefore not a strict dependency.

Implementation by nyov: https://gitlab.com/xonotic/darkplaces/-/merge_requests/8
Updated for darkplaces trunk/master by nico: https://gitlab.com/xonotic/darkplaces/-/merge_requests/88

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12682 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoClean up makefiles a bit. Remove leftovers of stuff no longer in the engine
cloudwalk [Tue, 16 Jun 2020 12:39:51 +0000 (12:39 +0000)]
Clean up makefiles a bit. Remove leftovers of stuff no longer in the engine

Slightly clean up the makefiles. 3DRAS and D3D don't exist in the engine
anymore.

Fix from nico: https://gitlab.com/xonotic/darkplaces/-/merge_requests/91

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12681 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoMove variable paintbuffer_unswapped into CONFIG_VIDEO_CAPTURE, unused without it
cloudwalk [Mon, 15 Jun 2020 17:53:37 +0000 (17:53 +0000)]
Move variable paintbuffer_unswapped into CONFIG_VIDEO_CAPTURE, unused without it

https://gitlab.com/xonotic/darkplaces/-/merge_requests/89

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12680 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoProperly implement borderless windowed mode support
cloudwalk [Mon, 15 Jun 2020 17:22:33 +0000 (17:22 +0000)]
Properly implement borderless windowed mode support

Several new cvars control behavior. It can ignore the Windows taskbar
and compatibility with overlays (Steam, Discord, etc) should be fine
with SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH.

https://gitlab.com/xonotic/darkplaces/-/merge_requests/81

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12679 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAdd cvar to disable engine stats >= 220. Suppresses warnings in Xonotic
cloudwalk [Mon, 15 Jun 2020 17:22:32 +0000 (17:22 +0000)]
Add cvar to disable engine stats >= 220. Suppresses warnings in Xonotic

This is transitional until proper infrastructure to handle stats in a
generic fashion is implemented. This stuff doesn't really belong in the
engine if the eventual goal is to move native gamecode out of it.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12678 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoPlay chat sound defined by cvars rather than hardcoded strings
cloudwalk [Mon, 15 Jun 2020 02:11:31 +0000 (02:11 +0000)]
Play chat sound defined by cvars rather than hardcoded strings

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12677 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDon't enable moncontrol if non-glibc on Linux. Fixes linking against musl
cloudwalk [Mon, 15 Jun 2020 00:47:35 +0000 (00:47 +0000)]
Don't enable moncontrol if non-glibc on Linux. Fixes linking against musl

Partially from https://gitlab.com/xonotic/darkplaces/-/merge_requests/86

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12676 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoAvoid setting "r_transparent_sortmindist" to 0 every frame if already 0
cloudwalk [Mon, 15 Jun 2020 00:47:34 +0000 (00:47 +0000)]
Avoid setting "r_transparent_sortmindist" to 0 every frame if already 0

If an integer is less than 1, it can only be 0. This should fix console
spam with developer_extra 1.

https://gitlab.com/xonotic/darkplaces/-/merge_requests/87

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12675 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoTurned on the defogger (Don't apply fog to UI. Check notrippy == true)
cloudwalk [Mon, 15 Jun 2020 00:20:45 +0000 (00:20 +0000)]
Turned on the defogger (Don't apply fog to UI. Check notrippy == true)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12674 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoUse stdint.h types instead of self-defined dp[u]int
cloudwalk [Mon, 15 Jun 2020 00:20:44 +0000 (00:20 +0000)]
Use stdint.h types instead of self-defined dp[u]int

Mainly for consistency and type safety, and to clean up qtypes.h a bit
more.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12673 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoClean up qtypes.h a bit by including stdbool.h no matter what, removing checks
cloudwalk [Mon, 15 Jun 2020 00:20:44 +0000 (00:20 +0000)]
Clean up qtypes.h a bit by including stdbool.h no matter what, removing checks

Every major compiler includes it, including VS2013 and higher, so the
vast, vast majority of people shouldn't be affected by this. Every major
compiler's stdbool.h also checks for C++ anyway. These checks are
redundant.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12672 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoRemove remnants of hook system from vs projects
cloudwalk [Mon, 15 Jun 2020 00:20:43 +0000 (00:20 +0000)]
Remove remnants of hook system from vs projects

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12671 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDisable sound for cvar notify. Use \003 mask, meant for notifications in chat
cloudwalk [Mon, 15 Jun 2020 00:20:43 +0000 (00:20 +0000)]
Disable sound for cvar notify. Use \003 mask, meant for notifications in chat

Ironically, I took a cue from Source Engine enabling this by default,
but realized later that not even Source plays a chat sound for cvar
notifications, which people rightfully complained about, due to being
spammy and annoying.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12670 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoCorrect the value of CMD_SHARED. Fixes map command
cloudwalk [Sun, 14 Jun 2020 13:15:38 +0000 (13:15 +0000)]
Correct the value of CMD_SHARED. Fixes map command

...and other CMD_SHARED commands.

Updated the bitmasks but forgot to update the value of CMD_SHARED to
reflect the change. The client can only see CMD_CLIENT commands.
It was only adding to CMD_SERVER. Oops.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12669 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoInitial implementation of command flag system
cloudwalk [Thu, 11 Jun 2020 15:59:58 +0000 (15:59 +0000)]
Initial implementation of command flag system

This should reduce code duplication and allows other cool things.
This is part of the solution to a bug where "stuffcmds" stopped working
because of changes to the initialization order in Host_Init. More work
needs to be done but this should be fine for now.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12668 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoDelete the cmd_clientfromserver interpreter. Use cmd_client instead
cloudwalk [Thu, 11 Jun 2020 14:46:58 +0000 (14:46 +0000)]
Delete the cmd_clientfromserver interpreter. Use cmd_client instead

This should eliminate an entire class of bugs related to commands
missing from the appropriate interpreter.

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12667 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoFix misspelling
cloudwalk [Thu, 11 Jun 2020 13:47:23 +0000 (13:47 +0000)]
Fix misspelling

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12666 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoCorrect typo
cloudwalk [Wed, 10 Jun 2020 22:56:07 +0000 (22:56 +0000)]
Correct typo

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12665 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoCode style improvements
cloudwalk [Wed, 10 Jun 2020 13:33:21 +0000 (13:33 +0000)]
Code style improvements

Partially from https://gitlab.com/xonotic/darkplaces/-/merge_requests/85

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12664 d7cf8633-e32d-0410-b094-e92efae38249

3 years agoForbid use of ctrl+alt combo in console. Fixes altgr usage on some layouts
cloudwalk [Wed, 10 Jun 2020 05:19:24 +0000 (05:19 +0000)]
Forbid use of ctrl+alt combo in console. Fixes altgr usage on some layouts

https://gitlab.com/xonotic/darkplaces/-/merge_requests/58

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12663 d7cf8633-e32d-0410-b094-e92efae38249