- Make server send packet fragments and queued packets when server is idle
- Voip protocol detection is tied to com_protocol making past-end-of-message reading unncessary
- Use Hunk_AllocateTempMemory() for buffering VOIP packets and fix buffering scheme that ryan hates so much
- Disable packet scrambling for new protocol as it is useless now
- Get rid of the old packet scrambling functions predating latest point release
- Use Hunk_AllocateTempMemory() for netchan packet queue to fix memory leak when client gets disconnected with packets in the queue
- Use Hunk_AllocateTempMemory() for download blocks to fix memory leak when client gets disconnected with download blocks in the queue
- Fix SV_RateMsec to account for udp/udp6 packet lengths
* differing screen resolutions and network settings are now honoured when changing fs_game
* Fix hunk memory leak on game_restart
* Move cls.state and cls.servername to clc so connection state is fully preserved over game_restart
* Revert back to previous fs_game after disconnecting from a server that triggered a game_restart
* Fix error dialog popping up after every game_restart if an error happened previously (reported by Ensiform)
- Fixed that not all commands added by CL_Init() would be removed by CL_Shutdown()
- Clean up ftol()/snapvector() mess
- Make use of SSE instructions for ftol()/snapvector() if available
- move ftol/snapvector pure assembler to inline assembler, this will add x86_64 and improve support for different calling conventions
- Set FPU control word at program startup to get consistent behaviour on all platforms
- Retains full compatibility to the old but unsecure protocol between clients and servers
- Harden the connection process against DoS attacks, possibly connected to UDP spoofing
* com_standalone now read-only
* add new cvars com_basegame, com_homepath
* standalone now automatically detected when com_basegame is set to something different than baseq3 and no id pak pk3s are found
* This fixes https://bugzilla.icculus.org/show_bug.cgi?id=4699
- Replace a few hardcoded string literals with macros
- Add checks for Team Arena PK3s to FS_CheckPak0()
- Overhaul of the new banning functions:
* basic check for redundant bans/exceptions
* introduction of sv_banFile to make it possible to configure the file where to read bans and exceptions from
* bans can now be deleted by giving address ranges, too.
- Clean up a few other ipv6 issues like removing the seemingly unnecessary MacOSX workaround.
- Bring ipv6 master server up to speed for dpmaster
Thanks go out to Mathieu Olivier for this work.
<TylerSchwend@gmail.com>)
* (bug 3623) COMMAND is mapped to the ALT key (Matthias <Kapffer@macbay.de>)
* (bug 3665) Typo error in FS_FOpenFileByMode function (TsT <tst2006@gmail.com>)
* (bug 3669) Some files left out of Solaris Packages (Vincent Cojot
<vincent@cojot.name>)
* (bug 3680) server quit messages (Ben Millwood)
* (bug 3682) Maps with >1024 models cause a segfault (misantropia
<bnoordhuis@gmail.com>)
* (bug 3683) R_FindShader(): negative lightmap indexes cause stray pointers
(misantropia <bnoordhuis@gmail.com>)
* (bug 3688) q3asm potential segfault fix and other changes (TsT
<tst2006@gmail.com>)
* (bug 3695) Not allowing to write file with lib extention (.dll/.so/...) (TsT
<tst2006@gmail.com>)
* (bug 3696) make-macosx-ub.sh outdated by revision 1340; test for Tiger not
working (Matthias <Kapffer@macbay.de>)
* (bug 3698) #error reported as warning in q3cpp (and no #warning support)
(Ben Millwood)
* (bug 3703) restoring the valued pre-SDL window behaviour (/dev/humancontroller
<devhc97@gmail.com>)
Previously, a legacy client wouldn't get a VoIP packet, but if they did,
they'd panic and disconnect. Now they ignore them and continue on. This also
gives us the framework to add other features legacy clients can ignore.
Oh, this also has the benefit of allowing us to store incoming VoIP for
playback in recorded demos. They'll play the chatter on VoIP clients, and
be ignored on legacy ones. Huge win.
cmd to all clients in SV_FinalMessage()
* on Com_Error(), set the cvar "com_errorCode" with the errorParm_t integer
value for the error. This can be used by a mod's ui to an draw error
dialog specific for the error (e.g. Reconnect button on ERR_SERVERDISCONNECT)
1) NET_Sleep() no longer watches for input, Sys_Sleep() added for waiting
on input.
2) Added "CtrlHandler" for trapping Ctrl-C and other quit methods not
handled by signals on windows
3) Added history support
4) Added tab completion
5) Removed automatic cursor/scroll adjustment (too problematic)
6) Enable mousewheel scrolling
7) Stop using the InputBuffer for editing
This seems to work pretty well now, but I jumped the gun on a previous
commit message by saying you can scroll now without locking up your server.
That was only true up until the point that a server tried to print to
the console, at that point it will hang until you release the scroll bar :(
It may be possible to get around this by using a seperate thread for
console output, but that's a whole new can of worms.
are being loaded to play a demo. This restores the normal
"timedemo" cvar behaviour.
* (bug 3054) The "demo" command works properly now when connected to
the local server
could set this. disconnect (or disallow connection for) a client that
has a userinfo string that's too full for "ip" to be added properly.
(Richard Stanway)