Advanced Urban Terror Setup

September 13, 2009 at 12:53 pm (Gaming, Linux)

HeaderOne of the greatest games I’ve ever played is Urban Terror. Urban Terror takes Quake 3 and transforms it to near perfection. In my opinion, Urban Terror is by far the most successful open source game and the amount of time to play it, learn it, master it is great pleasure in time. In this guide, I’ll show you how to optimize and setup Urban Terror for best performance and usability.

Urban Terror is based on the Quake 3 engine that was released by id software in 2005. Since then it has been edited, refined, fixed and added to, under the name of the ioquake engine. The ioquake team has done an awesome job of keeping the engine up to date and running well, adding 64bit support, ogg support, in engine VOIP support… The current version of Urban Terror is 4.1 and you should be able to find it in the repositories for your distribution.

Keyboard Layout

Though the default layout of Urban Terror keybindings can be gotten by with, advanced users know that you’ll find yourself having to take your hands off the default keyboard positions too many times. In a game were milliseconds count, this can be a disaster. Best to keep grouping of commonly used keys close to your left hand. This keyboard layout groups commonly used functions but is generic and should work well for any game type. However, since I find myself playing capture the flag most of the time, the automated chat (radio commands) are for ctf:

Printable Version

The radio commands are easy enough to change in the configuration below.

Configuration

id software really knows how to make a game engine. The capabilities and options in the engine seem nearly unlimited. I’ve gone through and discovered the most important values to being able to customize your Urban Terror, but first a quick note on configuration files.

The configuration files are stored in ‘~/.urbanterror/q3ut4/’. Before UT 4.1 they were stored in ‘~/.q3a/q3ut4/’. Urban Terror still uses this folder for legacy purposes but if you create a new configuration in ‘~/.urbanterror/q3ut4/’ they will inherit the old values obstructing some of your new settings. Best thing to do is to rename the preferences and start from scratch. You can do this by:

mv ~/.q3a ~/.q3a-old
cd ~/.urbanterror/q3ut4
mv q3config.cfg q3config.cfg.old

For automatic configuration inheriting, Urban Terror (and other id tech games) will look for a file called autoexec.cfg in the configuration folder (~/.urbanterror/q3ut4 in this case). I’m not going to go over all the settings you can do. Rather, I’ll just provide the configuration file which has comments on most of the variables you’ll need. Place the file in ‘~/.urbanterror/q3ut4/’. To edit the file, I’d recommeding changing ‘r_mode’ to “4″ and turning fullscreen off, saving then loading Urban Terror. Edits to the configuration file can be applied on the fly (except some graphic ones). Use the tilda key (~) to get to console and this will release your mouse to make the edits. Make the edit and type:

/exec autoexec.cfg

in the console to reload the configuration. This will also show you if you have any errors in the configuration file as well. Lastly, be sure to read this file and and edit before giving it a full go. Even if you do have a 1440×900 resolution and use OSS there are likely a few other variables that may make UT run poorly or not at all.

// Urban Terror configuration
// http://www.urbanterror.net/urt_manual/controls.htm

// comments marked as * are default values

// # Hardware # //

// Graphic card
seta cg_drawFPS "0"         // fps (frames per second) display (0 off, *1 on)
seta r_colorbits "0"        // color depth (0 desktop default, 16, 32*)
seta r_texturebits "0"      // texture colors (0 desktop default, 16, 32*)
seta r_texturemode "GL_LINEAR_MIPMAP_LINEAR" // (filter: *NEAREST bilinear
                                             // LINEAR trilinear)
seta com_maxfps "125"       // max frames/second, 125 best
seta cg_sfxParticle "0"     // particle effects (- hit effects) (*0 off, 1 on)
seta cg_showBulletHits "0"  // hit info by nme(0 off, 1 where/whom, *2 1+damage)

// Monitor
seta r_fullscreen "1"       // fullscreen mode (*0 off, 1 on)
seta r_mode "-1"            // r_mode list: http://urt.taggedzi.com/guide1.php
seta r_customwidth "1440"   // resolution custom width
seta r_customheight "900"   // resolution custom height
seta r_displayrefresh "0"   // Refresh rate (0 desktop default, 60, 70...)
seta r_swapinterval "0"     // vertical sync (0 off, turn on if getting tearing)

// Gamma/Brightness
seta r_brightness "1"
seta r_gamma "1.15"

// Sound
seta s_driver "oss"         // sound driver (linux: alsa, oss)

// Network
// http://www.www0.org/w/Networking,_lag_meter,_and_gaming_consistency_guide_to_Urban_Terror
seta cg_lagometer "0"       // lag-o-meter display (0 off, *1 on)
seta rate "25000"           // transfer dl threshold (25000 broadband, *3000)
seta cl_maxpackets "42"     // packets sent per frame (*30-42) 42 is usually >

// Mouse
seta sensitivity "13"       // mouse speed (*5)
set m_filter "1"            // smooth mouse by averaging input (*0 off, 1 on)

// # Player # //
seta cg_selectedPlayerName "IsoMetric" // player name
seta raceblue "2"           // player skin (1-4)
seta racered "2"
seta cg_rgb "1 0.5 1"       // player marker color (R G B Alpha)
seta cg_sfxTeamBands "1"    // team bands (0 off, 1* on)

// # General Settings # //
set cg_gunsize "1"          // gunsize (*0 large, 1 small)
set cg_hitsound "1"         // hit sound when hitting opponent (*0 off, 1 on)
// Tac goggle color
cg_nvg "3" // (*0 green,1 red,2 blue,3 yellow,4 cyan,5 purple,6 pink,7 orange)

