Age | Commit message (Collapse) | Author |
|
TODO: recall exactly why this change exist, it may have something to do with fs_numServerPaks being aliased in client+server executables
|
|
decompression
TODO: improve this description
|
|
this contains a simple method to control the serving of alternate pk3 files to clients using the alternate-2 protocol (69); there's also a fixup for the VoIP part
the new fs_pk3PrefixPairs cvar has the format "P1&A1|P2&A2|...", where, for each i, Pi and Ai are corresponding primary and alternate pk3 filename prefixes, one of which one may be empty (eg. "P1&|&A2|...") to denote no correspondence
|
|
this contains support for connecting via, and serving simultaneously via, any of the three protocols: latest, GPP and 1.1
alternate-1 means protocol 70 (GPP), alternate-2 means protocol 69 (1.1)
relevant cvars:
- net_alternateProtocols
- net_alt{1|2}port[6]
- sv_alt{1|2}master{1|...|5}
- sv_clAltProto{0|..|63}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
architecture/platform/OS information
use "UnnamedPlayer" as the default player name
|
|
this includes the removal of the "safe mode" question feature
|
|
|
|
server in the client-server binary
|
|
|
|
|
|
the fs_overpath cvar
|
|
|
|
remove Sys_GetCwd()
|
|
change the library loader appropriately
|
|
component (eg., fs_homepath = "dir1/dir2"), or when a path contains multiple consecutive separators (eg. "dir//file")
|
|
|
|
|
|
|
|
TODO: uhm, _snprintf()... WRONG ?
|
|
remove the USE_LOCAL_HEADERS option (it was broken anyway)
|
|
|
|
|
|
|
|
|
|
Server/client VoIP protocol is handled by adding new cvars
cl_voipProtocol and sv_voipProtocol, sv_voip and cl_voip
are used to auto set/clear them. All users need to touch
are cl/sv_voip as 0 or 1 just like before.
Old Speex VoIP packets in demos are skipped.
New VoIP packets are skipped in demos if sv_voipProtocol
doesn't match cl_voipProtocol.
Notable difference between usage of speex and opus codecs,
when using Speex client would be sent 80ms at a time.
Using Opus, 60ms is sent at a time. This was changed because
the Opus codec supports encoding up to 60ms at a time.
(Simpler to send only one codec frame in a packet.)
|
|
|
|
Reported by Ensiform.
|
|
|
|
Upstream: JACoders/OpenJK@9a5e9e87ff2d1302261978fa3f1adafb851bd6d6
|
|
|
|
Can’t find your pak0.pk3? Here’s where we tried looking.
|
|
GNU platforms (Linux, kFreeBSD, Hurd) have endian.h to determine
endianness, so all architectures except x86_64 are in fact treated
identically, except that their ARCH_STRING is different.
The ARCH_STRING must always be identical to the ARCH from the Makefile,
otherwise the engine will not find its cgame, game and ui plugins
under their expected names and startup will fail. If we pass it in
from the Makefile, then an identical value is guaranteed, and we can
get rid of an increasingly long list of defined(__some_cpu__) tests.
The one remaining quirk is that we test __x86_64__ to determine
whether to define idx64; I've kept that, but separated it from
the ARCH_STRING.
On non-Linux platforms we only support a few architectures anyway,
so keeping the list up to date is less of a burden; *BSD porters
could probably use the same technique to get support for lots of
architectures with little effort, but I have not done that here,
because I cannot test it.
Windows must continue to support preprocessor-based architecture tests
in any case, so that the MSVC solutions (which do not use the Makefile)
can continue to work. However, Windows only runs on a few CPU families,
so this shouldn't be a significant burden in practice.
When cross-compiling, the tools are compiled for the build architecture
(COMPILE_PLATFORM, COMPILE_ARCH) rather than the host architecture
(PLATFORM, ARCH), so define ARCH_STRING to COMPILE_ARCH on a GNU
COMPILE_PLATFORM.
|
|
|
|
MASK_REG in EmitMovEDXStack would incorrectly emit asm if 'andit' was 0.
'andit' would never be 0 though so it wasn't causing issues.
Found by Coverity.
|
|
Found by Coverity.
|
|
Add support for Aarch64, the 64-bit ARM architecture.
|
|
strcpy() arguments may not overlap !
|
|
|
|
[As with GNU/kFreeBSD, it's treated as "Linux": all three use the GNU libc
and runtime linker, which is mostly what matters for ioquake3. -smcv]
Bug-Debian: http://bugs.debian.org/679330
Reviewed-by: Simon McVittie <smcv@debian.org>
|
|
|
|
the default fs_game to "gpp"
|
|
deployment of master servers
|