PDA

View Full Version : Performance TFC


DarthGreg
February 12th, 2008, 06:00 PM
This is the Performance TFC package I put together ages ago, that believe it or not people still ask me for. Decided to write this post to make everything easier to find.

Performance TFC (http://files.filefront.com/performance+tfc2zip/;9621744;/fileinfo.html)

It's a collection of models and textures that I compiled (I did not create any of it) to improve my FPS. Instructions on where the files go is all inside the zip, as well as a caution to backup any customizations you don't want to lose - mainly custom textures and player models.

Also I get asked about an autoexec I put together even earlier, of which there are two versions: one very large and bloated, one slimmed down to only the commands that actually affect the performance problem.

Here's the smaller one; the HL video settings will give you the highest boost, the OpenGL settings may help, and the rest is just recommendations that have no bearing on FPS:
// HL Video Settings
bitmapfonts 1
brightness 5
cl_gibcount 0
cl_giblife 0
cl_showfps 1
fps_max 100
// fps_modem 100
gamma 5
lightgamma 0
mp_decals 0
r_decals 0
r_drawviewmodel 0
r_mirroralpha 0
texgamma 0
vid_d3d 1

// OpenGL Video Settings
gl_lightholes 0
gl_overbright 1
gl_round_down 0
gl_texsort 1
gl_texturemode GL_LINEAR_MIPMAP_LINEAR

// Sound Settings
s_eax 1
volume 0.300
room_type 0
room_off 1

// Voice Settings
voice_enable "1"
voice_forcemicrecord "1.000000"
voice_modenable "1"
voice_loopback 0
voice_maxgain 5
voice_avggain 0.500
voice_scale 5
voice_fadeouttime 0.100
voice_profile 0
voice_showchannels 0
voice_showincoming 0
voice_enable 1
voice_dsound 1
voice_overdrive 2
voice_overdrivefadetime 0.400
voice_recordtofile 0
voice_inputfromfile 0
voice_modenable 1
voice_clientdebug 0

// Net Settings
cl_allowdownload 1
cl_allowupload 1
cl_cmdrate 100
cl_download_ingame 1
cl_updaterate 100
rate 9999
cl_rate 9999
precache 1

And for posterity, here's the large one; if you're going to use it, please go through and make sure it doesn't change anything you have set anywhere else:
//tweaks
//darthgregs tweak
bitmapfonts 1 // enable use of bitmap fonts (may be easier to read)
brightness 10 // enable glare reduction (try higher values, like 3, for even brighter) [Flags: a]
cl_gibcount 0 // sets the number of gibs to spawn when blowing an enemy to bits. lower or 0 may improve FPS [Flags: a]
cl_giblife 0 // sets the time in seconds that gibs remain before disappearing. lower or 0 may improve FPS [Flags: a]
cl_gibvelscale 1 // sets the scale factor for gib graphics. higher may improve FPS [Flags: a]
cl_showfps 1 // enable FPS display (frames per second)
fps_max 999 // set the maximum number of frames per second that the game will try to render. Similar to the old fps_modem, but no longer affects network lag.
gamma 7 // set video gamma level [Flags: a]
gl_affinemodels 0 // makes my screen go crazy (Voodo2)
gl_alphamin 0.250 // set minimum alpha blending level
gl_clear 0 // makes cracks between textures visible when 1
gl_cull 1 // enable rendering of visible objects only (0 will slow fps)
gl_d3dflip 0 // enable reversed rendering order for D3D video mode
gl_dither 1 // enable dithering [Flags: a]
// gl_dump // dump data about video card: vendor, renderer, version, entensions
gl_flipmatrix 0 // enable special crosshair fix when using the 3DNow! 3DFX MiniGL (3dfxglam.dll) [Flags: a]
gl_keeptjunctions 0 // enable allowing slight cracks between textures, setting to 1 may look better on some video cards, but will be a bit slower (fewer fps)
gl_lightholes 0 // enable light holes (0 may improve perfomance)
// gl_log gl.log // writes graphic debug messages to logfile
gl_max_size 256 // set the maximum texture size (higher may look better, but may slow performance if set too high)
gl_monolights 0 // creates a uniform light source with no shadows (OpenGL only) [Flags: a]
gl_nobind 0 // enable replacing textures with bizarre alphanumeric characters (trippy)
gl_nocolors 0 // disable colors (OpenGL only)
gl_overbright 1 // enable maximum brightness mode [Flags: a]
gl_palette_tex 1 // enable paletted textures
gl_picmip 0 // set rendering quality (0,1,2, higher is faster and lower quality) see gl_playermip, gl_texturemode
gl_playermip 2 // set player rendering quality (0,1,2, higher is faster and lower quality) see gl_playermip, gl_texturemode
gl_polyoffset 4 // set polygon offset -- try larger values for flickering decal or texture problems [Flags: a]
gl_reporttjunctions 0 // enable T-junction reporting to console, see gl_keeptjunctions
gl_round_down 3 // set texture size rounding-down value (higher rounds more, resulting in lower quality and higher FPS)
gl_smoothmodels 0 // enable model smoothing. Disabling (0) may increase fps a bit
gl_spriteblend 1 // enable blending sprite graphics
// gl_texels // report the number of texesl uploaded to the video card
gl_texsort 0 // enables brighter and more vivid textures, but slows performance

gl_wateramp 0 // enable amplified (higher) waves in water. 1 may decrease FPS (see sv_wateramp)
gl_zmax 4096 // set max size for zbuffer
gl_ztrick 0 // speeds up renndering on some 3dfx cards (and maybe others), but may cause flickering on some video cards
host_speeds 0 // enable display of current FPS on-screen
lcd_x 0 // screws up my screen
lcd_yaw 0 // screws up my screen
lightgamma 1 // set lighting gamma value
r_mirroralpha 0 // enable reflective textures (0 may improve performance)
vid_d3d 0 // enable Direct3D support (keep this off if your video card supports OpenGL)
viewsize 120 // set view size [Flags: a]
ambient_fade 100 // set the distance at which ambient sounds fade away
ambient_level 0.300 // sets sound level for ambient sounds
bgmbuffer 4096 // set the CD audio buffer size
bgmvolume 0 // enable CD audio (0 may improve performance) [Flags: a]
hisound 1 // enable high-quality sound (1=22kHz, 0=11kHz) see also loadas8bit (0 may improve performance) [Flags: a]
loadas8bit 0 // set to 1 to force 8-bit (lower quality) sounds (see hisound also)
nosound 0 // disable sounds (1 will make the game silent)
room_delay 0 // 3D sound setting
room_dlylp 2 // 3D sound setting
room_feedback 0.520 // 3D sound setting
room_left 0.010 // 3D sound setting
room_lp 0 // 3D sound setting
room_mod 0 // 3D sound setting
room_off 0 // 3D sound setting
room_refl 0.900 // 3D sound setting
room_rvblp 1 // 3D sound setting
room_size 0.060 // 3D sound setting
room_type 0 // 3D sound setting
snd_noextraupdate 0 // disable 'extra' sound system updates -- only try 1 if you have sound problems
snd_show 0 // enable display of sounds as they are played
suitvolume 0.250 // set HEV suit volume [Flags: a]
s_2dvolume 0.880 // Maximum volume at which 2D sounds are played. By the nature of the filters being applied to the A3D buffers, they are quieter then their 2D counterparts. Hence it is important to quiet the 2D sounds to normalize volume. Valid range is 0 to 1.0
s_a3d 0 // enable A3D support (0 may improve performance) [Flags: a]
s_automax_distance 30 // set distance for max sound volume [Flags: a]
s_automin_distance 2 // set distance for min sound volume [Flags: a]
s_bloat 2 // A3D 2.0 only. Bloat factor for polygons. This effectively scales each polygon by a certain amount. This is a rough way to fill holes left by unrendered small polygons. [Flags: a]
s_buffersize 65536 // set sound buffer size
s_distance 60 // adjusts the ratio of game units to meters - affecting velocity, positioning, and distance. The higher this number, the closer everything gets (in audio terms). Valid range is 0 to infinity. [Flags: a]
s_doppler 0 // adjusts doppler effect - this setting is very sensitive which is why it is disabled by default. Valid range is 0 to 10. [Flags: a]
s_eax 0 // enable EAX support (0 may improve performance) [Flags: a]
s_geometry 1 // A3D 2.0 only. enables geometry rendering on/off. When disabled (0), geometry is not processed at all.
s_max_distance 1000 // Maximum distance from the listener before rolloff is no longer applied. Valid range is s_min_distance to infinity [Flags: a]
s_min_distance 8 // Minimum distance a source will be from the listener before rolloff is applied to it. Sources with a value lower than s_min_distance will play at full volume. Valid range is 0 to s_max_distance. [Flags: a]
s_numpolys 200 // A3D 2.0 only. Maximum polygons to be rendered. Polygons will stop being rendered either when there are no more polygons left or s_numpolys polygons have been rendered. Setting this to 0 is the same as turning s_geometry off. Valid range is 0 to infinity. [Flags: a]
s_occfactor 0.250 // A3D 2.0 only. Transmission value of material - the smaller the number, the more occluded the sound is (less sound passes through the material). Valid range is 0 to 1.0
s_occlude 1 // A3D 2.0 only. enable sound occlusions.
s_refdelay 4 // A3D 2.0 only. Delay between a source and its closest reflection. The higher the delay, the more time it takes between when the source and its first reflection is played. Valid range is 0 to 100. [Flags: a]
s_refgain 0.400 // A3D 2.0 only. Adjusts the gain on each reflection, where higher number means louder reflections. Remember very loud reflections could cancel out the effect of HRTFs. Valid range is 0 to 1.0 [Flags: a]
s_reflect 1 // A3D 2.0 only. enable sound reflections.
s_reverb 1 // enable reverb (0 may improve performance)
s_rolloff 1 // Adjusts the rolloff factor; when the rolloff value is increased, the effects of distance are increased: high frequencies are filtered and volume is lowered. Valid range is 0 to 10. [Flags: a]
s_verbwet 0.250 // controls the wet/dry mix of reverbfor A3D only. The higher the number, the more wet (more reverb) the sounds. Valid range is 0 to 1.0 [Flags: a]
_snd_mixahead 0.2 // set sound mixahead value (like s_mixahead in Q2), different values may help fix stuttering problems on some sound cards [Flags: a]
voice_scale "2"
voice_enable "1"
voice_forcemicrecord "1.000000"
voice_modenable "1"
// Voice fix for XP
voice_loopback 0
voice_maxgain 5
voice_avggain 0.500
voice_scale 3
voice_fadeouttime 0.100
voice_profile 0
voice_showchannels 0
voice_showincoming 0
voice_enable 1
voice_dsound 0
voice_overdrive 2
voice_overdrivefadetime 0.400
voice_recordtofile 0
voice_inputfromfile 0
voice_modenable 1
voice_clientdebug 0
bottomcolor 6 // set the bottom color of your player model [Flags: ai]
clientport 27005 // set defail client port (TCP/IP) for connecting to a server (may specify other port with "connect iport")
cl_allowdownload 1 // enable download of maps, models, and decals on joining a server [Flags: a]
cl_allowupload 1 // enable upload of maps, models, and decals on joining a server [Flags: a]
// cl_cmdrate 40 // set the number of times per second that the client will update the server. Leave at 30 (or lower) for modems, set to 35-55 for Cable or DSL, 50 for LAN games. [Flags: a]
cl_dlmax 128 // set the maximum number of kilobytes to download from a server [Flags: ai]
cl_download_ingame 0 // enable downloads during a multiplayer game (generally not a good thing -- instead set cl_allow_download 1 and this one to 0 so downloads are between maps only) [Flags: a]
cl_fixtimerate 7.5 // sets the fixed time rate
cl_gaitestimation 1 // enable estimated player stepping motion -- disable (0) to decrease apparent "ice skating" and possibly increase lag
cl_hightrack 0 // force a spectator on follow mode (tracking a single player) to always track the highest scoring player (thanks Ken).
cl_latency 0 // set client latency value
cl_lb 0 // enable client-side blood splat prediction (if cl_lw is 1). If on, hits may look like misses and vice-versa. [Flags: ai]
cl_lc 1 // enable lag compensation (if server enables with sv_unlag 1) [Flags: ai]
cl_lw 1 // enable client-side (lagless) weapon animations and sounds. If 1, weapons animation and sounds will fire instantly, but the real shot must be acknowledged by the server to happen, so animation/sounds may not match server reality. Leave on (1) if you have lag compensation on (cl_lc 1). [Flags: ai]
cl_nopred 0 // disable client-side prediction (1 may increase lag)
cl_rate 9999.0021 // set rate that client will send data to the server in bytes per second (suggested starting values: 1000-4000 modem, 5000-7000 ISDN, 6000-10000 cable/DSL, 7000-20000 T1, 20000+ LAN) -- bad values cause LAG! turn on the r_netgraph 3 to help evaluate different values, and try non-integers like 4001.0528.
cl_resend 6 // set resend count (the number of times to attempt to resend packets)
cl_shownet 0 // enable display of network packet numbers
cl_spectator_password 0 // set the password for spectator access to a server
cl_timeout 1500 // set the inactivity time before a client is disconnected (timed out) [Flags: a]
// cl_updaterate 100 // set number of updates client will request from the server each second. In general, the more players in the game, the lower this should be. Lower than 12 will cause choppiness, but 15 may be great for some slow connections. Cable and DSL connections may like 30-40, unless there are too many players on the server. FOr lan games, use 50. [Flags: ai]
coop 0 // enable cooperative play mode see the coop link on the main page for tips on getting coop working) [Flags: sv]
fakelag 0 // simulates lag, higher values are laggier
fakeloss 0 // simulates packet loss, higher values are more lossy
ipx_clientport 0 // set client port for IPX LAN game
ip_clientport 27015 // set client port for TCP/IPLAN game
net_address 0 // ?
net_chokeloop 0 // ?
net_drawslider 0 // ?
port 27015 // set the default connect port
topcolor 30 // set player model top color [Flags: ai]
hud_capturemouse 1
lookspring 0
lookstrafe 0
m_filter 1
m_forward 1
m_pitch 0.022
m_side 0.800
m_yaw 0.022
vgui_emulatemouse 0
zoom_sensitivity_ratio 1.200
+mlook

"setinfo" "ec" "1"
cl_anglespeedkey 0.670 // set the speed that the direction keys (not mouse) change the view angle
cl_backspeed 400 // set the player backup speed on a server, up to server max [Flags: a]
cl_bob 0.000 // set the amount that your player view bobs while running. Motion-sick types should set this to 0.
cl_bobcycle 0.000 // set how frequently player view bobs while running. Motion-sick types should set this to 0.
cl_bobup 0.500 // set the the amount of movement before view-bobbing kicks in. Motion-sick types should set this to 0.
cl_forwardspeed 400 // set the player maximum forward speed. may not exceed server max [Flags: a]
cl_himodels 0 // enable high quality player models. Set to 1 for slightly better quality player models (and slightly lower fps) [Flags: a]
cl_movespeedkey 0.300 // set movement speed for keyboard movement keys
cl_pitchdown 89 // set maximum angle that player can look down (in degrees)
cl_pitchspeed 225 // set pitch (up and down) change speed
cl_pitchup 89 // set maximum angle thaat player can look up (in degrees)
cl_showerror 0 // enable error display
cl_showevents 0 // enable event display
cl_showmessages 0 // enable display of game messages
cl_sidespeed 400 // set the manimum player strafing speed (may not exceed server manimum)
cl_slist 10 // set the number of servers in the serverlist
cl_solid_players 1 // enable solid player models
cl_upspeed 320 // set the player climbing up speed (up to server max)
cl_waterdist 4 // set underwater distance
cl_yawspeed 210 // set turning speed (with keyoard, up to server max)
con_color "255 255 255" // set console color [Flags: a]
con_notifytime 4 // set console message notification time (how long messages stay on screen)
crosshair 1 // enable crosshair [Flags: a]
default_fov 120 // set default field of view
hud_capturemouse 1 // enable locking mouse pointer to menu area when menu activated [Flags: a]
hud_centerid 1 // enable center screen display of player ID names (instead of lower-left corner) [Flags: a]
hud_classautokill 1 // enable auto-suicide on class changes [Flags: a]
hud_deathnotice_time 6 // set how long death messages remain onscreen
hud_drawhistory_time 5 // set how long HUD item icons remain onscreen
hud_fastswitch 1 // enable fast weapon switching (0 is HL-style, where you must press fire after picking a weapon before it is activated) [Flags: a]
hud_saytext_time 5 // set how long chat messages remain onscreen
hud_takesshots 0 // enable screen shot saving at the end of all games [Flags: a]
precache 1 // enable pre-loading of all needed files at map start (1 may help skipping/stoppoing problems)
r_decals 5 // set max number of blast mark decals in single-player (lower number will improves perfomance some, but decals wil disappear sooner)
r_drawviewmodel 0 // enable drawing player weapon model (off improves perfomance a bit)
r_dynamic 0 // enable dynamic lighting -- the light reflections glowing objects make on other objects nearby, such as rockets and the flashlight (0 may improve fps)
r_fullbright 1 // enable max brightness, local game only
r_glowshellfreq 2.200 // set the frequency of shimmering on glowing shells around flags and keys
r_mmx 0 // force MMX calculation methods for MMX CPU's (set to 1 if your CPU supports MMX! Any p2 does, as do most newer AMD and Cyrix chips. If using 1 reduces perfomance, set back to 0)
r_norefresh 0 // enable clearing hud and console before redrawing
r_novis 0 // enable drawing underwater polygons (must be 1 for r_wateralpha to work)
r_shadows 0 // enable player shadows (decreases performance and doesn't look that great)
r_speeds 0 // enable display of average fps, draw speed, and polygon info (use to see running FPS info)
r_traceglow 0 // enable inclusion of monsters in glow sprite occlusion checking (1 will decrease perfomance)
r_wateralpha 1 // enable alpha blending underwater (r_novis muse be 1 for this to work)
scr_centertime 2 // set how long server messages remain on screen
scr_conspeed 9999 // set the console scroll speed (try 3000 to make it nearly instant)
setinfo ec 1 // enable class config auto-exec
tfc_newmodels 0 // disable new models

violence_ablood 0 // enable blood (0 will improve perfomance some, but you won't see any blood)
violence_agibs 0 // enable gibs (0 will improve performance some, but you won't see body chunks)
violence_hblood 0 // enable more blood (0 will improve perfomance some, but you won't see as much blood)
violence_hgibs 0 // enable more gibs (0 will improve performance some, but you won't see as many body chunks)
v_centermove 0.150 // set autocentering threshold (how much the view must move before autocentering kicks in)
v_centerspeed 500 // set autocentering speed

Newget
February 18th, 2008, 11:05 PM
Thanks, I've been looking for this to put on my laptop

Burningteddy
February 19th, 2008, 01:59 AM
Oh man, I don't need them, but the models and textures are epic. :D

DarthGreg
July 8th, 2008, 08:51 PM
New home, courtesy of Dinosaur Gas: http://www.tfcgaschamber.com/dload.php?action=file&file_id=1209

FluxCapacitor
July 9th, 2008, 09:17 AM
Come on guys the game was made 10 years ago, you people still on p2's?

Wonder Boy
July 9th, 2008, 04:57 PM
Sadly, yes.

Thanks Greg and Dino