// # HUD settings # //
seta cg_mapalpha "0.5"    // map transparency (*0.7)
seta cg_maparrowscale "2" // map player arrow size (*3.0)
seta cg_mappos "1"        //map posit. (0 off, *1, top-left, 2-9 counter-clock)
seta cg_mapsize "150"     // map size (*150)
seta cg_hudweaponinfo "1" // Weapon information (0 rounds/clips/mode,
                          // 1 - 0 + weapon, *2 - 1 + icon)
seta cg_drawcrosshair "4"             // crosshair type (1-11)
seta cg_crosshairsize "20"            // crosshair size (*5)
seta cg_crosshairrgb "0 1 0 0.7"      // crosshair color (RGB Alpha[must be 1])
seta cg_crosshairnamestype "3"        // crosshair name types (0-3*)
seta cg_crosshairnamessize "0.2"      // crosshair player name size
seta cg_crosshairfriendRGB "1 .5 0 1" // crosshair color teammates (RGB Alpha)
seta cg_scopefriendrgb "1 .5 0 1"     // crosshair color team scoped (RGBA)
set cg_chatTime "8000"    // chat messages display time (in milliseconds)
seta cg_drawteamoverlayscores "3"     // team box (0 off, *1 both teams,
                                      // 2 1 + nme alive, 3 1 + all alive)

// # Keybindings # //
// http://urt.taggedzi.com/guide1.php - available keys

// Menus
bind b "ui_selectgear"    // gear menu
bind n "ui_selectteam"    // team menu
bind SHIFT "ut_radio"     // radio menu
bind TAB "+scores"        // scoreboard

// Movement
bind e "+forward"         // move forward
bind d "+back"            // move backward
bind s "+moveleft"        // move left
bind f "+moveright"       // move right
bind CAPSLOCK "+moveup"   // jump
bind r "+button8"         // sprint

// Crouch Toggle
set sit "+movedown; wait 15; set crouch vstr stand"
set stand "-movedown; wait 15; set crouch vstr sit"
set crouch "vstr stand" //set default
bind a "vstr crouch"

// Weapons/Items
bind MOUSE1 "+attack"             // fire
bind MOUSE2 "+button6"            // bandage
bind MOUSE3 "+button7"            // activate - open/close door,(def)use bomb
bind MWHEELDOWN "ut_zoomout"      // zoom out
bind MWHEELUP "ut_zoomin"         // zoom in
bind t "+button5"                 // reload
bind c "+button3"                 // weapon mode (automatic, burst...)
bind g "ut_weaptoggle primary"    // primary weapon
bind w "ut_weaptoggle secondary"  // secondary weapon
bind v "weapon 12; weapon 11"     // smoke grenade before hand grenade
bind q "ut_weaptoggle sidearm"    // sidearm
bind x "ut_weaptoggle knife"      // knife
bind z "ut_weapdrop"              // drop weapon
bind 1 "ut_itemnext"              // next item
bind 2 "ut_itemdrop"              // drop item
bind 3 "ut_itemuse"               // use item

// fine grain sniper toggle (lessens mouse sensitivity)
set zoomtoggle1 "cg_zoomfov 15; sensitivity 10; set nextzoomtoggle vstr zoomtoggle2; ut_echo sniper view"
set zoomtoggle2 "cg_zoomfov 22.5; sensitivity 13; set nextzoomtoggle vstr zoomtoggle1; ut_echo regular view"
set nextzoomtoggle "vstr zoomtoggle1"
bind h "vstr nextzoomtoggle"

// Chat
bind y "messagemode"  // chat global
bind u "messagemode2" // chat team
bind i "messagemode3" // chat target (person behind crosshairs)
bind o "ut_radio"     // radio menu

// radio keys
// http://wiki.urbanterror.org.ve/index.php?title=Manual_de_Urban_Terror#Radio_Command_Chart

bind F1 ut_radio 2 1            // Move in.
bind F2 ut_radio 3 9            // Holding here.
bind F3 ut_radio 3 3 [$health]  // I need a medic!
bind F4 ut_radio 4 3            // Base status?
bind F5 ut_radio 7 2            // I'm going for the flag.
bind F6 ut_radio 2 6            // Requesting backup.
bind F7 ut_radio 2 5            // Cover me.
bind F8 ut_radio 5 5            // Incoming!
bind F9 ut_radio 7 6            // Flag exiting left.
bind F10 ut_radio 7 8           // Flag exiting front.
bind F11 ut_radio 7 7           // Flag exiting right.
bind F12 ut_radio 1 5           // Base is secure.

bind 4 ut_radio 1 2             // Negative.
bind 5 ut_radio 1 1             // Affirmative.
bind 6 ut_radio 9 1             // Good job team.
bind 7 ut_radio 4 8             // Who's ya daddy?
bind 8 ut_radio 9 9             // Thanks.
bind 9 ut_radio 6 6 Hi          // Hi (High)
bind 0 ut_radio 6 7 Hello       // lo (Hello)

// System controls
bind - "vote no"                                  // vote no
bind = "vote yes"                                 // vote yes
bind HOME "screenshot; ut_echo screenshot taken"  // take screenshot
bind END "toggle cg_drawFPS"                      // fps display toggle
bind INS "toggle cg_lagometer"                    // lag-o-meter toggle

seta record_demo        "vstr record_demo_start"  // record toggle
seta record_demo_start  "set record_demo vstr record_demo_stop; stoprecord; recorddemo; wait 15; ut_echo recording started"
seta record_demo_stop   "set record_demo vstr record_demo_start; stoprecord; wait 15; ut_echo recording stopped"
bind PGUP "vstr record_demo"

2 Comments

  1. qubodup said,

    ESDF FTW! :3

  2. Gen2ly said,

    ESDF… yeah, just seems natural now. My hand seems to only know the position it’s in if it touches that nice little bump on the f key… lol, only sheep use WASD.

Post a Comment