GTV setup guide

a guest Dec 12th, 2013 33 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Server Installation
  2.                     Quick Install
  3.                     A quick install of the GTV server involves two steps:
  6.                       Extract the .zip into your Quake 3 directory. Make sure
  7.                       that "extract with path names" is turned on. A
  8.                       subdirectory called "gtv3" should be created.
  10.                       Look in the gtv3 subdirectory for a file called "gtv.cfg".
  11.                       Open this file with notepad or your favorite text editor.
  12.                       Edit the options in the "Quick Setup" section.
  15.                     You can now run gtv.exe in your Quake 3 directory. Also see
  16.                     Admining GTV and Common Tasks
  19.                     Advanced Install
  20.                     GTV requires the following things to operate correctly. This
  21.                     section will describe the how to setup these requirements.
  23.                     Requirements:
  25.                       Access to the Quake 3 pk3 files (pak0.pk3, pak1.pk3, etc)
  26.                       A "gtv3" subdirectory
  27.                       A valid Quake 3 CD key
  28.                       The GTV configuration file (gtv.cfg)
  31.                       Access to the Quake3 pk3 files: GTV needs to access all of
  32.                       the standard Quake 3 pk3 files. If GTV is run in the same
  33.                       directory as quake3.exe it should be able to access these
  34.                       files without further information. To run GTV in a
  35.                       different directory, or if GTV is not able to find the pk3
  36.                       files for some reason, you can specify the location of the
  37.                       pk3s with the fs_basepath option. Use the command: "+set
  38.                       fs_basepath your_quake3_dir_here" on the command line (see
  39.                       Command Line for more information).
  40.                       A "gtv3" subdirectory: Once GTV knows the location of your
  41.                       Quake 3 directory it must be able to find the correct
  42.                       configuration files. Create a directory under your Quake 3
  43.                       directory called "gtv3". This is where GTV will store
  44.                       configuration and other information.
  45.                       A valid Quake 3 CD key: If GTV can find your quake 3
  46.                       directory correctly, it will attempt to use the file
  47.                       "q3key" in the baseq3 directory. If you would like to use
  48.                       a different CD key to connect to servers, create a file
  49.                       called "q3key" in the gtv3 directory, and place your CD
  50.                       key in it.
  51.                       The GTV configuration file: GTV looks in the "gtv3"
  52.                       directory for a file called "gtv.cfg". This file contains
  53.                       all of the information GTV requires to run. Before running
  54.                       GTV for the first time, this file must be edited and at
  55.                       least the options in the "Quick Setup" section changed.
  56.                       Most people will want to look through the "Advanced
  57.                       Options" as well. This configuration file follows the
  58.                       standard Quake 3 .cfg format (see Relationship to Quake 3
  59.                       for more information).
  62.                   Running the GTV Server
  64.                   This section is mostly background information, read Admining
  65.                   GTV and see Common Tasks for step by step practical
  66.                   instructions.
  68.                     Admining GTV
  69.                     Admining GTV is fairly straight forward. Think of GTV as a
  70.                     normal Quake 3 server. It just happens to be able to connect
  71.                     to other servers. To get GTV setup so that other people can
  72.                     watch the game the normal sequence of events is:
  75.                       Setup and run GTV
  76.                       Connect to GTV
  77.                       Use the gtv_admin command to become an admin
  78.                       Connect GTV to the server
  79.                       Become cameraman
  80.                       Tell others to connect
  82.                     The normal way to admin GTV is to connect to it with Quake 3
  83.                     and issue commands. This allows you to control the camera.
  84.                     Most commands can also be issued in the GTV console, however
  85.                     you will need to find someone with Quake 3 to do the camera.
  87.                     Once you have GTV connected to a server, you might be
  88.                     wondering, what next? You need a way to control what people
  89.                     connected to GTV see. This is where the camera comes in, see
  90.                     Becoming Cameraman.
  93.                     GTV Chains and Redirection
  94.                     To create a GTV chain simply connect one GTV server to
  95.                     another one. The "master" GTV server (the first one in the
  96.                     chain) controls what the users of every other GTV server in
  97.                     the chain see. The master server is the only one with a
  98.                     "camera man". By chaining GTV servers together around the
  99.                     world, its possible to distribute the bandwidth and CPU
  100.                     processing requirements of serving 1000s of users. Large
  101.                     chains can be a bit complex, so this section is intended for
  102.                     people doing the setup of a chain, for people wishing to
  103.                     join a chain and mirror a match see Common Tasks: Chaining
  104.                     GTV.
  106.                     The best setup for a gtv chain is: one private gtv server at
  107.                     the event, one "master" gtv server that connects to the one
  108.                     at the event and is passworded. After that other mirror gtv
  109.                     servers that know the password can connect to the master
  110.                     gtv. This is good for several reasons... you can have
  111.                     multiple gtv servers at the event, and because there is only
  112.                     one master server you can switch between them easily.
  113.                     Redirection also works well with this setup. Redirection is
  114.                     an experimental feature that will redirect people connecting
  115.                     to one gtv server to a different gtv server Eg. someone
  116.                     tries to connect to the master gtv, but its full, so the
  117.                     master looks at all the gtv servers connected to it and
  118.                     chooses the one that is "most empty". This way only one gtv
  119.                     server IP needs to be posted, and gtv servers in the chain
  120.                     are automatically load-balanced. Since redirection is still
  121.                     an experimental feature, and does not work for people behind
  122.                     NAT routers, I would recommend posting all gtv server IPs,
  123.                     and recommend to people that they try the master IP first.
  124.                     The master server also needs some settings changed in the
  125.                     gtv.cfg, see the large events section. This is the short
  126.                     explanation of chaining, if you have other questions contact
  127.                     me.
  130.                     Relationship to Quake 3 (and Command Syntax)
  131.                     GTV is based on the Quake 3 server. So many commands that
  132.                     work in Quake 3 will work in GTV, like rcon, set, reset,
  133.                     etc. Commmands can be entered in the normal way, using the
  134.                     Quake 3 console once you have connected to a GTV server. If
  135.                     you have run a Quake 3 server most of this will be familiar.
  136.                     Many of the settings (cvars) for Quake 3 servers are the
  137.                     same for GTV (Eg. sv_maxclients, rate, sv_maxrate, etc).
  138.                     Rcon works in the standard Quake 3 way.
  140.                     In the configuration file you can use any of the commands
  141.                     listed in Console Commands. All cvars you want to set must
  142.                     be set using one of set, sets, or setu. Commands should be
  143.                     placed on separate lines.
  146.                     Command Line
  147.                     The GTV command line is useful for overriding cvars in the
  148.                     config file, and executing additional config files. Commands
  149.                     on the command line are separated with the "+" character,
  150.                     each "+" counts as an enter.
  152.                     eg. gtv +set fs_basepath c:\quake3 +set com_zonemegs 64
  153.                     +exec server.cfg
  155.                     In addition there are some cvars that can only be set on the
  156.                     command line. The most important ones are:
  159.                       com_zonemegs: This is the main kind of memory that GTV
  160.                       uses. If you find you are running out of memory set this
  161.                       variable higher. The default value is 32.
  162.                       fs_basepath:Use this to specify the location of your Quake
  163.                       3 directory.
  166.                     Console Commands
  167.                     The following commands are available from the console,
  168.                     config files, or rcon:
  171.                       set [name] [value]
  172.                       This command sets the cvar "name" to "value". Value can be
  173.                       either a number or words.
  174.                       setu [name] [value]
  175.                       Same as set, except the cvar is flagged as USERINFO and is
  176.                       sent to the server during connect
  177.                       sets [name] [value]
  178.                       Same as set, except the cvar is flagged as SERVERINFO and
  179.                       is sent to clients, and people viewing the server in a
  180.                       server browser such as Gamespy.
  181.                       exec [name]
  182.                       Reads the file "name" and executes the commands in it as
  183.                       if they were typed into the console.
  184.                       quit
  185.                       Causes the server to exit back to the command prompt.
  188.                     Choosing a Maxclients
  189.                     Bandwidth: Since GTV is a server, your hosting capacity
  190.                     depends mostly on your upload bandwidth. Upload requirements
  191.                     can either be estimated to be 50kBit/s per client or
  192.                     controlled with the sv_maxrate cvar. Setting sv_maxrate is
  193.                     the recommended way to control bandwidth usage. Setting
  194.                     sv_maxrate to 5000 will provide fairly smooth viewing for
  195.                     clients, and require 40 kBit/s (8 x 5000) of upload
  196.                     bandwidth per client. Eg. a T1 with sv_maxrate 5000 can
  197. hold:
  199.                     1,100 kBit/s / 40 kBit/s/client = about 30 clients
  201.                     CPU Use: If you have a lot of bandwidth you're likely to run
  202.                     out of CPU power long before you run out of bandwidth. Note
  203.                     that this has changed drastically from previous GTVs. There
  204.                     are a number of ways to tell if your maxing out your CPU,
  205.                     note that looking at your CPU use percentage IS NOT ONE OF
  206.                     THEM. A GTV server can support 2 clients for every 10Mhz of
  207.                     CPU, with NO other processes running.
  209.                     eg. PIII 800 can do 800 / 5 = 160 clients
  211.                     eg. AMD 1Ghz with other processes taking 50% of the CPU can
  212.                     do:
  213.                     (1000 - (1000 * 0.50)) / 5 = 100 clients
  215.                     There are a couple ways to tell how much CPU you are using:
  216.                     If the view in GTV is choppy or "hanging" and you are sure
  217.                     you have enough bandwidth, then its probably a CPU use
  218.                     problem (it could also be your network q3 settings). If you
  219.                     are getting hitch warnings constantly (in the console) thats
  220.                     another good sign that your CPU is maxing out. The last (and
  221.                     best) way to tell is: do a com_speeds 1 in the console. This
  222.                     will spam out a bunch of lines like:
  224.                     frame:5515 all: 20 sl: 5 sv: 0 ev1: 5 ev2: 10 cl: 0
  225.                     frame:5516 all: 21 sl: 1 sv: 0 ev1: 9 ev2: 11 cl: 0
  226.                     frame:5517 all: 19 sl: 6 sv: 0 ev1: 3 ev2: 10 cl: 0
  227.                     frame:5518 all: 20 sl: 2 sv: 0 ev1: 8 ev2: 10 cl: 0
  229.                     Each number represents the number of milliseconds it took to
  230.                     do each task. The only number we care about is all:. If all
  231.                     is over 50 for 4 or 5 frames in a row, you need to reduce
  232.                     maxclients.
  234.                     Note that past 100 clients or so, due to buffering in GTV,
  235.                     the CPU use vs number of clients graph flattens out. Past
  236.                     100 the CPU use guide line is more like 3 or 4 clients per
  237.                     10 Mhz.
  240.                     Common Problems
  241.                       Unable to Bind Socket Error
  242.                       This error can be caused by several things. The first and
  243.                       esiest to check is that the port number you specified is
  244.                       not already in use. Try running gtv with +set net_port
  245.                       29345 (or some other port number) on the command line.
  247.                       If the error also states that GTV is running out of
  248.                       memory, the commands below may help. Since GTV is a high
  249.                       bandwidth application it uses larger than normal socket
  250.                       buffers to handle large spikes in traffic. Several
  251.                       flavours of unix are not able to handle larger buffers by
  252.                       default; these commands will increase the maximum size.
  253.         sysctl -w kern.ipc.maxsockbuf=8388608
  254.         sysctl -w net.inet.tcp.rfc1323=1
  255.         sysctl -w net.inet.tcp.sendspace=1048576
  256.         sysctl -w net.inet.tcp.recvspace=1048576
  259.                       Also see the net_sendBuffer and net_recvBuffer cvars in
  260.                       gtv.cfg.
  261.                   Using GTV
  262.                     How to connect
  263.                     To connect to GTV you need the current version of Quake 3,
  264.                     1.29. If you play on the net at all you probably already
  265.                     have this. NO other client is required.
  267.                     To connect to GTV:
  270.                       Write down the IP and PORT of the server you wish to
  271.                       connect to
  272.                       Run Quake 3
  273.                       Press ` to bring down the console
  274.                       Type the command \cl_allowdownload 0 and press enter
  275.                       Type the command \connect IP:PORT, where IP and PORT is
  276.                       the server address you wrote down in step 1.
  277.                       You should now be connected to GTV. Use the gtv_watch
  278.                       command to watch a game (if one is available).
  280.                     There is always a list of current GTV servers at
  281.           , you can get IPs and PORTs there.
  283.                     GTV also works with server browsers, so you can enter the ip
  284.                     and port into your favorite server browser and use it to
  285.                     connect.
  287.                     If you are running GTV on the same computer as your Quake 3,
  288.                     use the ip "". Eg. assuming the default port of
  289.                     27970 the command would be \connect in the
  290.                     quake 3 console.
  293.                     Commands
  295.                     Once you are connected to a GTV server, these commands are
  296.                     accessible by bringing down the console (use the ` key). All
  297.                     commands typed into the Quake 3 console must be preceded by
  298.                     a \. This simply lets Quake 3 know you are typing in a
  299.                     command instead of trying to say something.
  302.                       Normal Commands
  303.                         gtv_nextgame
  304.                         Moves you to the next game, causing a new map to load,
  305.                         or reload the current one. This will only move to a game
  306.                         from a different server, it will not switch between
  307.                         views of the same game.
  308.                         gtv_nextview
  309.                         Takes you to the next view for the same game, the map
  310.                         will not reload. GTV must be connnected to the server
  311.                         two or more times for this to work.
  312.                         gtv_watch [gameNumber]
  313.                         Use this command to change to a specific game. If you
  314.                         are in the waiting room; available games are listed in
  315.                         the center of your screen. Games are also available with
  316.                         the \gtv_gamelist command.
  317.                         gtv_help
  318.                         Lists all the gtv_ commands.
  319.                         gtv_admin [password]
  320.                         Use this command to become an admin of the GTV server.
  321.                         This command also allows you to watch restricted games
  322.                         (like the non-delayed stream).
  323.                         gtv_camera [password]
  324.                         This command has several effects depending on where you
  325.                         use it. Using this command will give you access to
  326.                         \gtv_watch restricted (non-delayed) games. Once watching
  327.                         a game, this command will give you control of the
  328.                         camera.
  329.                         gtv_playerlist
  330.                         Lists everyone on the GTV server.
  331.                         gtv_status
  332.                         Displays general information about the gtv server, like
  333.                         number of clients connected.
  334.                         gtv_gamelist
  335.                         Displays a list of all games you can watch. The numbers
  336.                         displayed before each game can be used with \gtv_watch.
  337.                         gtv_silent
  338.                         Turns off "chat beeps" for chat on the q3 server (for
  339.                         both players and spectators). Issue this command once to
  340.                         turn on and again to turn back off (its a toggle).
  341.                         gtv_nospeech
  342.                         Will turn off chat from other gtv users, but still print
  343.                         chat from the game server. Can be used in conjunction
  344.                         with gtv_silent. Issue this command once to turn on and
  345.                         again to turn back off (its a toggle).
  346.                         gtv_messages
  347.                         Turn the display of connect, disconnect, and error
  348.                         messages on and off. This is a toggle.
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand