* added note to documentation that it's based on ioquake3 and you have the ability to record videos:
cl_aviFrameRate - the framerate to use when capturing video
cl_aviMotionJpeg - use the mjpeg codec when capturing video
New commands
video [filename] - start video capture
stopvideo - stop video capture
[edit 2010-06-24]
Note: it's not mentioned in the ioquake3 documentation but you need to disable openal in order to have sound recorded in the avi file. +set s_useopenal 0
* since freecaming while rendering is awkward (fps drop) I included a temporary fix until I work on the camera stuff: /recordpath, issue the command again to stop recording and then /playpath to playback the movements that you made
* command /cvarsearch <string> to find any cvar containg the string. Ex: /cvarsearch rail will show the cg_rail* cvars as well as r_rail*
* cg_crosshairHitStyle 0-8 like quake live
* cg_crosshairHitTime, cg_crosshairHitColor
* cg_crosshairPulse same as quake live
* cg_crosshairAlpha
* cg_crosshairAlphaAdjust to adjust the transparent portions of crosshairs. cg_crosshairAlphaAdjust > 0 will make them more visible, less than 0 will make them even more transparent
* cg_crosshairBrightness values 0.0 -> 1.0 work the same as quake live (essentialy making it more like crosshair darkness). Values greater than 1.0 will actually make it brighter. The values above 1.0 will shift that integer amount of the pixels towards white. cg_crosshairBrightness 255 will make all the original pixels white.
* font, scale, etc. options for all q3hud elements:
cg_drawTeamOverlay*, cg_drawAttacker*, cg_lagometer*, cg_drawSpeed*, cg_drawOrigin*, cg_drawItemPickups*, cg_drawFollowing*, cg_weaponBar*, cg_drawVote*, cg_drawWaitingForPlayers*, cg_drawWarmupString*, cg_drawCrosshairNames*, cg_drawAmmoWarning*, cg_drawSnapshot*, cg_drawPlayerNames*, cg_drawFPS*,
Ex: cg_drawFpsAlpha, cg_drawFpsColor, cg_drawFpsScale, cg_drawFpsPointSize, cg_drawFpsFont, cg_drawFpsStyle, cg_drawFpsAlign, cg_drawFpsX, cg_drawFpsY, cg_drawFpsNoText (just shows the number)
* cg_lightningShaft options same as quake live
* cg_ligntingImpact
* fixed a rewind/ff/seek bug where the demo taker's torso was twisted
* color cvars now use hex
* most wolfcam_* cvars changed to cg_
* in addition to cg_enemyModel and cg_teamModel you can override the skins with cg_enemyHeadSkin, cg_enemyTorsoSkin, cg_enemyLegsSkin.
Ex: set cg_enemyModel "keel/bright" and then set cg_enemyLegsSkin "xaero/color" to use xaero's pants. See below why the feature was included.
* cg_enemyRailColor1, cg_enemyRailColor2, cg_enemyRailColor1Team and cg_enemyRailColor2Team can be used to set the rail colors to whatever team color they are
* cg_enemyRailItemColor (cg_teamRailItemColor) the color of the actual gun they hold, default is "" which uses whatever the player's color1 is.
* cg_enemyRailRings (cg_teamRailRings) if you want the enemies to have rail rings
* cg_enemyRailNudge and cg_teamRailNudge
* color skins for all models, they are generated automatically from the already available red and blue skins you can use r_colorSkinsFuzz (the amount that a diff between red and blue skins will signal a match and not replace with white: default 20) and r_colorSkinsIntensity (default 1.0) and then /createcolorskins vid_restart to tweak them. You can then use skin overrides to allow either team or enemies to keep their models but use colorized skins: ex: set cg_enemyModel "", then cg_enemyHeadSkin "color", cg_enemyTorsoSkin "color", cg_enemyLegsSkin "color", same for team
* cg_railQL 1 to use quakelive rail core with rail rings interspersed, cg_railQLRailRingWhiteValue to control the white value of the rings.
* cg_railRadius cg_railRotation cg_railSpacing to control spiral rails
* eliminated cg_oldRail, so that you can un-nudge. You can use cg_railNudge even for rails that don't have rings. By "un-nudge" I mean that q3 and ql shift the rail below the crosshair for most rail styles (try shooting rails at a wall and you'll see the impact mark below your crosshair). Use cg_railNudge 0 to have your rails go through your crosshair.
* cg_railItemColor for the railguns that spawn or are dropped by players
* command /fragforward [optional pre kill time ms] [optional death hover time ms]
* /ccopy <var> <new cvar>
* /reseta cg_drawAttacker to reset cg_drawAttacker* to defaults
* demo looping /setloopstart /setloopend /loop to start stop, or /loop <servertime start> <servertime stop>. Check with /servertime command
* can use scoreboard while freecaming
* cg_scoreBoardWhenDead
* cg_scoreBoardAtIntermission
* tokenized frag and obituary messages: cg_drawFragMessageTokens "You fragged %v" cg_obituaryTokens "%k %i %v". Available tokens:
%v victim name
%V victim name with color escapes removed
%k killer name
%K killer name with color escapes removed
%q old q3 frag message ("player ate player2's rocket")
%w weapon name ("Railgun, Rocket Launcher", etc..)
%i weapon icon
%A per kill total accuracy (all weapons) (killer)
%a per kill accuracy of kill weapon (killer)
%D per kill total accuracy (all weapons) (victim)
%d per kill total accuracy of last held weapon (victim)
%c hex color code ex: %c0xff00ff you can also use the usual color codes: ^3
%t victim's team color
%T killer's team color
%f victim's flag in team games
%F killer's flag in team games
For lightning gun whores try: cg_drawFragMessageSeparate 1, cg_drawFragMessageTokens "You fragged %v %a"
* you can switch fonts in hud configs, "font" keyword added ex:
itemDef {
name "a"
rect 16 5 63 12
visible 1
textstyle 3
decoration
textscale .45
forecolor 1 1 1 1
ownerdraw CG_PLAYER_AMMO_VALUE
addColorRange 6 999 1 .75 0 1
//font "fontsextra/times.ttf" 48
font "q3small" 48
}
* cg_weather 0 to eliminate rain on t7
* fixed some bad interpolation bugs, playback should be much smoother
* ql and q3 gibs can be toggled, no need to move files around, see new directions in README-wolfcam.txt, also fixes bug where q3 files disabled ql screendamge settings
* ca keep track of obituary messages and updates scoreboard accordingly
* cg_drawPlayerNames
* freecam /stopmovement since there's no gravity friction
* freecam /view <entity num> to lock view /listentities
* freecam /gotoview to jump to the entity (or demo taker)
* q3fonts available as "q3tiny", "q3small", "q3big", "q3giant"
http://www.filefront.com/16841367/wolfcamql-5.1.zip
[edit 2010-06-24]
5.2 2010-06-24
* fix bug with /playpath that caused it to get un-synced when recording video
* s_useopenal default is 0
* echopopup can be used if cg_draw2d 0
http://www.filefront.com/16847965/wolfcamql-5.2.zip
[edit 2010-07-03]
5.3 2010-07-03
* black text/models in windows bug fix, linux atoi() automatically converts hex, check for hex in cvar.c really sorry about this.
* screen will update while paused and rewinding or fast forwarding
* cg_drawPlayerNames fixed
* cg_drawEntNumbers will draw the entity numbers above everything so you can easily id something like a rocket or grenade and then use /view <num> to lock the view onto it
* '/view here' to lock view at the place you are
* /playpath fixes (getting stuck and playing too fast)
* sound origin set to camera origin (was previously still on demo taker)
* cg_freecam_useTeamSettings 1 to set demo takers skin/model to match teamates for team games
* freecam don't switch off hud if demo taker dies
* ctf different colors for team spawns with cg_drawSpawns
* colorize cpma/ql rail rings inside core (I'd assumed it was always white), cg_railQLRailRingWhiteValue can still be used to control brightness
* enemy/team skin fix to check when the cvars were set to ""
* bright/color skins fix to work with r_vertexlight 1 again
http://www.filefront.com/16949003/wolfcamql-5.3.zip
[edit 2010-07-11]
5.4 2010-07-11
* freecam +rollright +rollleft /centerroll (like /centerview) +rollstopzero
These change screen tilt. You can use +rollstopzero in order to recenter smoothly it while using +rollright or +rollleft. defaults:
bind e "+rollright"
bind q "+rollleft"
bind f "+rollstopzero"
bind 3 "centerroll"
* tdm bug fix wasn't drawing enemy models
* missile smoke trail fix when using delagging interp (cg_useOriginalInterpolation)
* reset times for a few things when rewinding/fastforwarding and pausing (frag message staying on screen, crosshair names not fading)
* draw entities (players, missiles, items, etc.) when paused and then rewinding or fastforwarding
* don't exit program when you try to set a video mode your card or monitor don't support, fall back to safe values. This is in case you try to exec a config that you've downloaded or gotten from someone else. If a vid mode change fails these get reset to default: r_mode, r_fullscreen, r_colorbits, r_depthbits, r_stencilbits, r_ext_multisample, r_stereoEnabled
* /recordpath and /playpath fixes /playpath accepts a "smoothing" value. Ex:
/playpath 4 will skip every 4 entries in the recorded path and interpolate angles and positions between those
* r_roundimagesdown 0 bug fix
* cg_demoSmoothing I'm not a fan of this kind of stuff, but I had to include something since alot of the servers have lag problems. It doesn't smooth the entire demo, it only kicks in when you basically got screwed by the server (assuming you aren't deliberately lagging). It looks ahead in the demo to see if there are sequential snapshots where you have some type of velocity in both snapshots but your origin hasn't changed. That means the server hasn't gotten around to playing the packets you sent, which will make demo playback jerky. A cyan bar will be drawn in the lagometer whenver this happens.
* you don't have to have r_fullscreen 1 in order to use r_overbrightbits
* r_mapOverBrightBitsValue r_overBrightBitsValue as alternatives to r_mapOverBrightBits and r_overBrightBits
I'll try to explain a bit what r_mapOverBrightBits and r_overBrightBits do:
Both will multiply the colors of a texture by a power of 2, with r_overBrightBits using gamma ramp. So r_mapOverBrightBits 0 will multiply the colors 2^0 == 1, doesn't change them at all. r_mapOverBrightBits 1 will multiply by 2^1 == 2, r_mapOverBrightBits 2 will multiply by 2^2 == 4, r_mapOverBrightBits 3 will multiply by 2^3 == 8.
Multiplying by powers of two doesn't offer very much control. Personaly I find r_mapOverBrightBits 2 (multiply by 4) to be a little dark, but with r_mapOverBrightBits 3 (multipy by 8) you basically obliterate all the light sources in the map since textures are as bright as they could possibly be. Set r_mapOverBrightBits to 0 and then use r_mapOverBrightBitsValue to multiply it by whatever number you want.
Incidentally r_mapOverBrightBits will preserve color. It won't keep brightening until things will become white (unlike, i think, r_intensity), so if one of the color components (red green blue) hits the max value of 255 it doesn't brighten anymore.
r_overBrightBits like I mentioned before applies gamma correction and it will distort colors. One of the limitations of quake3/ioquake3/etc is that gamma correction depends on r_ignorehwgamma being set to 0.
* F1 hard coded as an additional toggle for the console
* teamoverlay bug fix (the first player in the list was drawn offscreen)
* cg_drawRewards: 1 (default) draw reward count to the right of icon, 2: draw reward count below icon like quake3
* /viewunlockyaw /viewunlockpitch
Ex: use /viewunlockpitch if you want to view someone strafe jumping and not have the view bounce up and down.
* /gotoview added additonal options: /gotoview [forward] [right] [up] [force] relative to the viewed entity. The force (integer) option means to jump to the view even if you might get stuck inside a wall.
* /view added options: /view <entNum> [x offset] [y offset] [z offset] [] means optional
* /chase <entNum> [x offset] [y offset] [z offset] [] means optional
http://www.filefront.com/17037825/wolfcamql-5.4.zip
cl_aviFrameRate - the framerate to use when capturing video
cl_aviMotionJpeg - use the mjpeg codec when capturing video
New commands
video [filename] - start video capture
stopvideo - stop video capture
[edit 2010-06-24]
Note: it's not mentioned in the ioquake3 documentation but you need to disable openal in order to have sound recorded in the avi file. +set s_useopenal 0
* since freecaming while rendering is awkward (fps drop) I included a temporary fix until I work on the camera stuff: /recordpath, issue the command again to stop recording and then /playpath to playback the movements that you made
* command /cvarsearch <string> to find any cvar containg the string. Ex: /cvarsearch rail will show the cg_rail* cvars as well as r_rail*
* cg_crosshairHitStyle 0-8 like quake live
* cg_crosshairHitTime, cg_crosshairHitColor
* cg_crosshairPulse same as quake live
* cg_crosshairAlpha
* cg_crosshairAlphaAdjust to adjust the transparent portions of crosshairs. cg_crosshairAlphaAdjust > 0 will make them more visible, less than 0 will make them even more transparent
* cg_crosshairBrightness values 0.0 -> 1.0 work the same as quake live (essentialy making it more like crosshair darkness). Values greater than 1.0 will actually make it brighter. The values above 1.0 will shift that integer amount of the pixels towards white. cg_crosshairBrightness 255 will make all the original pixels white.
* font, scale, etc. options for all q3hud elements:
cg_drawTeamOverlay*, cg_drawAttacker*, cg_lagometer*, cg_drawSpeed*, cg_drawOrigin*, cg_drawItemPickups*, cg_drawFollowing*, cg_weaponBar*, cg_drawVote*, cg_drawWaitingForPlayers*, cg_drawWarmupString*, cg_drawCrosshairNames*, cg_drawAmmoWarning*, cg_drawSnapshot*, cg_drawPlayerNames*, cg_drawFPS*,
Ex: cg_drawFpsAlpha, cg_drawFpsColor, cg_drawFpsScale, cg_drawFpsPointSize, cg_drawFpsFont, cg_drawFpsStyle, cg_drawFpsAlign, cg_drawFpsX, cg_drawFpsY, cg_drawFpsNoText (just shows the number)
* cg_lightningShaft options same as quake live
* cg_ligntingImpact
* fixed a rewind/ff/seek bug where the demo taker's torso was twisted
* color cvars now use hex
* most wolfcam_* cvars changed to cg_
* in addition to cg_enemyModel and cg_teamModel you can override the skins with cg_enemyHeadSkin, cg_enemyTorsoSkin, cg_enemyLegsSkin.
Ex: set cg_enemyModel "keel/bright" and then set cg_enemyLegsSkin "xaero/color" to use xaero's pants. See below why the feature was included.
* cg_enemyRailColor1, cg_enemyRailColor2, cg_enemyRailColor1Team and cg_enemyRailColor2Team can be used to set the rail colors to whatever team color they are
* cg_enemyRailItemColor (cg_teamRailItemColor) the color of the actual gun they hold, default is "" which uses whatever the player's color1 is.
* cg_enemyRailRings (cg_teamRailRings) if you want the enemies to have rail rings
* cg_enemyRailNudge and cg_teamRailNudge
* color skins for all models, they are generated automatically from the already available red and blue skins you can use r_colorSkinsFuzz (the amount that a diff between red and blue skins will signal a match and not replace with white: default 20) and r_colorSkinsIntensity (default 1.0) and then /createcolorskins vid_restart to tweak them. You can then use skin overrides to allow either team or enemies to keep their models but use colorized skins: ex: set cg_enemyModel "", then cg_enemyHeadSkin "color", cg_enemyTorsoSkin "color", cg_enemyLegsSkin "color", same for team
* cg_railQL 1 to use quakelive rail core with rail rings interspersed, cg_railQLRailRingWhiteValue to control the white value of the rings.
* cg_railRadius cg_railRotation cg_railSpacing to control spiral rails
* eliminated cg_oldRail, so that you can un-nudge. You can use cg_railNudge even for rails that don't have rings. By "un-nudge" I mean that q3 and ql shift the rail below the crosshair for most rail styles (try shooting rails at a wall and you'll see the impact mark below your crosshair). Use cg_railNudge 0 to have your rails go through your crosshair.
* cg_railItemColor for the railguns that spawn or are dropped by players
* command /fragforward [optional pre kill time ms] [optional death hover time ms]
* /ccopy <var> <new cvar>
* /reseta cg_drawAttacker to reset cg_drawAttacker* to defaults
* demo looping /setloopstart /setloopend /loop to start stop, or /loop <servertime start> <servertime stop>. Check with /servertime command
* can use scoreboard while freecaming
* cg_scoreBoardWhenDead
* cg_scoreBoardAtIntermission
* tokenized frag and obituary messages: cg_drawFragMessageTokens "You fragged %v" cg_obituaryTokens "%k %i %v". Available tokens:
%v victim name
%V victim name with color escapes removed
%k killer name
%K killer name with color escapes removed
%q old q3 frag message ("player ate player2's rocket")
%w weapon name ("Railgun, Rocket Launcher", etc..)
%i weapon icon
%A per kill total accuracy (all weapons) (killer)
%a per kill accuracy of kill weapon (killer)
%D per kill total accuracy (all weapons) (victim)
%d per kill total accuracy of last held weapon (victim)
%c hex color code ex: %c0xff00ff you can also use the usual color codes: ^3
%t victim's team color
%T killer's team color
%f victim's flag in team games
%F killer's flag in team games
For lightning gun whores try: cg_drawFragMessageSeparate 1, cg_drawFragMessageTokens "You fragged %v %a"
* you can switch fonts in hud configs, "font" keyword added ex:
itemDef {
name "a"
rect 16 5 63 12
visible 1
textstyle 3
decoration
textscale .45
forecolor 1 1 1 1
ownerdraw CG_PLAYER_AMMO_VALUE
addColorRange 6 999 1 .75 0 1
//font "fontsextra/times.ttf" 48
font "q3small" 48
}
* cg_weather 0 to eliminate rain on t7
* fixed some bad interpolation bugs, playback should be much smoother
* ql and q3 gibs can be toggled, no need to move files around, see new directions in README-wolfcam.txt, also fixes bug where q3 files disabled ql screendamge settings
* ca keep track of obituary messages and updates scoreboard accordingly
* cg_drawPlayerNames
* freecam /stopmovement since there's no gravity friction
* freecam /view <entity num> to lock view /listentities
* freecam /gotoview to jump to the entity (or demo taker)
* q3fonts available as "q3tiny", "q3small", "q3big", "q3giant"
http://www.filefront.com/16841367/wolfcamql-5.1.zip
[edit 2010-06-24]
5.2 2010-06-24
* fix bug with /playpath that caused it to get un-synced when recording video
* s_useopenal default is 0
* echopopup can be used if cg_draw2d 0
http://www.filefront.com/16847965/wolfcamql-5.2.zip
[edit 2010-07-03]
5.3 2010-07-03
* black text/models in windows bug fix, linux atoi() automatically converts hex, check for hex in cvar.c really sorry about this.
* screen will update while paused and rewinding or fast forwarding
* cg_drawPlayerNames fixed
* cg_drawEntNumbers will draw the entity numbers above everything so you can easily id something like a rocket or grenade and then use /view <num> to lock the view onto it
* '/view here' to lock view at the place you are
* /playpath fixes (getting stuck and playing too fast)
* sound origin set to camera origin (was previously still on demo taker)
* cg_freecam_useTeamSettings 1 to set demo takers skin/model to match teamates for team games
* freecam don't switch off hud if demo taker dies
* ctf different colors for team spawns with cg_drawSpawns
* colorize cpma/ql rail rings inside core (I'd assumed it was always white), cg_railQLRailRingWhiteValue can still be used to control brightness
* enemy/team skin fix to check when the cvars were set to ""
* bright/color skins fix to work with r_vertexlight 1 again
http://www.filefront.com/16949003/wolfcamql-5.3.zip
[edit 2010-07-11]
5.4 2010-07-11
* freecam +rollright +rollleft /centerroll (like /centerview) +rollstopzero
These change screen tilt. You can use +rollstopzero in order to recenter smoothly it while using +rollright or +rollleft. defaults:
bind e "+rollright"
bind q "+rollleft"
bind f "+rollstopzero"
bind 3 "centerroll"
* tdm bug fix wasn't drawing enemy models
* missile smoke trail fix when using delagging interp (cg_useOriginalInterpolation)
* reset times for a few things when rewinding/fastforwarding and pausing (frag message staying on screen, crosshair names not fading)
* draw entities (players, missiles, items, etc.) when paused and then rewinding or fastforwarding
* don't exit program when you try to set a video mode your card or monitor don't support, fall back to safe values. This is in case you try to exec a config that you've downloaded or gotten from someone else. If a vid mode change fails these get reset to default: r_mode, r_fullscreen, r_colorbits, r_depthbits, r_stencilbits, r_ext_multisample, r_stereoEnabled
* /recordpath and /playpath fixes /playpath accepts a "smoothing" value. Ex:
/playpath 4 will skip every 4 entries in the recorded path and interpolate angles and positions between those
* r_roundimagesdown 0 bug fix
* cg_demoSmoothing I'm not a fan of this kind of stuff, but I had to include something since alot of the servers have lag problems. It doesn't smooth the entire demo, it only kicks in when you basically got screwed by the server (assuming you aren't deliberately lagging). It looks ahead in the demo to see if there are sequential snapshots where you have some type of velocity in both snapshots but your origin hasn't changed. That means the server hasn't gotten around to playing the packets you sent, which will make demo playback jerky. A cyan bar will be drawn in the lagometer whenver this happens.
* you don't have to have r_fullscreen 1 in order to use r_overbrightbits
* r_mapOverBrightBitsValue r_overBrightBitsValue as alternatives to r_mapOverBrightBits and r_overBrightBits
I'll try to explain a bit what r_mapOverBrightBits and r_overBrightBits do:
Both will multiply the colors of a texture by a power of 2, with r_overBrightBits using gamma ramp. So r_mapOverBrightBits 0 will multiply the colors 2^0 == 1, doesn't change them at all. r_mapOverBrightBits 1 will multiply by 2^1 == 2, r_mapOverBrightBits 2 will multiply by 2^2 == 4, r_mapOverBrightBits 3 will multiply by 2^3 == 8.
Multiplying by powers of two doesn't offer very much control. Personaly I find r_mapOverBrightBits 2 (multiply by 4) to be a little dark, but with r_mapOverBrightBits 3 (multipy by 8) you basically obliterate all the light sources in the map since textures are as bright as they could possibly be. Set r_mapOverBrightBits to 0 and then use r_mapOverBrightBitsValue to multiply it by whatever number you want.
Incidentally r_mapOverBrightBits will preserve color. It won't keep brightening until things will become white (unlike, i think, r_intensity), so if one of the color components (red green blue) hits the max value of 255 it doesn't brighten anymore.
r_overBrightBits like I mentioned before applies gamma correction and it will distort colors. One of the limitations of quake3/ioquake3/etc is that gamma correction depends on r_ignorehwgamma being set to 0.
* F1 hard coded as an additional toggle for the console
* teamoverlay bug fix (the first player in the list was drawn offscreen)
* cg_drawRewards: 1 (default) draw reward count to the right of icon, 2: draw reward count below icon like quake3
* /viewunlockyaw /viewunlockpitch
Ex: use /viewunlockpitch if you want to view someone strafe jumping and not have the view bounce up and down.
* /gotoview added additonal options: /gotoview [forward] [right] [up] [force] relative to the viewed entity. The force (integer) option means to jump to the view even if you might get stuck inside a wall.
* /view added options: /view <entNum> [x offset] [y offset] [z offset] [] means optional
* /chase <entNum> [x offset] [y offset] [z offset] [] means optional
http://www.filefront.com/17037825/wolfcamql-5.4.zip
Edited by brugal at 23:04 CDT, 11 July 2010 - 15137 Hits