mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-05 20:50:43 +00:00
29adc2ed92
I'd forgotten I wanted to do playback, but was reminded by OneManClan when he asked about it in a general sense.
54 lines
2.4 KiB
Text
54 lines
2.4 KiB
Text
//unfortunately, have to wrap the docs in a C comment for doxygen
|
|
/**
|
|
\page qtv_overview QF QTV overview/status.
|
|
OVERVIEW:
|
|
\image html qwtv.png
|
|
\image latex qwtv.eps ""
|
|
|
|
The server is "reserved" for playing clients. Any spectators would be
|
|
referees and/or admins (however, this is up to the server admin).
|
|
|
|
A qtv proxy connects to the server. The proxy may have spectating clients
|
|
and other even other proxies connecting to it. The proxies can chain to any
|
|
depth as an upstream proxy will pass on its information to any downstream
|
|
proxies. With just a few levels of proxies, it should be possible to have
|
|
very large spectator groups.
|
|
|
|
STATUS:
|
|
|
|
qw-server supports up to two qtv proxy connections: the idea being there
|
|
will be only one, with the second in case the proxy drops off and needs to
|
|
reconnect before the timeout. The qw-server sends a modified mvd stream to
|
|
the qtv proxy. The mvd stream is modified for both easy manipulation by the
|
|
qtv server, and more importantly, to be packet-loss tolerant (QF uses mvd
|
|
over udp).
|
|
|
|
Currently, the qtv proxy can connect to any number of servers (if you use
|
|
more than one or two, I hope you have a beefy system/connection). Use
|
|
<code>sv_new \<name\> [address]</code> to connect to a server. \c address
|
|
is optional if \c name is a resolvable internet address, otherwise \c name
|
|
can be a simple "nick-name" while \c address is the resolvable address of
|
|
the quakeworld server. \c sv_list lists the current servers and
|
|
<code>sv_del \<name\></code> (\c name is the same as used in \c sv_new and
|
|
as shown by \c sv_list) is used to disconnect from and remove a server.
|
|
|
|
The proxy supports any number of connecting clients. Connecting clients use
|
|
<code>cmd list</code> to get a list of available servers and
|
|
<code>cmd connect [SERVERNAME]</code> to finalize the connection to a
|
|
server. Clients can use <code>cmd disconnect</code> to "leave" a server in
|
|
order to "connect" to a different one without disconnecting from the proxy.
|
|
|
|
The proxy and connected clients ride over a server map change.
|
|
|
|
TODO:
|
|
\li Get client delta compression working (if it's not already).
|
|
\li Implement a delay (configurable) between the qw server and the proxy.
|
|
\li Add proxy chaining, possibly with configurable delay (redundant?).
|
|
\li Demo recording (mvd/enhanced mvd) on the proxy.
|
|
\li VOIP with recording to enhanced mvd (mvd and voip streams encapsulated
|
|
together). Probably based on FTE.
|
|
\li Demo playback.
|
|
\li Other? According to community needs.
|
|
|
|
\ref qtv
|
|
*/
|